{"version":3,"file":"main.c2e886cfb64cd32f.js","mappings":"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;AAC0C;AACG;AACM;AACnD;AACmD;AACT;AACG;AACd;AAC2B;AAC7B;AACpB;AACA;AACA;AACuB;AACA;AACA;AAC8B;AAEJ;AACmD;AACM;AACN;AAC9F;AACT;AAC6B;AACqF;AACA;AACG;AAChO,yFAAyF;AAC0B;AACqD;AAC5D;AACc;AACsB;AAC9C;AACoB;AACF;AACM;AACxB;AACuD;AACkC;AACS;AACZ;AACM;AACrG;AACc;AACZ;AACqC;AACW;AACL;AACH;AACA;AACpC;AACjD;AACuD;AACI;AACb;AACT;AACG;AACjC;AAC8E;AAC4C;AACG;AACH;AACzC;AAC5B;AAEa;AACrB;AACsB;AACA;AACG;AACH;AACA;AACG;AACH;AACA;AACG;AACmC;AACG;AACH;AACnC;AACG;AACH;AAC5B;AACiB;AACnD;AAC4B;AACW;AAC2B;AAEwB;AACA;AACjB;AACA;AACA;AAEjB;AAEe;AACN;AACX;AACa;AACA;AACA;AACA;AACS;AACA;AACA;AAC7C;AAC+C;AACU;AAChD;AACsF;AAC7C;AACA;AACA;AAC7B;AACM;AAC4B;AACA;AACA;AACQ;AACpE;AACS;AACpC;AAC+D;AACmB;AAC0C;AACjE;AACV;AAC6B;AAC/D;AAC0C;AAClB;AACG;AACc;AACH;AAClC;AACiB;AACqC;AACG;AACqB;AAEhD;AACkB;AACpE;AACyC;AACmC;AACxB;AACkB;AACV;AACc;AACM;AACpF;AACyH;AACM;AACpF;AACyC;AAC3B;AACxB;AACgB;AACxB;AACiC;AACxC;AACjB;AAC8D;AACjC;AACgD;AACjB;AAEC;AACU;AACH;AACxB;AAC+C;AAChD;AACA;AACM;AACD;AACpB;;;AAEpF,MAAM,MAAM,GAAW;IACrB;QACE,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,OAAO;QACnB,SAAS,EAAE,MAAM;KAClB;IACD;QACE,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,qHAAuB;QAClC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,8EAAc,EAAE,CAAC;QACnD,SAAS,EAAE,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AAC4C;AACf;AACuB;AAClC;AACC;AACS;AACQ;AACA;AACoD;AACpE;AACX;AACoC;AACuC;AACQ;AACV;AAC/E;AACS;AAC6B;AAC7B;AACc;AAC0C;AAClC;AACR;AAC1B;AACM;AACS;AAC3B;AACsE;AAChB;AACY;AACtD;AAC7B;AACmC;AAC+E;AACvD;AACvC;AACqB;AACqD;AACvC;AACnC;AACwC;AAC0C;AAClF;AACqE;AACR;AACgB;AACd;AACA;AACH;AACgC;AACd;AACA;AACH;AAC3E;AACkB;AACK;AACA;AACA;AACe;AACX;AACJ;AACX;AAC0B;AACG;AACqB;AACA;AACA;AACD;AACA;AACA;AACH;AAEtC;AAC+B;AACzE;AACmG;AAChB;AACsB;AACS;AACZ;AACM;AAC1B;AACiD;AACS;AACZ;AACM;AACzE;AAC0C;AACS;AACN;AACZ;AAC0B;AACyC;AACS;AACN;AACN;AACrF;AACuD;AACN;AACR;AAC4D;AACS;AACN;AACN;AAC9G;AAC0C;AACS;AACN;AACb;AACd;AAClB;AACA;AACsB;AACuB;AACM;AACA;AACT;AACG;AAC7C;AACmD;AACT;AACG;AACd;AAC2B;AAC7B;AACpB;AACA;AACA;AACuB;AACA;AACA;AAC8B;AACJ;AAC9F;AACM;AAC2I;AACM;AACN;AAC9F;AACT;AAC6B;AACqF;AACA;AACG;AAChO,yFAAyF;AAC0B;AACP;AAC4D;AAC9C;AACyD;AACnC;AAC9C;AACwC;AACM;AACG;AACH;AACG;AAC7B;AACkC;AACtD;AACkB;AACM;AAC+B;AACkC;AACS;AACZ;AACM;AACrG;AACc;AACZ;AACqC;AACW;AACR;AACG;AACH;AACpC;AACM;AACI;AACb;AACT;AACG;AAC4F;AACH;AACA;AAC5C;AACG;AAC5B;AACH;AACgB;AACrB;AACD;AACuB;AACA;AACG;AACA;AACH;AACA;AACA;AACA;AACG;AACmC;AACA;AACG;AACtC;AACA;AACG;AAC/B;AACiB;AACvB;AACW;AAC2D;AAC0B;AAC1D;AAC2B;AACH;AACA;AACjB;AACA;AACA;AA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","sources":["./src/app/Interceptor/api-loader.interceptor.ts","./src/app/Interceptor/auth/error.interceptor.ts","./src/app/Interceptor/auth/jwt.interceptor.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/components/achievements/achievements.component.ts","./src/app/components/achievements/achievements.component.html","./src/app/components/activities/activities.component.ts","./src/app/components/activities/activities.component.html","./src/app/components/admin-panel/geo-mapping/geo-mapping.component.ts","./src/app/components/admin-panel/geo-mapping/geo-mapping.component.html","./src/app/components/admin-panel/target-system/target-system.component.ts","./src/app/components/admin-panel/target-system/target-system.component.html","./src/app/components/annual-plan/annual-plan.component.ts","./src/app/components/annual-plan/annual-plan.component.html","./src/app/components/application/consent-form/consent-form.component.ts","./src/app/components/application/consent-form/consent-form.component.html","./src/app/components/application/farmers-application/farmers-application.component.ts","./src/app/components/application/farmers-application/farmers-application.component.html","./src/app/components/beneficiary-details/beneficiary-details.component.ts","./src/app/components/beneficiary-details/beneficiary-details.component.html","./src/app/components/benificiary/benificiary/benificiary.component.ts","./src/app/components/benificiary/benificiary/benificiary.component.html","./src/app/components/camera/camera.component.ts","./src/app/components/camera/camera.component.html","./src/app/components/cao/cao-financial-details/cao-financial-details.component.ts","./src/app/components/cao/cao-financial-details/cao-financial-details.component.html","./src/app/components/cao/cao.component.ts","./src/app/components/cao/cao.component.html","./src/app/components/cao/farmer-share-to-farmer-pfms-report/farmer-share-to-farmer-pfms-report.component.ts","./src/app/components/cao/farmer-share-to-farmer-pfms-report/farmer-share-to-farmer-pfms-report.component.html","./src/app/components/cao/farmer-share-to-vendor-cao-pfms-report/farmer-share-to-vendor-cao-pfms-report.component.ts","./src/app/components/cao/farmer-share-to-vendor-cao-pfms-report/farmer-share-to-vendor-cao-pfms-report.component.html","./src/app/components/cao/farmer-share-to-vendor-pfms-report/farmer-share-to-vendor-pfms-report.component.ts","./src/app/components/cao/farmer-share-to-vendor-pfms-report/farmer-share-to-vendor-pfms-report.component.html","./src/app/components/cao/import-bank-data/import-bank-data.component.ts","./src/app/components/cao/import-bank-data/import-bank-data.component.html","./src/app/components/cao/import-pfms-data/import-pfms-data.component.ts","./src/app/components/cao/import-pfms-data/import-pfms-data.component.html","./src/app/components/cao/mi-survey-subsidy-disbursement/mi-survey-subsidy-disbursement.component.ts","./src/app/components/cao/mi-survey-subsidy-disbursement/mi-survey-subsidy-disbursement.component.html","./src/app/components/cao/refund-to-farmer-aby/refund-to-farmer-aby.component.ts","./src/app/components/cao/refund-to-farmer-aby/refund-to-farmer-aby.component.html","./src/app/components/cao/return-to-farmer-cao-pfms-report/return-to-farmer-cao-pfms-report.component.ts","./src/app/components/cao/return-to-farmer-cao-pfms-report/return-to-farmer-cao-pfms-report.component.html","./src/app/components/cao/return-to-farmer-pfms-report/return-to-farmer-pfms-report.component.ts","./src/app/components/cao/return-to-farmer-pfms-report/return-to-farmer-pfms-report.component.html","./src/app/components/cao/subsidy-distribution/subsidy-distribution-drill-down-report/subsidy-distribution-drill-down-report.component.ts","./src/app/components/cao/subsidy-distribution/subsidy-distribution-drill-down-report/subsidy-distribution-drill-down-report.component.html","./src/app/components/cao/subsidy-distribution/subsidy-distribution.component.ts","./src/app/components/cao/subsidy-distribution/subsidy-distribution.component.html","./src/app/components/cao/subsidy-to-farmer-aby-pfms-report/subsidy-to-farmer-aby-pfms-report.component.ts","./src/app/components/cao/subsidy-to-farmer-aby-pfms-report/subsidy-to-farmer-aby-pfms-report.component.html","./src/app/components/cao/subsidy-to-farmer-cao-pfms-report/subsidy-to-farmer-cao-pfms-report.component.ts","./src/app/components/cao/subsidy-to-farmer-cao-pfms-report/subsidy-to-farmer-cao-pfms-report.component.html","./src/app/components/cao/subsidy-to-farmer-pfms-report/subsidy-to-farmer-pfms-report.component.ts","./src/app/components/cao/subsidy-to-farmer-pfms-report/subsidy-to-farmer-pfms-report.component.html","./src/app/components/cao/subsidy-to-vendor-aby-pfms-report/subsidy-to-vendor-aby-pfms-report.component.ts","./src/app/components/cao/subsidy-to-vendor-aby-pfms-report/subsidy-to-vendor-aby-pfms-report.component.html","./src/app/components/cao/subsidy-to-vendor-cao-pfms-report/subsidy-to-vendor-cao-pfms-report.component.ts","./src/app/components/cao/subsidy-to-vendor-cao-pfms-report/subsidy-to-vendor-cao-pfms-report.component.html","./src/app/components/cao/subsidy-to-vendor-pfms-report/subsidy-to-vendor-pfms-report.component.ts","./src/app/components/cao/subsidy-to-vendor-pfms-report/subsidy-to-vendor-pfms-report.component.html","./src/app/components/cao/tank-stage-pfms-import/tank-stage-pfms-import.component.ts","./src/app/components/cao/tank-stage-pfms-import/tank-stage-pfms-import.component.html","./src/app/components/cao/tank-stage1-aby-pfms-report/tank-stage1-aby-pfms-report.component.ts","./src/app/components/cao/tank-stage1-aby-pfms-report/tank-stage1-aby-pfms-report.component.html","./src/app/components/cao/tank-stage1-cao-pfms-report/tank-stage1-cao-pfms-report.component.ts","./src/app/components/cao/tank-stage1-cao-pfms-report/tank-stage1-cao-pfms-report.component.html","./src/app/components/cao/tank-stage1-pfms-report/tank-stage1-pfms-report.component.ts","./src/app/components/cao/tank-stage1-pfms-report/tank-stage1-pfms-report.component.html","./src/app/components/cao/tank-stage2-aby-pfms-report/tank-stage2-aby-pfms-report.component.ts","./src/app/components/cao/tank-stage2-aby-pfms-report/tank-stage2-aby-pfms-report.component.html","./src/app/components/cao/tank-stage2-cao-pfms-report/tank-stage2-cao-pfms-report.component.ts","./src/app/components/cao/tank-stage2-cao-pfms-report/tank-stage2-cao-pfms-report.component.html","./src/app/components/cao/tank-stage2-pfms-report/tank-stage2-pfms-report.component.ts","./src/app/components/cao/tank-stage2-pfms-report/tank-stage2-pfms-report.component.html","./src/app/components/cao/tank-stage3-aby-pfms-report/tank-stage3-aby-pfms-report.component.ts","./src/app/components/cao/tank-stage3-aby-pfms-report/tank-stage3-aby-pfms-report.component.html","./src/app/components/cao/tank-stage3-cao-pfms-report/tank-stage3-cao-pfms-report.component.ts","./src/app/components/cao/tank-stage3-cao-pfms-report/tank-stage3-cao-pfms-report.component.html","./src/app/components/cao/tank-stage3-pfms-report/tank-stage3-pfms-report.component.ts","./src/app/components/cao/tank-stage3-pfms-report/tank-stage3-pfms-report.component.html","./src/app/components/challan/mi-challan/farmer-share/farmer-share.component.ts","./src/app/components/challan/mi-challan/farmer-share/farmer-share.component.html","./src/app/components/challan/mi-challan/full-payment/full-payment.component.ts","./src/app/components/challan/mi-challan/full-payment/full-payment.component.html","./src/app/components/challan/mi-challan/mi-challan.component.ts","./src/app/components/challan/mi-challan/mi-challan.component.html","./src/app/components/challan/mi-challan/sanction-letter/sanction-letter.component.ts","./src/app/components/challan/mi-challan/sanction-letter/sanction-letter.component.html","./src/app/components/challan/sanction-letter-component/sanction-letter-component.component.ts","./src/app/components/challan/sanction-letter-component/sanction-letter-component.component.html","./src/app/components/challan/solar-challan/solar-challan.component.ts","./src/app/components/challan/solar-challan/solar-challan.component.html","./src/app/components/contractor/contractor-dashboard/contractor-dashboard.component.ts","./src/app/components/contractor/contractor-dashboard/contractor-dashboard.component.html","./src/app/components/contractor/new-work/new-work.component.ts","./src/app/components/contractor/new-work/new-work.component.html","./src/app/components/contractor/update-work/update-work.component.ts","./src/app/components/contractor/update-work/update-work.component.html","./src/app/components/dashboard/dashboard.component.ts","./src/app/components/dashboard/dashboard.component.html","./src/app/components/department/application-type-report/application-type-report.component.ts","./src/app/components/department/application-type-report/application-type-report.component.html","./src/app/components/department/approve-farmers-challan/approve-farmers-challan.component.ts","./src/app/components/department/approve-farmers-challan/approve-farmers-challan.component.html","./src/app/components/department/department-consent-form/department-consent-form.component.ts","./src/app/components/department/department-consent-form/department-consent-form.component.html","./src/app/components/department/department-dashboard/department-dashboard.component.ts","./src/app/components/department/department-dashboard/department-dashboard.component.html","./src/app/components/department/epc/epc-payment/epc-payment.component.ts","./src/app/components/department/epc/epc-payment/epc-payment.component.html","./src/app/components/department/epc/epc-payment/epc-pv-done/epc-pv-done.component.ts","./src/app/components/department/epc/epc-payment/epc-pv-done/epc-pv-done.component.html","./src/app/components/department/epc/epc-payment/pfms-payment-status/pfms-payment-status.component.ts","./src/app/components/department/epc/epc-payment/pfms-payment-status/pfms-payment-status.component.html","./src/app/components/department/epc/epc-payment/ready-for-payment/ready-for-payment.component.ts","./src/app/components/department/epc/epc-payment/ready-for-payment/ready-for-payment.component.html","./src/app/components/department/epc/epc-work-approval/epc-work-approval.component.ts","./src/app/components/department/epc/epc-work-approval/epc-work-approval.component.html","./src/app/components/department/epc/epc-work-pv/epc-work-pv.component.ts","./src/app/components/department/epc/epc-work-pv/epc-work-pv.component.html","./src/app/components/department/failed-mi-payment/failed-mi-payment-fsv/failed-mi-payment-fsv.component.ts","./src/app/components/department/failed-mi-payment/failed-mi-payment-fsv/failed-mi-payment-fsv.component.html","./src/app/components/department/failed-mi-payment/failed-mi-payment-rtf/failed-mi-payment-rtf.component.ts","./src/app/components/department/failed-mi-payment/failed-mi-payment-rtf/failed-mi-payment-rtf.component.html","./src/app/components/department/failed-mi-payment/failed-mi-payment-stf/failed-mi-payment-stf.component.ts","./src/app/components/department/failed-mi-payment/failed-mi-payment-stf/failed-mi-payment-stf.component.html","./src/app/components/department/failed-mi-payment/failed-mi-payment-stv/failed-mi-payment-stv.component.ts","./src/app/components/department/failed-mi-payment/failed-mi-payment-stv/failed-mi-payment-stv.component.html","./src/app/components/department/failed-mi-payment/failed-mi-payment.component.ts","./src/app/components/department/failed-mi-payment/failed-mi-payment.component.html","./src/app/components/department/failed-pond-payment/failed-pond-payment-s1/failed-pond-payment-s1.component.ts","./src/app/components/department/failed-pond-payment/failed-pond-payment-s1/failed-pond-payment-s1.component.html","./src/app/components/department/failed-pond-payment/failed-pond-payment-s2/failed-pond-payment-s2.component.ts","./src/app/components/department/failed-pond-payment/failed-pond-payment-s2/failed-pond-payment-s2.component.html","./src/app/components/department/failed-pond-payment/failed-pond-payment-s3/failed-pond-payment-s3.component.ts","./src/app/components/department/failed-pond-payment/failed-pond-payment-s3/failed-pond-payment-s3.component.html","./src/app/components/department/failed-pond-payment/failed-pond-payment.component.ts","./src/app/components/department/failed-pond-payment/failed-pond-payment.component.html","./src/app/components/department/farmer-app-change-request/farmer-app-change-request.component.ts","./src/app/components/department/farmer-app-change-request/farmer-app-change-request.component.html","./src/app/components/department/farmer-application-verification/farmer-application-verification-completed/farmer-application-verification-completed.component.ts","./src/app/components/department/farmer-application-verification/farmer-application-verification-completed/farmer-application-verification-completed.component.html","./src/app/components/department/farmer-application-verification/farmer-application-verification-current/farmer-application-verification-current.component.ts","./src/app/components/department/farmer-application-verification/farmer-application-verification-current/farmer-application-verification-current.component.html","./src/app/components/department/farmer-application-verification/farmer-application-verification-pending/farmer-application-verification-pending.component.ts","./src/app/components/department/farmer-application-verification/farmer-application-verification-pending/farmer-application-verification-pending.component.html","./src/app/components/department/farmer-application-verification/farmer-application-verification.component.ts","./src/app/components/department/farmer-application-verification/farmer-application-verification.component.html","./src/app/components/department/farmer-application-verification/work-flow-all-status/work-flow-all-status.component.ts","./src/app/components/department/farmer-application-verification/work-flow-all-status/work-flow-all-status.component.html","./src/app/components/department/farmer-queries/change-program/change-program.component.ts","./src/app/components/department/farmer-queries/change-program/change-program.component.html","./src/app/components/department/farmer-queries/change-vendor/change-vendor.component.ts","./src/app/components/department/farmer-queries/change-vendor/change-vendor.component.html","./src/app/components/department/farmer-queries/unhide-application/unhide-application.component.ts","./src/app/components/department/farmer-queries/unhide-application/unhide-application.component.html","./src/app/components/department/je-survey-action-info/je-survey-action-info.component.ts","./src/app/components/department/je-survey-action-info/je-survey-action-info.component.html","./src/app/components/department/krishi-mapper/krishi-mapper.component.ts","./src/app/components/department/krishi-mapper/krishi-mapper.component.html","./src/app/components/department/mi-area-covered/mi-area-covered.component.ts","./src/app/components/department/mi-area-covered/mi-area-covered.component.html","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification-approved/mi-vendor-application-verification-approved.component.ts","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification-approved/mi-vendor-application-verification-approved.component.html","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification-current/mi-vendor-application-verification-current.component.ts","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification-current/mi-vendor-application-verification-current.component.html","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification-pending/mi-vendor-application-verification-pending.component.ts","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification-pending/mi-vendor-application-verification-pending.component.html","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification.component.ts","./src/app/components/department/mi-vendor-application-verification/mi-vendor-application-verification.component.html","./src/app/components/department/physical-fin-target/physical-fin-target.component.ts","./src/app/components/department/physical-fin-target/physical-fin-target.component.html","./src/app/components/department/print-farmers-challan/print-farmers-challan.component.ts","./src/app/components/department/print-farmers-challan/print-farmers-challan.component.html","./src/app/components/department/realtime-data-pdmc-scheme/realtime-data-pdmc-scheme.component.ts","./src/app/components/department/realtime-data-pdmc-scheme/realtime-data-pdmc-scheme.component.html","./src/app/components/department/report-summary/report-summary.component.ts","./src/app/components/department/report-summary/report-summary.component.html","./src/app/components/department/reports/app-verification-report/app-verification-report.component.ts","./src/app/components/department/reports/app-verification-report/app-verification-report.component.html","./src/app/components/department/reports/app-verification-report/district-wise-report/district-wise-report.component.ts","./src/app/components/department/reports/app-verification-report/district-wise-report/district-wise-report.component.html","./src/app/components/department/reports/app-verification-report/month-wise-report/month-wise-report.component.ts","./src/app/components/department/reports/app-verification-report/month-wise-report/month-wise-report.component.html","./src/app/components/department/reports/app-verification-report/user-wise-report/user-wise-report.component.ts","./src/app/components/department/reports/app-verification-report/user-wise-report/user-wise-report.component.html","./src/app/components/department/reports/app-verification-report/vendor-wise-report/vendor-wise-report.component.ts","./src/app/components/department/reports/app-verification-report/vendor-wise-report/vendor-wise-report.component.html","./src/app/components/department/reports/atal-user/atal-user.component.ts","./src/app/components/department/reports/atal-user/atal-user.component.html","./src/app/components/department/reports/boq-report/boq-district-wise-report/boq-district-wise-report.component.ts","./src/app/components/department/reports/boq-report/boq-district-wise-report/boq-district-wise-report.component.html","./src/app/components/department/reports/boq-report/boq-mi-type-report/boq-mi-type-report.component.ts","./src/app/components/department/reports/boq-report/boq-mi-type-report/boq-mi-type-report.component.html","./src/app/components/department/reports/boq-report/boq-month-wise-report/boq-month-wise-report.component.ts","./src/app/components/department/reports/boq-report/boq-month-wise-report/boq-month-wise-report.component.html","./src/app/components/department/reports/boq-report/boq-report.component.ts","./src/app/components/department/reports/boq-report/boq-report.component.html","./src/app/components/department/reports/boq-report/boq-vendor-wise-report/boq-vendor-wise-report.component.ts","./src/app/components/department/reports/boq-report/boq-vendor-wise-report/boq-vendor-wise-report.component.html","./src/app/components/department/reports/canal-and-tube-well-based-report/canal-and-tube-well-based-report.component.ts","./src/app/components/department/reports/canal-and-tube-well-based-report/canal-and-tube-well-based-report.component.html","./src/app/components/department/reports/challan-drill-down-report/challan-drill-down-report.component.ts","./src/app/components/department/reports/challan-drill-down-report/challan-drill-down-report.component.html","./src/app/components/department/reports/challan-reconciliation-day-report/challan-reconciliation-day-drill-down-report/challan-reconciliation-day-drill-down-report.component.ts","./src/app/components/department/reports/challan-reconciliation-day-report/challan-reconciliation-day-drill-down-report/challan-reconciliation-day-drill-down-report.component.html","./src/app/components/department/reports/challan-reconciliation-day-report/challan-reconciliation-day-report.component.ts","./src/app/components/department/reports/challan-reconciliation-day-report/challan-reconciliation-day-report.component.html","./src/app/components/department/reports/challan-report-by-vendor-id/challan-report-by-vendor-id.component.ts","./src/app/components/department/reports/challan-report-by-vendor-id/challan-report-by-vendor-id.component.html","./src/app/components/department/reports/challan-report/challan-district-wise-report/challan-district-wise-report.component.ts","./src/app/components/department/reports/challan-report/challan-district-wise-report/challan-district-wise-report.component.html","./src/app/components/department/reports/challan-report/challan-month-wise-report/challan-month-wise-report.component.ts","./src/app/components/department/reports/challan-report/challan-month-wise-report/challan-month-wise-report.component.html","./src/app/components/department/reports/challan-report/challan-report.component.ts","./src/app/components/department/reports/challan-report/challan-report.component.html","./src/app/components/department/reports/challan-report/challan-vendor-wise-report/challan-vendor-wise-report.component.ts","./src/app/components/department/reports/challan-report/challan-vendor-wise-report/challan-vendor-wise-report.component.html","./src/app/components/department/reports/consolidated-report/consolidated-dashboard/consolidated-dashboard.component.ts","./src/app/components/department/reports/consolidated-report/consolidated-dashboard/consolidated-dashboard.component.html","./src/app/components/department/reports/consolidated-report/consolidated-report.component.ts","./src/app/components/department/reports/consolidated-report/consolidated-report.component.html","./src/app/components/department/reports/consolidated-report/mi-Completed/Incomplete/mi-consolidated-incompleted-count-wise-report/mi-consolidated-incompleted-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/mi-Completed/Incomplete/mi-consolidated-incompleted-count-wise-report/mi-consolidated-incompleted-count-wise-report.component.html","./src/app/components/department/reports/consolidated-report/mi-Completed/Rejected/mi-consolidated-rejected-count-wise-report/mi-consolidated-rejected-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/mi-Completed/Rejected/mi-consolidated-rejected-count-wise-report/mi-consolidated-rejected-count-wise-report.component.html","./src/app/components/department/reports/consolidated-report/mi-Completed/mi-consolidated-completed-count-wise-report/mi-consolidated-completed-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/mi-Completed/mi-consolidated-completed-count-wise-report/mi-consolidated-completed-count-wise-report.component.html","./src/app/components/department/reports/consolidated-report/mi-consolidated-count-wise-report/mi-consolidated-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/mi-consolidated-count-wise-report/mi-consolidated-count-wise-report.component.html","./src/app/components/department/reports/consolidated-report/mi-consolidated-detail-report/mi-consolidated-detail-report.component.ts","./src/app/components/department/reports/consolidated-report/mi-consolidated-detail-report/mi-consolidated-detail-report.component.html","./src/app/components/department/reports/consolidated-report/mi-consolidated-total-app-report/mi-consolidated-total-app-report.component.ts","./src/app/components/department/reports/consolidated-report/mi-consolidated-total-app-report/mi-consolidated-total-app-report.component.html","./src/app/components/department/reports/consolidated-report/pond-consolidated-detail-report/pond-consolidated-detail-report.component.ts","./src/app/components/department/reports/consolidated-report/pond-consolidated-detail-report/pond-consolidated-detail-report.component.html","./src/app/components/department/reports/consolidated-report/pond-consolidated-total-app-report/pond-consolidated-total-app-report.component.ts","./src/app/components/department/reports/consolidated-report/pond-consolidated-total-app-report/pond-consolidated-total-app-report.component.html","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/Completed/pond-complete-count-wise-report/pond-complete-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/Completed/pond-complete-count-wise-report/pond-complete-count-wise-report.component.html","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/Incomplete/pond-incomplete-count-wise-report/pond-incomplete-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/Incomplete/pond-incomplete-count-wise-report/pond-incomplete-count-wise-report.component.html","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/Rejected/pond-rejected-count-wise-report/pond-rejected-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/Rejected/pond-rejected-count-wise-report/pond-rejected-count-wise-report.component.html","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/pond-count-wise-report.component.ts","./src/app/components/department/reports/consolidated-report/pond-count-wise-report/pond-count-wise-report.component.html","./src/app/components/department/reports/da-report/da-report.component.ts","./src/app/components/department/reports/da-report/da-report.component.html","./src/app/components/department/reports/da-report/mi-da-report/mi-da-report.component.ts","./src/app/components/department/reports/da-report/mi-da-report/mi-da-report.component.html","./src/app/components/department/reports/da-report/pond-da-report/pond-da-report.component.ts","./src/app/components/department/reports/da-report/pond-da-report/pond-da-report.component.html","./src/app/components/department/reports/drill-down-abstract-report/drill-down-abstract-report.component.ts","./src/app/components/department/reports/drill-down-abstract-report/drill-down-abstract-report.component.html","./src/app/components/department/reports/drill-down-approved-incomplete-report/drill-down-approved-incomplete-report.component.ts","./src/app/components/department/reports/drill-down-approved-incomplete-report/drill-down-approved-incomplete-report.component.html","./src/app/components/department/reports/drill-down-consolidated-report/drill-down-consolidated-report.component.ts","./src/app/components/department/reports/drill-down-consolidated-report/drill-down-consolidated-report.component.html","./src/app/components/department/reports/drill-down-consolidated-userwise-report/drill-down-consolidated-userwise-report.component.ts","./src/app/components/department/reports/drill-down-consolidated-userwise-report/drill-down-consolidated-userwise-report.component.html","./src/app/components/department/reports/drill-down-pending-report/drill-down-pending-report.component.ts","./src/app/components/department/reports/drill-down-pending-report/drill-down-pending-report.component.html","./src/app/components/department/reports/drill-down-rejected-report/drill-down-rejected-report.component.ts","./src/app/components/department/reports/drill-down-rejected-report/drill-down-rejected-report.component.html","./src/app/components/department/reports/drill-down-tank-stage-report/drill-down-tank-stage-report.component.ts","./src/app/components/department/reports/drill-down-tank-stage-report/drill-down-tank-stage-report.component.html","./src/app/components/department/reports/drill-down-total-report/drill-down-total-report.component.ts","./src/app/components/department/reports/drill-down-total-report/drill-down-total-report.component.html","./src/app/components/department/reports/epc-report/epc-estimation-details/epc-estimation-details.component.ts","./src/app/components/department/reports/epc-report/epc-estimation-details/epc-estimation-details.component.html","./src/app/components/department/reports/estimation-report/estimation-district-wise-report/estimation-district-wise-report.component.ts","./src/app/components/department/reports/estimation-report/estimation-district-wise-report/estimation-district-wise-report.component.html","./src/app/components/department/reports/estimation-report/estimation-month-wise-report/estimation-month-wise-report.component.ts","./src/app/components/department/reports/estimation-report/estimation-month-wise-report/estimation-month-wise-report.component.html","./src/app/components/department/reports/estimation-report/estimation-report.component.ts","./src/app/components/department/reports/estimation-report/estimation-report.component.html","./src/app/components/department/reports/estimation-report/estimation-user-wise-report/estimation-user-wise-report.component.ts","./src/app/components/department/reports/estimation-report/estimation-user-wise-report/estimation-user-wise-report.component.html","./src/app/components/department/reports/estimation-report/estimation-vendor-wise-report/estimation-vendor-wise-report.component.ts","./src/app/components/department/reports/estimation-report/estimation-vendor-wise-report/estimation-vendor-wise-report.component.html","./src/app/components/department/reports/estimation-verification-report/est-verification-district-wise-report/est-verification-district-wise-report.component.ts","./src/app/components/department/reports/estimation-verification-report/est-verification-district-wise-report/est-verification-district-wise-report.component.html","./src/app/components/department/reports/estimation-verification-report/est-verification-month-wise-report/est-verification-month-wise-report.component.ts","./src/app/components/department/reports/estimation-verification-report/est-verification-month-wise-report/est-verification-month-wise-report.component.html","./src/app/components/department/reports/estimation-verification-report/est-verification-user-wise-report/est-verification-user-wise-report.component.ts","./src/app/components/department/reports/estimation-verification-report/est-verification-user-wise-report/est-verification-user-wise-report.component.html","./src/app/components/department/reports/estimation-verification-report/est-verification-vendor-wise-report/est-verification-vendor-wise-report.component.ts","./src/app/components/department/reports/estimation-verification-report/est-verification-vendor-wise-report/est-verification-vendor-wise-report.component.html","./src/app/components/department/reports/estimation-verification-report/estimation-verification-report.component.ts","./src/app/components/department/reports/estimation-verification-report/estimation-verification-report.component.html","./src/app/components/department/reports/fsv-report/fsv-district-wise-report/fsv-district-wise-report.component.ts","./src/app/components/department/reports/fsv-report/fsv-district-wise-report/fsv-district-wise-report.component.html","./src/app/components/department/reports/fsv-report/fsv-month-wise-report/fsv-month-wise-report.component.ts","./src/app/components/department/reports/fsv-report/fsv-month-wise-report/fsv-month-wise-report.component.html","./src/app/components/department/reports/fsv-report/fsv-report.component.ts","./src/app/components/department/reports/fsv-report/fsv-report.component.html","./src/app/components/department/reports/fsv-report/fsv-vendor-wise-report/fsv-vendor-wise-report.component.ts","./src/app/components/department/reports/fsv-report/fsv-vendor-wise-report/fsv-vendor-wise-report.component.html","./src/app/components/department/reports/inventory-report/inventory-report.component.ts","./src/app/components/department/reports/inventory-report/inventory-report.component.html","./src/app/components/department/reports/lot-consolidated-report/lot-consolidated-report.component.ts","./src/app/components/department/reports/lot-consolidated-report/lot-consolidated-report.component.html","./src/app/components/department/reports/lot-report/lot-report.component.ts","./src/app/components/department/reports/lot-report/lot-report.component.html","./src/app/components/department/reports/lot-wise-report/fsv-lot-report/fsv-lot-report.component.ts","./src/app/components/department/reports/lot-wise-report/fsv-lot-report/fsv-lot-report.component.html","./src/app/components/department/reports/lot-wise-report/lot-wise-report.component.ts","./src/app/components/department/reports/lot-wise-report/lot-wise-report.component.html","./src/app/components/department/reports/lot-wise-report/rtf-lot-report/rtf-lot-report.component.ts","./src/app/components/department/reports/lot-wise-report/rtf-lot-report/rtf-lot-report.component.html","./src/app/components/department/reports/lot-wise-report/stage1-lot-report/stage1-lot-report.component.ts","./src/app/components/department/reports/lot-wise-report/stage1-lot-report/stage1-lot-report.component.html","./src/app/components/department/reports/lot-wise-report/stage2-lot-report/stage2-lot-report.component.ts","./src/app/components/department/reports/lot-wise-report/stage2-lot-report/stage2-lot-report.component.html","./src/app/components/department/reports/lot-wise-report/stage3-lot-report/stage3-lot-report.component.ts","./src/app/components/department/reports/lot-wise-report/stage3-lot-report/stage3-lot-report.component.html","./src/app/components/department/reports/lot-wise-report/stf-lot-report/stf-lot-report.component.ts","./src/app/components/department/reports/lot-wise-report/stf-lot-report/stf-lot-report.component.html","./src/app/components/department/reports/lot-wise-report/stv-lot-report/stv-lot-report.component.ts","./src/app/components/department/reports/lot-wise-report/stv-lot-report/stv-lot-report.component.html","./src/app/components/department/reports/mi-verification-subsidy-report/mi-verification-subsidy-report.component.ts","./src/app/components/department/reports/mi-verification-subsidy-report/mi-verification-subsidy-report.component.html","./src/app/components/department/reports/physical-verification-report/physical-verification-district-wise-report/physical-verification-district-wise-report.component.ts","./src/app/components/department/reports/physical-verification-report/physical-verification-district-wise-report/physical-verification-district-wise-report.component.html","./src/app/components/department/reports/physical-verification-report/physical-verification-month-wise-report/physical-verification-month-wise-report.component.ts","./src/app/components/department/reports/physical-verification-report/physical-verification-month-wise-report/physical-verification-month-wise-report.component.html","./src/app/components/department/reports/physical-verification-report/physical-verification-report.component.ts","./src/app/components/department/reports/physical-verification-report/physical-verification-report.component.html","./src/app/components/department/reports/physical-verification-report/physical-verification-user-wise-report/physical-verification-user-wise-report.component.ts","./src/app/components/department/reports/physical-verification-report/physical-verification-user-wise-report/physical-verification-user-wise-report.component.html","./src/app/components/department/reports/physical-verification-report/physical-verification-vendor-wise-report/physical-verification-vendor-wise-report.component.ts","./src/app/components/department/reports/physical-verification-report/physical-verification-vendor-wise-report/physical-verification-vendor-wise-report.component.html","./src/app/components/department/reports/pond-consolidate-report/pond-consolidate-report.component.ts","./src/app/components/department/reports/pond-consolidate-report/pond-consolidate-report.component.html","./src/app/components/department/reports/ranking-rating-report/ranking-rating-report.component.ts","./src/app/components/department/reports/ranking-rating-report/ranking-rating-report.component.html","./src/app/components/department/reports/rtf-report/rtf-district-wise-report/rtf-district-wise-report.component.ts","./src/app/components/department/reports/rtf-report/rtf-district-wise-report/rtf-district-wise-report.component.html","./src/app/components/department/reports/rtf-report/rtf-month-wise-report/rtf-month-wise-report.component.ts","./src/app/components/department/reports/rtf-report/rtf-month-wise-report/rtf-month-wise-report.component.html","./src/app/components/department/reports/rtf-report/rtf-report.component.ts","./src/app/components/department/reports/rtf-report/rtf-report.component.html","./src/app/components/department/reports/rtf-report/rtf-vendor-wise-report/rtf-vendor-wise-report.component.ts","./src/app/components/department/reports/rtf-report/rtf-vendor-wise-report/rtf-vendor-wise-report.component.html","./src/app/components/department/reports/seventy-five-hundred-demo/seventy-five-hundred-demo.component.ts","./src/app/components/department/reports/seventy-five-hundred-demo/seventy-five-hundred-demo.component.html","./src/app/components/department/reports/stage1-report/stage1-report.component.ts","./src/app/components/department/reports/stage1-report/stage1-report.component.html","./src/app/components/department/reports/stage1-subsidy-report/stage1-subsidy-report.component.ts","./src/app/components/department/reports/stage1-subsidy-report/stage1-subsidy-report.component.html","./src/app/components/department/reports/stage2-report/stage2-report.component.ts","./src/app/components/department/reports/stage2-report/stage2-report.component.html","./src/app/components/department/reports/stage2-subsidy-report/stage2-subsidy-report.component.ts","./src/app/components/department/reports/stage2-subsidy-report/stage2-subsidy-report.component.html","./src/app/components/department/reports/stage3-report/stage3-report.component.ts","./src/app/components/department/reports/stage3-report/stage3-report.component.html","./src/app/components/department/reports/stage3-subsidy-report/stage3-subsidy-report.component.ts","./src/app/components/department/reports/stage3-subsidy-report/stage3-subsidy-report.component.html","./src/app/components/department/reports/stf-report/stf-district-wise-report/stf-district-wise-report.component.ts","./src/app/components/department/reports/stf-report/stf-district-wise-report/stf-district-wise-report.component.html","./src/app/components/department/reports/stf-report/stf-month-wise-report/stf-month-wise-report.component.ts","./src/app/components/department/reports/stf-report/stf-month-wise-report/stf-month-wise-report.component.html","./src/app/components/department/reports/stf-report/stf-report.component.ts","./src/app/components/department/reports/stf-report/stf-report.component.html","./src/app/components/department/reports/stf-report/stf-vendor-wise-report/stf-vendor-wise-report.component.ts","./src/app/components/department/reports/stf-report/stf-vendor-wise-report/stf-vendor-wise-report.component.html","./src/app/components/department/reports/stv-report/stv-district-wise-report/stv-district-wise-report.component.ts","./src/app/components/department/reports/stv-report/stv-district-wise-report/stv-district-wise-report.component.html","./src/app/components/department/reports/stv-report/stv-month-wise/stv-month-wise.component.ts","./src/app/components/department/reports/stv-report/stv-month-wise/stv-month-wise.component.html","./src/app/components/department/reports/stv-report/stv-report.component.ts","./src/app/components/department/reports/stv-report/stv-report.component.html","./src/app/components/department/reports/stv-report/stv-vendor-wise-report/stv-vendor-wise-report.component.ts","./src/app/components/department/reports/stv-report/stv-vendor-wise-report/stv-vendor-wise-report.component.html","./src/app/components/department/reports/subsidy-wise-report/subsidy-wise-report.component.ts","./src/app/components/department/reports/subsidy-wise-report/subsidy-wise-report.component.html","./src/app/components/department/reports/tank-abstract-report/tank-abstract-report.component.ts","./src/app/components/department/reports/tank-abstract-report/tank-abstract-report.component.html","./src/app/components/department/reports/vendor-dashboard/mi-consolidated-count-wise-vendor-report/mi-consolidated-count-wise-vendor-report.component.ts","./src/app/components/department/reports/vendor-dashboard/mi-consolidated-count-wise-vendor-report/mi-consolidated-count-wise-vendor-report.component.html","./src/app/components/department/reports/vendor-dashboard/vendor-dashboard.component.ts","./src/app/components/department/reports/vendor-dashboard/vendor-dashboard.component.html","./src/app/components/department/reports/vendor-mi-area-report/vendor-mi-area-report.component.ts","./src/app/components/department/reports/vendor-mi-area-report/vendor-mi-area-report.component.html","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-district-wise-report/pre-estimate-district-wise-report.component.ts","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-district-wise-report/pre-estimate-district-wise-report.component.html","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-month-wise-report/pre-estimate-month-wise-report.component.ts","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-month-wise-report/pre-estimate-month-wise-report.component.html","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-user-wise-report/pre-estimate-user-wise-report.component.ts","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-user-wise-report/pre-estimate-user-wise-report.component.html","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-vendor-wise-report/pre-estimate-vendor-wise-report.component.ts","./src/app/components/department/reports/vendor-pre-estimation-report/pre-estimate-vendor-wise-report/pre-estimate-vendor-wise-report.component.html","./src/app/components/department/reports/vendor-pre-estimation-report/vendor-pre-estimation-report.component.ts","./src/app/components/department/reports/vendor-pre-estimation-report/vendor-pre-estimation-report.component.html","./src/app/components/department/subsidy-lot/all-subsidy-lot/all-subsidy-lot.component.ts","./src/app/components/department/subsidy-lot/all-subsidy-lot/all-subsidy-lot.component.html","./src/app/components/department/subsidy-lot/farmer-share-to-vendor/farmer-share-to-vendor.component.ts","./src/app/components/department/subsidy-lot/farmer-share-to-vendor/farmer-share-to-vendor.component.html","./src/app/components/department/subsidy-lot/mi-survey/mi-survey.component.ts","./src/app/components/department/subsidy-lot/mi-survey/mi-survey.component.html","./src/app/components/department/subsidy-lot/refund-to-farmer/refund-to-farmer.component.ts","./src/app/components/department/subsidy-lot/refund-to-farmer/refund-to-farmer.component.html","./src/app/components/department/subsidy-lot/subsidy-to-farmer-atal/subsidy-to-farmer-atal.component.ts","./src/app/components/department/subsidy-lot/subsidy-to-farmer-atal/subsidy-to-farmer-atal.component.html","./src/app/components/department/subsidy-lot/subsidy-to-farmer/subsidy-to-farmer.component.ts","./src/app/components/department/subsidy-lot/subsidy-to-farmer/subsidy-to-farmer.component.html","./src/app/components/department/subsidy-lot/subsidy-to-vendor-atal/subsidy-to-vendor-atal.component.ts","./src/app/components/department/subsidy-lot/subsidy-to-vendor-atal/subsidy-to-vendor-atal.component.html","./src/app/components/department/subsidy-lot/subsidy-to-vendor/subsidy-to-vendor.component.ts","./src/app/components/department/subsidy-lot/subsidy-to-vendor/subsidy-to-vendor.component.html","./src/app/components/department/subsidy-lot/tankstagesurvey1/tankstagesurvey1.component.ts","./src/app/components/department/subsidy-lot/tankstagesurvey1/tankstagesurvey1.component.html","./src/app/components/department/subsidy-lot/tankstagesurvey2/tankstagesurvey2.component.ts","./src/app/components/department/subsidy-lot/tankstagesurvey2/tankstagesurvey2.component.html","./src/app/components/department/subsidy-lot/tankstagesurvey3/tankstagesurvey3.component.ts","./src/app/components/department/subsidy-lot/tankstagesurvey3/tankstagesurvey3.component.html","./src/app/components/department/uhbvn/farmer-request-for-noc/farmer-request-for-noc.component.ts","./src/app/components/department/uhbvn/farmer-request-for-noc/farmer-request-for-noc.component.html","./src/app/components/department/uhbvn/print-noc/print-noc.component.ts","./src/app/components/department/uhbvn/print-noc/print-noc.component.html","./src/app/components/department/uhbvn/uhbvn-noc-upload/uhbvn-noc-upload.component.ts","./src/app/components/department/uhbvn/uhbvn-noc-upload/uhbvn-noc-upload.component.html","./src/app/components/department/uhbvn/uhbvn.component.ts","./src/app/components/department/uhbvn/uhbvn.component.html","./src/app/components/department/uhbvn/uploaded-noc-for-survey/uploaded-noc-for-survey.component.ts","./src/app/components/department/uhbvn/uploaded-noc-for-survey/uploaded-noc-for-survey.component.html","./src/app/components/department/update-mi-component-cml-validity/update-mi-component-cml-validity.component.ts","./src/app/components/department/update-mi-component-cml-validity/update-mi-component-cml-validity.component.html","./src/app/components/department/vendor-mi-estimation-consent-form/vendor-mi-estimation-consent-form.component.ts","./src/app/components/department/vendor-mi-estimation-consent-form/vendor-mi-estimation-consent-form.component.html","./src/app/components/department/view-co-ordinates/view-co-ordinates.component.ts","./src/app/components/department/view-co-ordinates/view-co-ordinates.component.html","./src/app/components/department/year-wise-progress/year-wise-progress.component.ts","./src/app/components/department/year-wise-progress/year-wise-progress.component.html","./src/app/components/dev/add-to-solar-flow/add-to-solar-flow.component.ts","./src/app/components/dev/add-to-solar-flow/add-to-solar-flow.component.html","./src/app/components/dev/error-tracking/error-tracking.component.ts","./src/app/components/dev/error-tracking/error-tracking.component.html","./src/app/components/dev/get-solar/get-solar.component.ts","./src/app/components/dev/get-solar/get-solar.component.html","./src/app/components/dev/modify-solar/modify-solar.component.ts","./src/app/components/dev/modify-solar/modify-solar.component.html","./src/app/components/dev/request-solar/request-solar.component.ts","./src/app/components/dev/request-solar/request-solar.component.html","./src/app/components/dev/solar-list/solar-list.component.ts","./src/app/components/dev/solar-list/solar-list.component.html","./src/app/components/dev/solar-procedure/solar-procedure.component.ts","./src/app/components/dev/solar-procedure/solar-procedure.component.html","./src/app/components/dev/update-jamabandi/update-jamabandi.component.ts","./src/app/components/dev/update-jamabandi/update-jamabandi.component.html","./src/app/components/evaluation-study/evaluation-study.component.ts","./src/app/components/evaluation-study/evaluation-study.component.html","./src/app/components/farmer-dashboard/farmer-dashboard.component.ts","./src/app/components/farmer-dashboard/farmer-dashboard.component.html","./src/app/components/farmer/change-request/change-request.component.ts","./src/app/components/farmer/change-request/change-request.component.html","./src/app/components/forgot-password/forgot-password.component.ts","./src/app/components/forgot-password/forgot-password.component.html","./src/app/components/gallery/photo-gallery/photo-gallery.component.ts","./src/app/components/gallery/photo-gallery/photo-gallery.component.html","./src/app/components/gallery/video-gallery/video-gallery.component.ts","./src/app/components/gallery/video-gallery/video-gallery.component.html","./src/app/components/google-map/google-map.component.ts","./src/app/components/google-map/google-map.component.html","./src/app/components/grievance/grievance-handler/grievance-handler.component.ts","./src/app/components/grievance/grievance-handler/grievance-handler.component.html","./src/app/components/grievance/grievance.component.ts","./src/app/components/grievance/grievance.component.html","./src/app/components/helpdesk/helpdesk.component.ts","./src/app/components/helpdesk/helpdesk.component.html","./src/app/components/home-page/new-target/new-target.component.ts","./src/app/components/home-page/new-target/new-target.component.html","./src/app/components/home/home.component.ts","./src/app/components/home/home.component.html","./src/app/components/je-activity/je-activity.component.ts","./src/app/components/je-activity/je-activity.component.html","./src/app/components/je/attachment/attachment.component.ts","./src/app/components/je/attachment/attachment.component.html","./src/app/components/je/basic/basic.component.ts","./src/app/components/je/basic/basic.component.html","./src/app/components/je/finance/finance.component.ts","./src/app/components/je/finance/finance.component.html","./src/app/components/je/image-attachments/image-attachments.component.ts","./src/app/components/je/image-attachments/image-attachments.component.html","./src/app/components/je/je-application/je-application.component.ts","./src/app/components/je/je-application/je-application.component.html","./src/app/components/je/je.component.ts","./src/app/components/je/je.component.html","./src/app/components/je/mi-physical-verifications/mi-physical-verfication-completed/mi-physical-verfication-completed.component.ts","./src/app/components/je/mi-physical-verifications/mi-physical-verfication-completed/mi-physical-verfication-completed.component.html","./src/app/components/je/mi-physical-verifications/mi-physical-verification-current/mi-physical-verification-current.component.ts","./src/app/components/je/mi-physical-verifications/mi-physical-verification-current/mi-physical-verification-current.component.html","./src/app/components/je/mi-physical-verifications/mi-physical-verification-pending/mi-physical-verification-pending.component.ts","./src/app/components/je/mi-physical-verifications/mi-physical-verification-pending/mi-physical-verification-pending.component.html","./src/app/components/je/mi-physical-verifications/mi-physical-verifications.component.ts","./src/app/components/je/mi-physical-verifications/mi-physical-verifications.component.html","./src/app/components/je/mi-source-location/mi-source-location.component.ts","./src/app/components/je/mi-source-location/mi-source-location.component.html","./src/app/components/je/vendor-data/vendor-data.component.ts","./src/app/components/je/vendor-data/vendor-data.component.html","./src/app/components/je/view-farmer-application/view-farmer-application.component.ts","./src/app/components/je/view-farmer-application/view-farmer-application.component.html","./src/app/components/key-executives/head-off-executives/head-off-executives.component.ts","./src/app/components/key-executives/head-off-executives/head-off-executives.component.html","./src/app/components/key-executives/key-executives.component.ts","./src/app/components/key-executives/key-executives.component.html","./src/app/components/landing/footer/footer.component.ts","./src/app/components/landing/footer/footer.component.html","./src/app/components/landing/header/header.component.ts","./src/app/components/landing/header/header.component.html","./src/app/components/landing/landing.component.ts","./src/app/components/landing/landing.component.html","./src/app/components/landing/success-stories/success-stories.component.ts","./src/app/components/landing/success-stories/success-stories.component.html","./src/app/components/layouts/home-footer/home-footer.component.ts","./src/app/components/layouts/home-header/home-header.component.ts","./src/app/components/layouts/home-header/home-header.component.html","./src/app/components/layouts/home-nav/home-nav.component.ts","./src/app/components/layouts/home-page-layout/home-page-layout.component.ts","./src/app/components/layouts/home-page-layout/home-page-layout.component.html","./src/app/components/layouts/inner-footer/inner-footer.component.ts","./src/app/components/layouts/inner-header/inner-header.component.ts","./src/app/components/layouts/inner-header/inner-header.component.html","./src/app/components/layouts/inner-nav/app.menu.component.ts","./src/app/components/layouts/inner-nav/app.menuitem.component.ts","./src/app/components/layouts/inner-nav/inner-nav.component.ts","./src/app/components/layouts/inner-page-layout/app.topbar.component.ts","./src/app/components/layouts/inner-page-layout/app.topbar.component.html","./src/app/components/layouts/inner-page-layout/inner-page-layout.component.ts","./src/app/components/layouts/inner-page-layout/inner-page-layout.component.html","./src/app/components/login/login.component.ts","./src/app/components/login/login.component.html","./src/app/components/micada_1.0/mi-physical-location/mi-physical-location.component.ts","./src/app/components/micada_1.0/mi-physical-location/mi-physical-location.component.html","./src/app/components/micro-irrigation/micro-irrigation.component.ts","./src/app/components/micro-irrigation/micro-irrigation.component.html","./src/app/components/new-initiatives/new-initiatives.component.ts","./src/app/components/new-initiatives/new-initiatives.component.html","./src/app/components/office-orders/office-orders.component.ts","./src/app/components/office-orders/office-orders.component.html","./src/app/components/organizational-setup/organizational-setup.component.ts","./src/app/components/organizational-setup/organizational-setup.component.html","./src/app/components/phone-login/phone-login.component.ts","./src/app/components/phone-login/phone-login.component.html","./src/app/components/pond-estimate/pond-estimate.component.ts","./src/app/components/pond-estimate/pond-estimate.component.html","./src/app/components/pond-progress-intimation/pond-progress-intimation.component.ts","./src/app/components/pond-progress-intimation/pond-progress-intimation.component.html","./src/app/components/project/project.component.ts","./src/app/components/project/project.component.html","./src/app/components/registration/appeal/appeal.component.ts","./src/app/components/registration/appeal/appeal.component.html","./src/app/components/registration/bank-details/bank-details.component.ts","./src/app/components/registration/bank-details/bank-details.component.html","./src/app/components/registration/farmer-land-detail/farmer-land-detail.component.ts","./src/app/components/registration/farmer-land-detail/farmer-land-detail.component.html","./src/app/components/registration/kyc/kyc.component.ts","./src/app/components/registration/kyc/kyc.component.html","./src/app/components/registration/new-registration/new-registration.component.ts","./src/app/components/registration/new-registration/new-registration.component.html","./src/app/components/registration/on-farm-mi/on-farm-mi.component.ts","./src/app/components/registration/on-farm-mi/on-farm-mi.component.html","./src/app/components/registration/personal-details/personal-details.component.ts","./src/app/components/registration/personal-details/personal-details.component.html","./src/app/components/registration/vendor-budget-details/vendor-budget-details.component.ts","./src/app/components/registration/vendor-budget-details/vendor-budget-details.component.html","./src/app/components/registration/vendor-details/vendor-details.component.ts","./src/app/components/registration/vendor-details/vendor-details.component.html","./src/app/components/registration/vendor-personal-details/vendor-personal-details.component.ts","./src/app/components/registration/vendor-personal-details/vendor-personal-details.component.html","./src/app/components/registration/vendor-signup/vendor-signup.component.ts","./src/app/components/registration/vendor-signup/vendor-signup.component.html","./src/app/components/rti/rti.component.ts","./src/app/components/rti/rti.component.html","./src/app/components/sdo/sdo.component.ts","./src/app/components/sdo/sdo.component.html","./src/app/components/sdo/view-form/view-form.component.ts","./src/app/components/sdo/view-form/view-form.component.html","./src/app/components/statistics/statistics.component.ts","./src/app/components/statistics/statistics.component.html","./src/app/components/subdidy-details/subdidy-details.component.ts","./src/app/components/subdidy-details/subdidy-details.component.html","./src/app/components/tank-stage1/tank-stage1-approved/tank-stage1-approved.component.ts","./src/app/components/tank-stage1/tank-stage1-approved/tank-stage1-approved.component.html","./src/app/components/tank-stage1/tank-stage1-current/tank-stage1-current.component.ts","./src/app/components/tank-stage1/tank-stage1-current/tank-stage1-current.component.html","./src/app/components/tank-stage1/tank-stage1-pending/tank-stage1-pending.component.ts","./src/app/components/tank-stage1/tank-stage1-pending/tank-stage1-pending.component.html","./src/app/components/tank-stage1/tank-stage1.component.ts","./src/app/components/tank-stage1/tank-stage1.component.html","./src/app/components/tank-stage2/tank-stage2-approved/tank-stage2-approved.component.ts","./src/app/components/tank-stage2/tank-stage2-approved/tank-stage2-approved.component.html","./src/app/components/tank-stage2/tank-stage2-current/tank-stage2-current.component.ts","./src/app/components/tank-stage2/tank-stage2-current/tank-stage2-current.component.html","./src/app/components/tank-stage2/tank-stage2-pending/tank-stage2-pending.component.ts","./src/app/components/tank-stage2/tank-stage2-pending/tank-stage2-pending.component.html","./src/app/components/tank-stage2/tank-stage2.component.ts","./src/app/components/tank-stage2/tank-stage2.component.html","./src/app/components/tank-stage3/tank-stage3-approved/tank-stage3-approved.component.ts","./src/app/components/tank-stage3/tank-stage3-approved/tank-stage3-approved.component.html","./src/app/components/tank-stage3/tank-stage3-current/tank-stage3-current.component.ts","./src/app/components/tank-stage3/tank-stage3-current/tank-stage3-current.component.html","./src/app/components/tank-stage3/tank-stage3-pending/tank-stage3-pending.component.ts","./src/app/components/tank-stage3/tank-stage3-pending/tank-stage3-pending.component.html","./src/app/components/tank-stage3/tank-stage3.component.ts","./src/app/components/tank-stage3/tank-stage3.component.html","./src/app/components/target/canal-target/canal-target.component.ts","./src/app/components/target/canal-target/canal-target.component.html","./src/app/components/target/crop-master-status/crop-master-status.component.ts","./src/app/components/target/crop-master-status/crop-master-status.component.html","./src/app/components/target/mi-pond-target/mi-pond-target.component.ts","./src/app/components/target/mi-pond-target/mi-pond-target.component.html","./src/app/components/target/over-flow-pond/over-flow-pond.component.ts","./src/app/components/target/over-flow-pond/over-flow-pond.component.html","./src/app/components/target/stp-target/stp-target.component.ts","./src/app/components/target/stp-target/stp-target.component.html","./src/app/components/tubewell-connection-dashboard/tubewell-connection-dashboard.component.ts","./src/app/components/tubewell-connection-dashboard/tubewell-connection-dashboard.component.html","./src/app/components/tubewell-connection-login/tubewell-connection-login.component.ts","./src/app/components/tubewell-connection-login/tubewell-connection-login.component.html","./src/app/components/vendor-registration/vendor-registration.component.ts","./src/app/components/vendor-registration/vendor-registration.component.html","./src/app/components/vendor-registrations/vendor-registrations.component.ts","./src/app/components/vendor-registrations/vendor-registrations.component.html","./src/app/components/vendor-subsidy-details/vendor-subsidy-details.component.ts","./src/app/components/vendor-subsidy-details/vendor-subsidy-details.component.html","./src/app/components/vendor/full-paymentchallan-details/full-paymentchallan-details.component.ts","./src/app/components/vendor/full-paymentchallan-details/full-paymentchallan-details.component.html","./src/app/components/vendor/mi-inventory-details/mi-inventory-details.component.ts","./src/app/components/vendor/mi-inventory-details/mi-inventory-details.component.html","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey-approved/pre-estimate-survey-approved.component.ts","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey-approved/pre-estimate-survey-approved.component.html","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey-current/pre-estimate-survey-current.component.ts","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey-current/pre-estimate-survey-current.component.html","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey-pending/pre-estimate-survey-pending.component.ts","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey-pending/pre-estimate-survey-pending.component.html","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey.component.ts","./src/app/components/vendor/pre-estimate-survey/pre-estimate-survey.component.html","./src/app/components/vendor/upload-gst/upload-gst.component.ts","./src/app/components/vendor/upload-gst/upload-gst.component.html","./src/app/components/vendor/vendor-all-applications/vendor-all-applications.component.ts","./src/app/components/vendor/vendor-all-applications/vendor-all-applications.component.html","./src/app/components/vendor/vendor-application/vendor-app-approved/vendor-app-approved.component.ts","./src/app/components/vendor/vendor-application/vendor-app-approved/vendor-app-approved.component.html","./src/app/components/vendor/vendor-application/vendor-app-current/vendor-app-current.component.ts","./src/app/components/vendor/vendor-application/vendor-app-current/vendor-app-current.component.html","./src/app/components/vendor/vendor-application/vendor-app-pending/vendor-app-pending.component.ts","./src/app/components/vendor/vendor-application/vendor-app-pending/vendor-app-pending.component.html","./src/app/components/vendor/vendor-application/vendor-application.component.ts","./src/app/components/vendor/vendor-application/vendor-application.component.html","./src/app/components/vendor/vendor-boq/vendor-boq-approved/vendor-boq-approved.component.ts","./src/app/components/vendor/vendor-boq/vendor-boq-approved/vendor-boq-approved.component.html","./src/app/components/vendor/vendor-boq/vendor-boq-current/vendor-boq-current.component.ts","./src/app/components/vendor/vendor-boq/vendor-boq-current/vendor-boq-current.component.html","./src/app/components/vendor/vendor-boq/vendor-boq-pending/vendor-boq-pending.component.ts","./src/app/components/vendor/vendor-boq/vendor-boq-pending/vendor-boq-pending.component.html","./src/app/components/vendor/vendor-boq/vendor-boq.component.ts","./src/app/components/vendor/vendor-boq/vendor-boq.component.html","./src/app/components/vendor/vendor-consent-form/vendor-consent-form.component.ts","./src/app/components/vendor/vendor-consent-form/vendor-consent-form.component.html","./src/app/components/vendor/vendor-farmer-application/vendor-farmer-application.component.ts","./src/app/components/vendor/vendor-farmer-application/vendor-farmer-application.component.html","./src/app/components/vendor/vendor.component.ts","./src/app/components/vendor/vendor.component.html","./src/app/components/xen/xen-form/xen-form.component.ts","./src/app/components/xen/xen-form/xen-form.component.html","./src/app/components/xen/xen.component.ts","./src/app/components/xen/xen.component.html","./src/app/guards/auth-guard.service.ts","./src/app/guards/cao-guard.guard.ts","./src/app/guards/contractor.guard.ts","./src/app/guards/department-guard.guard.ts","./src/app/guards/dev-team.guard.ts","./src/app/guards/dev.guard.ts","./src/app/guards/grievance-handler.guard.ts","./src/app/guards/helpdesk.guard.ts","./src/app/guards/je-guard.guard.ts","./src/app/guards/own-mi-farmer-guard.guard.ts","./src/app/guards/sdo-guard.guard.ts","./src/app/guards/sub-dev.guard.ts","./src/app/guards/user-action.guard.ts","./src/app/guards/vendor-guard.guard.ts","./src/app/guards/vendor-reg.guard.ts","./src/app/guards/webadmin.guard.ts","./src/app/guards/xen-guard.guard.ts","./src/app/models/department-reports.model.ts","./src/app/models/farmer-land.model.ts","./src/app/models/farmers-application.model.ts","./src/app/models/on-farm-mi.model.ts","./src/app/pipes/indian-decimal.pipe.ts","./src/app/pipes/mask-aadhar.pipe.ts","./src/app/safe-url.pipe.ts","./src/app/services/activity-record.service.ts","./src/app/services/app-loader/app-loader.component.ts","./src/app/services/app-loader/app-loader.component.html","./src/app/services/app-loader/app-loader.service.ts","./src/app/services/app.config.service.ts","./src/app/services/app.menu.service.ts","./src/app/services/authentication.service.ts","./src/app/services/bank-details.service.ts","./src/app/services/boq-dashboard-service.ts","./src/app/services/cao.service.ts","./src/app/services/challan-services.service.ts","./src/app/services/common/base.service.ts","./src/app/services/common/models/token.ts","./src/app/services/common/token.service.ts","./src/app/services/crypto-js.service.ts","./src/app/services/dashboard.service.ts","./src/app/services/department-dashboard.service.ts","./src/app/services/farmer-land-detail.service.ts","./src/app/services/farmers-application.service.ts","./src/app/services/farmers-details.service.ts","./src/app/services/ip-address.service.ts","./src/app/services/je-services.service.ts","./src/app/services/on-farm-mi.service.ts","./src/app/services/pond-intimation.service.ts","./src/app/services/reports.service.ts","./src/app/services/sdo.service.ts","./src/app/services/super-admin.service.ts","./src/app/services/ticketservice.ts","./src/app/services/vendor-dashboard.service.ts","./src/environments/environment.ts","./src/main.ts","ignored|C:\\ZMICADA\\MICADA-UI\\node_modules\\crypto-js|crypto"],"sourcesContent":["import { tap } from 'rxjs/operators';\r\nimport { AppLoaderService } from './../services/app-loader/app-loader.service';\r\nimport { Injectable } from '@angular/core';\r\nimport {\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpInterceptor,\r\n HttpResponse\r\n} from '@angular/common/http';\r\nimport { catchError, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class ApiLoaderInterceptor implements HttpInterceptor {\r\n\r\n constructor(private loader: AppLoaderService) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n // this.loader.start();\r\n return next.handle(request).pipe(tap(event => {\r\n if (event instanceof HttpResponse) {\r\n // this.loader.close();\r\n }\r\n }, error => {\r\n // this.loader.close();\r\n }));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n\r\n constructor(\r\n public router: Router,\r\n private messageService: MessageService,\r\n ) {\r\n }\r\n\r\n autoLoggedOut(){\r\n // this.activityRecordService.activityRecord(this.loginId, 'auto logout', '', new Date(), 'Success');\r\n window.sessionStorage.removeItem('farmerDetails');\r\n sessionStorage.removeItem('farmerPh');\r\n sessionStorage.removeItem('userID');\r\n sessionStorage.removeItem('farmerPh');\r\n sessionStorage.removeItem('isFarmerLogin');\r\n sessionStorage.removeItem('isAtalBhujal');\r\n sessionStorage.clear();\r\n window.sessionStorage.setItem('autoLoggedOut', '1');\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Session Expired',\r\n detail: 'Auto logged out',\r\n });\r\n setTimeout( () => {\r\n this.router.navigate(['/home']);\r\n }, 2500)\r\n // window.location.reload();\r\n // this.getInitialToken();\r\n }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(request).pipe(catchError(err => {\r\n // console.log(err)\r\n // if ([403]) {\r\n // // auto logout if 403 response returned from api\r\n // this.autoLoggedOut();\r\n // return;\r\n // }\r\n if ([401].includes(err.status) || [403].includes(err.status)) {\r\n // auto logout if 401 or 403 response returned from api\r\n\r\n this.autoLoggedOut();\r\n return throwError(err?.statusText);\r\n // if(err?.statusText == \"Unauthorized\"){\r\n // // auto logged out the user\r\n // this.autoLoggedOut();\r\n // }else{\r\n // return throwError(err?.statusText);\r\n // }\r\n }\r\n \r\n // if ([200, 201].includes(err.status)) {\r\n // // auto logout if 401 or 403 response returned from api\r\n // console.error(err);\r\n // }\r\n\r\n else if([500].includes(err.status)) {\r\n // console.error(err);\r\n return throwError(err?.error?.error?.message);\r\n }\r\n else if([404].includes(err.status)) {\r\n // console.log(err)\r\n return throwError(err?.error ? err?.error : err?.statusText);\r\n }\r\n else if([0].includes(err.status)) {\r\n return throwError('Server Error');\r\n }\r\n else{\r\n const error = err.error?.message || err.error?.login_failure || err.error?.text || err.statusText ;\r\n // console.error(err);\r\n return throwError(error); \r\n }\r\n }))\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { environment } from '../../../environments/environment';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Injectable()\r\nexport class JwtInterceptor implements HttpInterceptor {\r\n user: any;\r\n constructor(\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n // add auth header with jwt if user is logged in and request is to the api url\r\n // const user = this.accountService.retriveToken();\r\n // console.log(request.url.includes('GetToken'));\r\n\r\n // const token = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n const token = sessionStorage.getItem('token') && sessionStorage.getItem('token') != 'undefined'\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : null;\r\n // let token = farmerConfData.get('token') ? farmerConfData.get('token') : '';\r\n\r\n const auth_token = token?.authToken\r\n\r\n // const token = sessionStorage.getItem('auth_token');\r\n \r\n if(request.url.includes('GetToken')){\r\n // sessionStorage.clear();\r\n return next.handle(request);\r\n }else if (auth_token) {\r\n\r\n if(request.url.includes('File/Upload')){\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${auth_token}`,\r\n // \"Access-Control-Allow-Origin\": \"*\"\r\n }\r\n });\r\n }\r\n else if(request.url.includes('https://api.ipify.org/?format=json')){\r\n request = request.clone({\r\n setHeaders: {\r\n // Authorization: `Bearer ${auth_token}`,\r\n // \"Access-Control-Allow-Origin\": \"*\"\r\n }\r\n });\r\n }\r\n else{\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${auth_token}`,\r\n 'Content-Type': 'application/json',\r\n // \"Access-Control-Allow-Origin\": \"*\"\r\n }\r\n });\r\n }\r\n return next.handle(request);\r\n }\r\n\r\n\r\n }\r\n}\r\n","import { ImportPfmsDataComponent } from './components/cao/import-pfms-data/import-pfms-data.component';\r\nimport { ReturnToFarmerPfmsReportComponent } from './components/cao/return-to-farmer-pfms-report/return-to-farmer-pfms-report.component';\r\nimport { SubsidyToVendorPfmsReportComponent } from './components/cao/subsidy-to-vendor-pfms-report/subsidy-to-vendor-pfms-report.component';\r\nimport { SubsidyToFarmerPfmsReportComponent } from './components/cao/subsidy-to-farmer-pfms-report/subsidy-to-farmer-pfms-report.component';\r\nimport { ViewFarmerApplicationComponent } from './components/je/view-farmer-application/view-farmer-application.component';\r\nimport { HelpdeskComponent } from './components/helpdesk/helpdesk.component';\r\nimport { MiPhysicalVerificationsComponent } from './components/je/mi-physical-verifications/mi-physical-verifications.component';\r\nimport { AttachmentComponent } from './components/je/attachment/attachment.component';\r\nimport { FinanceComponent } from './components/je/finance/finance.component';\r\nimport { BasicComponent } from './components/je/basic/basic.component';\r\nimport { JeApplicationComponent } from './components/je/je-application/je-application.component';\r\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\r\nimport { MiVendorApplicationVerificationComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification.component';\r\nimport { FarmerApplicationVerificationComponent } from './components/department/farmer-application-verification/farmer-application-verification.component';\r\nimport { VendorMiEstimationConsentFormComponent } from './components/department/vendor-mi-estimation-consent-form/vendor-mi-estimation-consent-form.component';\r\nimport { PondProgressIntimationComponent } from './components/pond-progress-intimation/pond-progress-intimation.component';\r\nimport { VendorGuardGuard } from './guards/vendor-guard.guard';\r\nimport { VendorConsentFormComponent } from './components/vendor/vendor-consent-form/vendor-consent-form.component';\r\nimport { VendorComponent } from './components/vendor/vendor.component';\r\nimport { DepartmentConsentFormComponent } from './components/department/department-consent-form/department-consent-form.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { HomePageLayoutComponent } from './components/layouts/home-page-layout/home-page-layout.component';\r\nimport { InnerPageLayoutComponent } from './components/layouts/inner-page-layout/inner-page-layout.component';\r\nimport { BankDetailsComponent } from './components/registration/bank-details/bank-details.component';\r\nimport { PersonalDetailsComponent } from './components/registration/personal-details/personal-details.component';\r\nimport { FarmerLandDetailComponent } from './components/registration/farmer-land-detail/farmer-land-detail.component';\r\nimport { OnFarmMiComponent } from './components/registration/on-farm-mi/on-farm-mi.component';\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { PhoneLoginComponent } from './components/phone-login/phone-login.component';\r\nimport { FarmersApplicationComponent } from './components/application/farmers-application/farmers-application.component';\r\nimport { ConsentFormComponent } from './components/application/consent-form/consent-form.component';\r\nimport { DashboardComponent } from './components/dashboard/dashboard.component';\r\nimport { DepartmentGuardGuard } from './guards/department-guard.guard';\r\nimport { JEGuardGuard } from './guards/je-guard.guard';\r\nimport { SdoGuardGuard } from './guards/sdo-guard.guard';\r\nimport { PondEstimateComponent } from './components/pond-estimate/pond-estimate.component';\r\n\r\nimport { VendorBOQComponent } from './components/vendor/vendor-boq/vendor-boq.component';\r\nimport { MiChallanComponent } from './components/challan/mi-challan/mi-challan.component';\r\nimport { FarmerShareComponent } from './components/challan/mi-challan/farmer-share/farmer-share.component';\r\nimport { FullPaymentComponent } from './components/challan/mi-challan/full-payment/full-payment.component';\r\nimport { SolarChallanComponent } from './components/challan/solar-challan/solar-challan.component';\r\nimport { SanctionLetterComponent } from './components/challan/mi-challan/sanction-letter/sanction-letter.component';\r\nimport { AuthGuard } from './guards/auth-guard.service';\r\nimport { WorkFlowAllStatusComponent } from './components/department/farmer-application-verification/work-flow-all-status/work-flow-all-status.component';\r\nimport { LandingComponent } from './components/landing/landing.component';\r\nimport { ActivitiesComponent } from './components/activities/activities.component';\r\nimport { OrganizationalSetupComponent } from './components/organizational-setup/organizational-setup.component';\r\nimport { StatisticsComponent } from './components/statistics/statistics.component';\r\nimport { FullPaymentchallanDetailsComponent } from './components/vendor/full-paymentchallan-details/full-paymentchallan-details.component';\r\nimport { ReportSummaryComponent } from './components/department/report-summary/report-summary.component';\r\nimport { VendorApplicationComponent } from './components/vendor/vendor-application/vendor-application.component';\r\nimport { PrintFarmersChallanComponent } from './components/department/print-farmers-challan/print-farmers-challan.component';\r\nimport { HelpdeskGuard } from './guards/helpdesk.guard';\r\nimport { UpdateMiComponentCmlValidityComponent } from './components/department/update-mi-component-cml-validity/update-mi-component-cml-validity.component';\r\nimport { ChangeRequestComponent } from './components/farmer/change-request/change-request.component';\r\nimport { ViewFormComponent } from './components/sdo/view-form/view-form.component';\r\nimport { SdoComponent } from './components/sdo/sdo.component';\r\nimport { FarmerAppChangeRequestComponent } from './components/department/farmer-app-change-request/farmer-app-change-request.component';\r\nimport { NewInitiativesComponent } from './components/new-initiatives/new-initiatives.component';\r\nimport { RtiComponent } from './components/rti/rti.component';\r\nimport { MiSurveyComponent } from './components/department/subsidy-lot/mi-survey/mi-survey.component';\r\nimport { MiSurveySubsidyDisbursementComponent } from './components/cao/mi-survey-subsidy-disbursement/mi-survey-subsidy-disbursement.component';\r\nimport { ApproveFarmersChallanComponent } from './components/department/approve-farmers-challan/approve-farmers-challan.component';\r\nimport { CAOGuardGuard } from './guards/cao-guard.guard';\r\nimport { FarmerShareToVendorComponent } from './components/department/subsidy-lot/farmer-share-to-vendor/farmer-share-to-vendor.component';\r\nimport { SubsidyToVendorComponent } from './components/department/subsidy-lot/subsidy-to-vendor/subsidy-to-vendor.component';\r\nimport { SubsidyToFarmerComponent } from './components/department/subsidy-lot/subsidy-to-farmer/subsidy-to-farmer.component';\r\nimport { RefundToFarmerComponent } from './components/department/subsidy-lot/refund-to-farmer/refund-to-farmer.component';\r\nimport { FarmerShareToVendorPfmsReportComponent } from './components/cao/farmer-share-to-vendor-pfms-report/farmer-share-to-vendor-pfms-report.component';\r\nimport { XenGuardGuard } from './guards/xen-guard.guard';\r\nimport { XenComponent } from './components/xen/xen.component';\r\nimport { XenFormComponent } from './components/xen/xen-form/xen-form.component';\r\nimport { TankStage1Component } from './components/tank-stage1/tank-stage1.component';\r\nimport { TankStage2Component } from './components/tank-stage2/tank-stage2.component';\r\nimport { TankStage3Component } from './components/tank-stage3/tank-stage3.component';\r\nimport { EvaluationStudyComponent } from './components/evaluation-study/evaluation-study.component';\r\nimport { MicroIrrigationComponent } from './components/micro-irrigation/micro-irrigation.component';\r\nimport { ProjectComponent } from './components/project/project.component';\r\nimport { AnnualPlanComponent } from './components/annual-plan/annual-plan.component';\r\nimport { AchievementsComponent } from './components/achievements/achievements.component';\r\nimport { Tankstagesurvey2Component } from './components/department/subsidy-lot/tankstagesurvey2/tankstagesurvey2.component';\r\nimport { Tankstagesurvey3Component } from './components/department/subsidy-lot/tankstagesurvey3/tankstagesurvey3.component';\r\nimport { Tankstagesurvey1Component } from './components/department/subsidy-lot/tankstagesurvey1/tankstagesurvey1.component';\r\nimport { TankStage1PfmsReportComponent } from './components/cao/tank-stage1-pfms-report/tank-stage1-pfms-report.component';\r\nimport { TankStage2PfmsReportComponent } from './components/cao/tank-stage2-pfms-report/tank-stage2-pfms-report.component';\r\nimport { TankStage3PfmsReportComponent } from './components/cao/tank-stage3-pfms-report/tank-stage3-pfms-report.component';\r\nimport { ViewCoOrdinatesComponent } from './components/department/view-co-ordinates/view-co-ordinates.component';\r\nimport { DepartmentDashboardComponent } from './components/department/department-dashboard/department-dashboard.component';\r\nimport { AppVerificationReportComponent } from './components/department/reports/app-verification-report/app-verification-report.component';\r\nimport { MonthWiseReportComponent } from './components/department/reports/app-verification-report/month-wise-report/month-wise-report.component';\r\nimport { DistrictWiseReportComponent } from './components/department/reports/app-verification-report/district-wise-report/district-wise-report.component';\r\nimport { UserWiseReportComponent } from './components/department/reports/app-verification-report/user-wise-report/user-wise-report.component';\r\nimport { VendorWiseReportComponent } from './components/department/reports/app-verification-report/vendor-wise-report/vendor-wise-report.component';\r\nimport { EstimationReportComponent } from './components/department/reports/estimation-report/estimation-report.component';\r\nimport { EstimationDistrictWiseReportComponent } from './components/department/reports/estimation-report/estimation-district-wise-report/estimation-district-wise-report.component';\r\nimport { EstimationMonthWiseReportComponent } from './components/department/reports/estimation-report/estimation-month-wise-report/estimation-month-wise-report.component';\r\nimport { EstimationUserWiseReportComponent } from './components/department/reports/estimation-report/estimation-user-wise-report/estimation-user-wise-report.component';\r\nimport { EstimationVendorWiseReportComponent } from './components/department/reports/estimation-report/estimation-vendor-wise-report/estimation-vendor-wise-report.component';\r\nimport { BOQReportComponent } from './components/department/reports/boq-report/boq-report.component';\r\nimport { BoqMonthWiseReportComponent } from './components/department/reports/boq-report/boq-month-wise-report/boq-month-wise-report.component';\r\nimport { BoqDistrictWiseReportComponent } from './components/department/reports/boq-report/boq-district-wise-report/boq-district-wise-report.component';\r\nimport { BoqVendorWiseReportComponent } from './components/department/reports/boq-report/boq-vendor-wise-report/boq-vendor-wise-report.component';\r\nimport { BoqMiTypeReportComponent } from './components/department/reports/boq-report/boq-mi-type-report/boq-mi-type-report.component';\r\nimport { EstimationVerificationReportComponent } from './components/department/reports/estimation-verification-report/estimation-verification-report.component';\r\nimport { EstVerificationDistrictWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-district-wise-report/est-verification-district-wise-report.component';\r\nimport { EstVerificationVendorWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-vendor-wise-report/est-verification-vendor-wise-report.component';\r\nimport { EstVerificationUserWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-user-wise-report/est-verification-user-wise-report.component';\r\nimport { EstVerificationMonthWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-month-wise-report/est-verification-month-wise-report.component';\r\nimport { ChallanReportComponent } from './components/department/reports/challan-report/challan-report.component';\r\nimport { ChallanVendorWiseReportComponent } from './components/department/reports/challan-report/challan-vendor-wise-report/challan-vendor-wise-report.component';\r\nimport { ChallanDistrictWiseReportComponent } from './components/department/reports/challan-report/challan-district-wise-report/challan-district-wise-report.component';\r\nimport { PhysicalVerificationVendorWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-vendor-wise-report/physical-verification-vendor-wise-report.component';\r\nimport { PhysicalVerificationMonthWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-month-wise-report/physical-verification-month-wise-report.component';\r\nimport { PhysicalVerificationReportComponent } from './components/department/reports/physical-verification-report/physical-verification-report.component';\r\nimport { PhysicalVerificationDistrictWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-district-wise-report/physical-verification-district-wise-report.component';\r\nimport { PhysicalVerificationUserWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-user-wise-report/physical-verification-user-wise-report.component';\r\nimport { FsvReportComponent } from './components/department/reports/fsv-report/fsv-report.component';\r\nimport { FsvMonthWiseReportComponent } from './components/department/reports/fsv-report/fsv-month-wise-report/fsv-month-wise-report.component';\r\nimport { FsvDistrictWiseReportComponent } from './components/department/reports/fsv-report/fsv-district-wise-report/fsv-district-wise-report.component';\r\nimport { FsvVendorWiseReportComponent } from './components/department/reports/fsv-report/fsv-vendor-wise-report/fsv-vendor-wise-report.component';\r\nimport { VendorFarmerApplicationComponent } from './components/vendor/vendor-farmer-application/vendor-farmer-application.component';\r\nimport { AllSubsidyLotComponent } from './components/department/subsidy-lot/all-subsidy-lot/all-subsidy-lot.component';\r\nimport { StvReportComponent } from './components/department/reports/stv-report/stv-report.component';\r\nimport { StvMonthWiseComponent } from './components/department/reports/stv-report/stv-month-wise/stv-month-wise.component';\r\nimport { StvVendorWiseReportComponent } from './components/department/reports/stv-report/stv-vendor-wise-report/stv-vendor-wise-report.component';\r\nimport { StfDistrictWiseReportComponent } from './components/department/reports/stf-report/stf-district-wise-report/stf-district-wise-report.component';\r\nimport { StfReportComponent } from './components/department/reports/stf-report/stf-report.component';\r\nimport { StfMonthWiseReportComponent } from './components/department/reports/stf-report/stf-month-wise-report/stf-month-wise-report.component';\r\nimport { StfVendorWiseReportComponent } from './components/department/reports/stf-report/stf-vendor-wise-report/stf-vendor-wise-report.component';\r\nimport { StvDistrictWiseReportComponent } from './components/department/reports/stv-report/stv-district-wise-report/stv-district-wise-report.component';\r\nimport { RtfReportComponent } from './components/department/reports/rtf-report/rtf-report.component';\r\nimport { RtfDistrictWiseReportComponent } from './components/department/reports/rtf-report/rtf-district-wise-report/rtf-district-wise-report.component';\r\nimport { RtfMonthWiseReportComponent } from './components/department/reports/rtf-report/rtf-month-wise-report/rtf-month-wise-report.component';\r\nimport { RtfVendorWiseReportComponent } from './components/department/reports/rtf-report/rtf-vendor-wise-report/rtf-vendor-wise-report.component';\r\nimport { VendorMiAreaReportComponent } from './components/department/reports/vendor-mi-area-report/vendor-mi-area-report.component';\r\nimport { MiVerificationSubsidyReportComponent } from './components/department/reports/mi-verification-subsidy-report/mi-verification-subsidy-report.component';\r\nimport { TankAbstractReportComponent } from './components/department/reports/tank-abstract-report/tank-abstract-report.component';\r\nimport { Stage1ReportComponent } from './components/department/reports/stage1-report/stage1-report.component';\r\nimport { Stage2ReportComponent } from './components/department/reports/stage2-report/stage2-report.component';\r\nimport { Stage3ReportComponent } from './components/department/reports/stage3-report/stage3-report.component';\r\nimport { Stage1SubsidyReportComponent } from './components/department/reports/stage1-subsidy-report/stage1-subsidy-report.component';\r\nimport { Stage3SubsidyReportComponent } from './components/department/reports/stage3-subsidy-report/stage3-subsidy-report.component';\r\nimport { Stage2SubsidyReportComponent } from './components/department/reports/stage2-subsidy-report/stage2-subsidy-report.component';\r\nimport { CanalAndTubeWellBasedReportComponent } from './components/department/reports/canal-and-tube-well-based-report/canal-and-tube-well-based-report.component';\r\n\r\nimport { ChallanMonthWiseReportComponent } from './components/department/reports/challan-report/challan-month-wise-report/challan-month-wise-report.component';\r\nimport { FarmerApplicationVerificationPendingComponent } from './components/department/farmer-application-verification/farmer-application-verification-pending/farmer-application-verification-pending.component';\r\nimport { FarmerApplicationVerificationCompletedComponent } from './components/department/farmer-application-verification/farmer-application-verification-completed/farmer-application-verification-completed.component';\r\nimport { FarmerApplicationVerificationCurrentComponent } from './components/department/farmer-application-verification/farmer-application-verification-current/farmer-application-verification-current.component';\r\nimport { YearWiseProgressComponent } from './components/department/year-wise-progress/year-wise-progress.component';\r\nimport { MiAreaCoveredComponent } from './components/department/mi-area-covered/mi-area-covered.component';\r\nimport { RealtimeDataPdmcSchemeComponent } from './components/department/realtime-data-pdmc-scheme/realtime-data-pdmc-scheme.component';\r\nimport { MiVendorApplicationVerificationPendingComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification-pending/mi-vendor-application-verification-pending.component';\r\nimport { MiVendorApplicationVerificationCurrentComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification-current/mi-vendor-application-verification-current.component';\r\nimport { MiVendorApplicationVerificationApprovedComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification-approved/mi-vendor-application-verification-approved.component';\r\n// import { GeolocationComponent } from './components/geolocation/geolocation.component';\r\nimport { PreEstimateSurveyComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey.component';\r\nimport { ChallanReconciliationDayReportComponent } from './components/department/reports/challan-reconciliation-day-report/challan-reconciliation-day-report.component';\r\nimport { MiSourceLocationComponent } from './components/je/mi-source-location/mi-source-location.component';\r\nimport { MiPhysicalLocationComponent } from './components/micada_1.0/mi-physical-location/mi-physical-location.component';\r\nimport { SeventyFiveHundredDemoComponent } from './components/department/reports/seventy-five-hundred-demo/seventy-five-hundred-demo.component';\r\nimport { AtalUserComponent } from './components/department/reports/atal-user/atal-user.component';\r\nimport { MiInventoryDetailsComponent } from './components/vendor/mi-inventory-details/mi-inventory-details.component';\r\nimport { MiDaReportComponent } from './components/department/reports/da-report/mi-da-report/mi-da-report.component';\r\nimport { PondDaReportComponent } from './components/department/reports/da-report/pond-da-report/pond-da-report.component';\r\nimport { DaReportComponent } from './components/department/reports/da-report/da-report.component';\r\nimport { VendorPreEstimationReportComponent } from './components/department/reports/vendor-pre-estimation-report/vendor-pre-estimation-report.component';\r\nimport { PreEstimateMonthWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-month-wise-report/pre-estimate-month-wise-report.component';\r\nimport { PreEstimateDistrictWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-district-wise-report/pre-estimate-district-wise-report.component';\r\nimport { PreEstimateUserWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-user-wise-report/pre-estimate-user-wise-report.component';\r\nimport { PreEstimateVendorWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-vendor-wise-report/pre-estimate-vendor-wise-report.component';\r\nimport { UploadGstComponent } from './components/vendor/upload-gst/upload-gst.component';\r\nimport { ImportBankDataComponent } from './components/cao/import-bank-data/import-bank-data.component';\r\nimport { OfficeOrdersComponent } from './components/office-orders/office-orders.component';\r\nimport { ConsolidatedReportComponent } from './components/department/reports/consolidated-report/consolidated-report.component';\r\nimport { PondConsolidateReportComponent } from './components/department/reports/pond-consolidate-report/pond-consolidate-report.component';\r\nimport { VendorAppApprovedComponent } from './components/vendor/vendor-application/vendor-app-approved/vendor-app-approved.component';\r\nimport { VendorAppPendingComponent } from './components/vendor/vendor-application/vendor-app-pending/vendor-app-pending.component';\r\nimport { VendorAppCurrentComponent } from './components/vendor/vendor-application/vendor-app-current/vendor-app-current.component';\r\nimport { RequestSolarComponent } from './components/dev/request-solar/request-solar.component';\r\nimport { DevGuard } from './guards/dev.guard';\r\nimport { SolarProcedureComponent } from './components/dev/solar-procedure/solar-procedure.component';\r\nimport { AddToSolarFlowComponent } from './components/dev/add-to-solar-flow/add-to-solar-flow.component';\r\nimport { ModifySolarComponent } from './components/dev/modify-solar/modify-solar.component';\r\nimport { GetSolarComponent } from './components/dev/get-solar/get-solar.component';\r\nimport { SolarListComponent } from './components/dev/solar-list/solar-list.component';\r\nimport { SubDevGuard } from './guards/sub-dev.guard';\r\nimport { ApplicationTypeReportComponent } from './components/department/application-type-report/application-type-report.component';\r\nimport { MiPhysicalVerificationCurrentComponent } from './components/je/mi-physical-verifications/mi-physical-verification-current/mi-physical-verification-current.component';\r\nimport { MiPhysicalVerficationCompletedComponent } from './components/je/mi-physical-verifications/mi-physical-verfication-completed/mi-physical-verfication-completed.component';\r\nimport { MiPhysicalVerificationPendingComponent } from './components/je/mi-physical-verifications/mi-physical-verification-pending/mi-physical-verification-pending.component';\r\nimport { SanctionLetterComponentComponent } from './components/challan/sanction-letter-component/sanction-letter-component.component';\r\nimport { ImageAttachmentsComponent } from './components/je/image-attachments/image-attachments.component';\r\nimport { TargetSystemComponent } from './components/admin-panel/target-system/target-system.component';\r\nimport { InventoryReportComponent } from './components/department/reports/inventory-report/inventory-report.component';\r\nimport { ErrorTrackingComponent } from './components/dev/error-tracking/error-tracking.component';\r\nimport { TankStage1PendingComponent } from './components/tank-stage1/tank-stage1-pending/tank-stage1-pending.component';\r\nimport { TankStage1CurrentComponent } from './components/tank-stage1/tank-stage1-current/tank-stage1-current.component';\r\nimport { TankStage1ApprovedComponent } from './components/tank-stage1/tank-stage1-approved/tank-stage1-approved.component';\r\nimport { TankStage2PendingComponent } from './components/tank-stage2/tank-stage2-pending/tank-stage2-pending.component';\r\nimport { TankStage2CurrentComponent } from './components/tank-stage2/tank-stage2-current/tank-stage2-current.component';\r\nimport { TankStage2ApprovedComponent } from './components/tank-stage2/tank-stage2-approved/tank-stage2-approved.component';\r\nimport { TankStage3PendingComponent } from './components/tank-stage3/tank-stage3-pending/tank-stage3-pending.component';\r\nimport { TankStage3CurrentComponent } from './components/tank-stage3/tank-stage3-current/tank-stage3-current.component';\r\nimport { TankStage3ApprovedComponent } from './components/tank-stage3/tank-stage3-approved/tank-stage3-approved.component';\r\nimport { PreEstimateSurveyPendingComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey-pending/pre-estimate-survey-pending.component';\r\nimport { PreEstimateSurveyApprovedComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey-approved/pre-estimate-survey-approved.component';\r\nimport { PreEstimateSurveyCurrentComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey-current/pre-estimate-survey-current.component';\r\nimport { VendorBoqPendingComponent } from './components/vendor/vendor-boq/vendor-boq-pending/vendor-boq-pending.component';\r\nimport { VendorBoqApprovedComponent } from './components/vendor/vendor-boq/vendor-boq-approved/vendor-boq-approved.component';\r\nimport { VendorBoqCurrentComponent } from './components/vendor/vendor-boq/vendor-boq-current/vendor-boq-current.component';\r\nimport { CanalTargetComponent } from './components/target/canal-target/canal-target.component';\r\nimport { CropMasterStatusComponent } from './components/target/crop-master-status/crop-master-status.component';\r\nimport { UserActionGuard } from './guards/user-action.guard';\r\nimport { StpTargetComponent } from './components/target/stp-target/stp-target.component';\r\nimport { OverFlowPondComponent } from './components/target/over-flow-pond/over-flow-pond.component';\r\nimport { SubsidyWiseReportComponent } from './components/department/reports/subsidy-wise-report/subsidy-wise-report.component';\r\nimport { FarmerShareToFarmerPfmsReportComponent } from './components/cao/farmer-share-to-farmer-pfms-report/farmer-share-to-farmer-pfms-report.component';\r\nimport { SubsidyToFarmerAbyPfmsReportComponent } from './components/cao/subsidy-to-farmer-aby-pfms-report/subsidy-to-farmer-aby-pfms-report.component';\r\nimport { SubsidyToVendorAbyPfmsReportComponent } from './components/cao/subsidy-to-vendor-aby-pfms-report/subsidy-to-vendor-aby-pfms-report.component';\r\nimport { TankStage1AbyPfmsReportComponent } from './components/cao/tank-stage1-aby-pfms-report/tank-stage1-aby-pfms-report.component';\r\nimport { TankStage2AbyPfmsReportComponent } from './components/cao/tank-stage2-aby-pfms-report/tank-stage2-aby-pfms-report.component';\r\nimport { TankStage3AbyPfmsReportComponent } from './components/cao/tank-stage3-aby-pfms-report/tank-stage3-aby-pfms-report.component';\r\nimport { RefundToFarmerAbyComponent } from './components/cao/refund-to-farmer-aby/refund-to-farmer-aby.component';\r\nimport { ChangeVendorComponent } from './components/department/farmer-queries/change-vendor/change-vendor.component';\r\nimport { ChangeProgramComponent } from './components/department/farmer-queries/change-program/change-program.component';\r\nimport { UnhideApplicationComponent } from './components/department/farmer-queries/unhide-application/unhide-application.component';\r\nimport { TubewellConnectionLoginComponent } from './components/tubewell-connection-login/tubewell-connection-login.component';\r\nimport { LotWiseReportComponent } from './components/department/reports/lot-wise-report/lot-wise-report.component';\r\nimport { FsvLotReportComponent } from './components/department/reports/lot-wise-report/fsv-lot-report/fsv-lot-report.component';\r\nimport { StfLotReportComponent } from './components/department/reports/lot-wise-report/stf-lot-report/stf-lot-report.component';\r\nimport { StvLotReportComponent } from './components/department/reports/lot-wise-report/stv-lot-report/stv-lot-report.component';\r\nimport { RtfLotReportComponent } from './components/department/reports/lot-wise-report/rtf-lot-report/rtf-lot-report.component';\r\nimport { Stage1LotReportComponent } from './components/department/reports/lot-wise-report/stage1-lot-report/stage1-lot-report.component';\r\nimport { Stage3LotReportComponent } from './components/department/reports/lot-wise-report/stage3-lot-report/stage3-lot-report.component';\r\nimport { Stage2LotReportComponent } from './components/department/reports/lot-wise-report/stage2-lot-report/stage2-lot-report.component';\r\nimport { NewTargetComponent } from './components/home-page/new-target/new-target.component';\r\nimport { SubsidyToFarmerAtalComponent } from './components/department/subsidy-lot/subsidy-to-farmer-atal/subsidy-to-farmer-atal.component';\r\nimport { ChallanReportByVendorIdComponent } from './components/department/reports/challan-report-by-vendor-id/challan-report-by-vendor-id.component';\r\nimport { LotReportComponent } from './components/department/reports/lot-report/lot-report.component';\r\nimport { MiConsolidatedCountWiseReportComponent } from './components/department/reports/consolidated-report/mi-consolidated-count-wise-report/mi-consolidated-count-wise-report.component';\r\nimport { FailedMiPaymentFsvComponent } from './components/department/failed-mi-payment/failed-mi-payment-fsv/failed-mi-payment-fsv.component';\r\nimport { FailedMiPaymentStfComponent } from './components/department/failed-mi-payment/failed-mi-payment-stf/failed-mi-payment-stf.component';\r\nimport { FailedMiPaymentStvComponent } from './components/department/failed-mi-payment/failed-mi-payment-stv/failed-mi-payment-stv.component';\r\nimport { FailedMiPaymentComponent } from './components/department/failed-mi-payment/failed-mi-payment.component';\r\nimport { FailedPondPaymentComponent } from './components/department/failed-pond-payment/failed-pond-payment.component';\r\nimport { FailedPondPaymentS1Component } from './components/department/failed-pond-payment/failed-pond-payment-s1/failed-pond-payment-s1.component';\r\nimport { FailedPondPaymentS2Component } from './components/department/failed-pond-payment/failed-pond-payment-s2/failed-pond-payment-s2.component';\r\nimport { FailedPondPaymentS3Component } from './components/department/failed-pond-payment/failed-pond-payment-s3/failed-pond-payment-s3.component';\r\nimport { PondCountWiseReportComponent } from './components/department/reports/consolidated-report/pond-count-wise-report/pond-count-wise-report.component';\r\nimport { NewWorkComponent } from './components/contractor/new-work/new-work.component';\r\nimport { UpdateWorkComponent } from './components/contractor/update-work/update-work.component';\r\nimport { ContractorGuard } from './guards/contractor.guard';\r\nimport { ContractorDashboardComponent } from './components/contractor/contractor-dashboard/contractor-dashboard.component';\r\nimport { FailedMiPaymentRtfComponent } from './components/department/failed-mi-payment/failed-mi-payment-rtf/failed-mi-payment-rtf.component';\r\nimport { MiConsolidatedTotalAppReportComponent } from './components/department/reports/consolidated-report/mi-consolidated-total-app-report/mi-consolidated-total-app-report.component';\r\nimport { PhysicalFinTargetComponent } from './components/department/physical-fin-target/physical-fin-target.component';\r\nimport { BeneficiaryDetailsComponent } from './components/beneficiary-details/beneficiary-details.component';\r\nimport { TubewellConnectionDashboardComponent } from './components/tubewell-connection-dashboard/tubewell-connection-dashboard.component';\r\nimport { OwnMiFarmerGuardGuard } from './guards/own-mi-farmer-guard.guard';\r\nimport { EpcWorkApprovalComponent } from './components/department/epc/epc-work-approval/epc-work-approval.component';\r\nimport { EpcWorkPvComponent } from './components/department/epc/epc-work-pv/epc-work-pv.component';\r\nimport { KrishiMapperComponent } from './components/department/krishi-mapper/krishi-mapper.component';\r\nimport { UhbvnNocUploadComponent } from './components/department/uhbvn/uhbvn-noc-upload/uhbvn-noc-upload.component';\r\nimport { NewRegistrationComponent } from './components/registration/new-registration/new-registration.component';\r\nimport { UhbvnComponent } from './components/department/uhbvn/uhbvn.component';\r\nimport { PrintNocComponent } from './components/department/uhbvn/print-noc/print-noc.component';\r\nimport { FarmerRequestForNocComponent } from './components/department/uhbvn/farmer-request-for-noc/farmer-request-for-noc.component';\r\nimport { UploadedNocForSurveyComponent } from './components/department/uhbvn/uploaded-noc-for-survey/uploaded-noc-for-survey.component';\r\nimport { ConsolidatedDashboardComponent } from './components/department/reports/consolidated-report/consolidated-dashboard/consolidated-dashboard.component';\r\nimport { VendorDetailsComponent } from './components/registration/vendor-details/vendor-details.component';\r\nimport { VendorRegistrationComponent } from './components/vendor-registration/vendor-registration.component';\r\nimport { VendorBudgetDetailsComponent } from './components/registration/vendor-budget-details/vendor-budget-details.component';\r\nimport { VendorRegGuard } from './guards/vendor-reg.guard';\r\nimport { EpcPaymentComponent } from './components/department/epc/epc-payment/epc-payment.component';\r\nimport { PfmsPaymentStatusComponent } from './components/department/epc/epc-payment/pfms-payment-status/pfms-payment-status.component';\r\nimport { EpcPvDoneComponent } from './components/department/epc/epc-payment/epc-pv-done/epc-pv-done.component';\r\nimport { ReadyForPaymentComponent } from './components/department/epc/epc-payment/ready-for-payment/ready-for-payment.component';\r\nimport { VendorDashboardComponent } from './components/department/reports/vendor-dashboard/vendor-dashboard.component';\r\nimport { RankingRatingReportComponent } from './components/department/reports/ranking-rating-report/ranking-rating-report.component';\r\nimport { LotConsolidatedReportComponent } from './components/department/reports/lot-consolidated-report/lot-consolidated-report.component';\r\nimport { DevTeamGuard } from './guards/dev-team.guard';\r\nimport { MiConsolidatedDetailReportComponent } from './components/department/reports/consolidated-report/mi-consolidated-detail-report/mi-consolidated-detail-report.component';\r\nimport { PondConsolidatedDetailReportComponent } from './components/department/reports/consolidated-report/pond-consolidated-detail-report/pond-consolidated-detail-report.component';\r\nimport { BenificiaryComponent } from './components/benificiary/benificiary/benificiary.component';\r\nimport { SubsidyToVendorAtalComponent } from './components/department/subsidy-lot/subsidy-to-vendor-atal/subsidy-to-vendor-atal.component';\r\nimport { VendorRegistrationsComponent } from './components/vendor-registrations/vendor-registrations.component';\r\nimport { VendorDataComponent } from './components/je/vendor-data/vendor-data.component';\r\nimport { VendorSignupComponent } from './components/registration/vendor-signup/vendor-signup.component';\r\nimport { GrievanceComponent } from './components/grievance/grievance.component';\r\nimport { GrievanceHandlerComponent } from './components/grievance/grievance-handler/grievance-handler.component';\r\nimport { GrievanceHandlerGuard } from './guards/grievance-handler.guard';\r\nimport { WebadminGuard } from './guards/webadmin.guard';\r\nimport { CaoFinancialDetailsComponent } from './components/cao/cao-financial-details/cao-financial-details.component';\r\nimport { JeActivityComponent } from './components/je-activity/je-activity.component';\r\nimport { VendorPersonalDetailsComponent } from './components/registration/vendor-personal-details/vendor-personal-details.component';\r\nimport { SubsidyDistributionComponent } from './components/cao/subsidy-distribution/subsidy-distribution.component';\r\nimport { SubdidyDetailsComponent } from './components/subdidy-details/subdidy-details.component';\r\nimport { VendorSubsidyDetailsComponent } from './components/vendor-subsidy-details/vendor-subsidy-details.component';\r\nimport { VendorAllApplicationsComponent } from './components/vendor/vendor-all-applications/vendor-all-applications.component';\r\nimport { JeSurveyActionInfoComponent } from './components/department/je-survey-action-info/je-survey-action-info.component';\r\nimport { MiPondTargetComponent } from './components/target/mi-pond-target/mi-pond-target.component';\r\nimport { EpcEstimationDetailsComponent } from './components/department/reports/epc-report/epc-estimation-details/epc-estimation-details.component';\r\nimport { PhotoGalleryComponent } from './components/gallery/photo-gallery/photo-gallery.component';\r\nimport { VideoGalleryComponent } from './components/gallery/video-gallery/video-gallery.component';\r\nimport { SuccessStoriesComponent } from './components/landing/success-stories/success-stories.component';\r\nimport { UpdateJamabandiComponent } from './components/dev/update-jamabandi/update-jamabandi.component';\r\nimport { AppealComponent } from './components/registration/appeal/appeal.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: '/home',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'login',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: LoginComponent }],\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'forgot-password',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: ForgotPasswordComponent }],\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'phone-login',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: PhoneLoginComponent }],\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'vendor-registration-login',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: VendorRegistrationComponent }],\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'vendor-reg-signup',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: VendorSignupComponent }],\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'tubewell-connection-login',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: TubewellConnectionLoginComponent }],\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'home',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: LandingComponent }],\r\n },\r\n {\r\n path: 'photo-gallery',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: PhotoGalleryComponent }],\r\n },\r\n {\r\n path: 'video-gallery',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: VideoGalleryComponent }],\r\n },\r\n {\r\n path: 'success-stories',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: SuccessStoriesComponent }],\r\n },\r\n {\r\n path: 'activities',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'officeOrders',\r\n component: HomePageLayoutComponent,\r\n children: [{ path: '', component: OfficeOrdersComponent }],\r\n },\r\n {\r\n path: 'org-setup',\r\n component: OrganizationalSetupComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'beneficiary',\r\n component: BeneficiaryDetailsComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'rti',\r\n component: RtiComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'statistics',\r\n component: StatisticsComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'new-initiatives',\r\n component: NewInitiativesComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'evaluation-study',\r\n component: EvaluationStudyComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'achievements',\r\n component: AchievementsComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'annual-plan',\r\n component: AnnualPlanComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'project',\r\n component: ProjectComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'new-target',\r\n component: NewTargetComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: 'micro-irrigation',\r\n component: MicroIrrigationComponent,\r\n children: [{ path: '', component: ActivitiesComponent }],\r\n },\r\n {\r\n path: '',\r\n component: InnerPageLayoutComponent,\r\n canActivate: [OwnMiFarmerGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'tubewell-connection-dashboard', pathMatch: 'full' },\r\n { path: 'tubewell-connection-dashboard', component: TubewellConnectionDashboardComponent }\r\n ],\r\n },\r\n {\r\n path: 'farmer',\r\n component: InnerPageLayoutComponent,\r\n canActivate: [AuthGuard],\r\n children: [\r\n { path: '', redirectTo: 'dashboard', pathMatch: 'full' },\r\n { path: 'dashboard', component: DashboardComponent },\r\n { path: 'pond-progress-intimation', component: PondProgressIntimationComponent },\r\n { path: 'bank-details', component: BankDetailsComponent },\r\n { path: 'personal-details', component: PersonalDetailsComponent },\r\n { path: 'farmer-land-detail', component: FarmerLandDetailComponent },\r\n { path: 'on-farm-mi', component: OnFarmMiComponent },\r\n { path: 'farmers-application', component: FarmersApplicationComponent },\r\n { path: 'farmers-application/:appId', component: FarmersApplicationComponent },\r\n { path: 'dashboard/print/:appId/:vendorId/:programId/:userId/:autoId', component: ConsentFormComponent },\r\n {\r\n path: 'challan',\r\n children: [\r\n { path: '', redirectTo: 'mi-challan', pathMatch: 'full' },\r\n { path: 'mi-challan', component: MiChallanComponent },\r\n { path: 'sanction-letter/:id/:programId', component: SanctionLetterComponent },\r\n { path: 'farmer-share/:id/:pId', component: FarmerShareComponent },\r\n { path: 'full-payment/:id/:pId', component: FullPaymentComponent },\r\n { path: 'solar-challan', component: SolarChallanComponent },\r\n ],\r\n },\r\n {\r\n path: 'sanction',\r\n children: [\r\n { path: '', redirectTo: 'sanctio-letter-comp', pathMatch: 'full' },\r\n { path: 'sanctio-letter-comp', component: SanctionLetterComponentComponent },\r\n { path: 'sanction-letter/:id/:programId', component: SanctionLetterComponent },\r\n ],\r\n },\r\n {\r\n path: 'change-request',\r\n children: [{ path: '', component: ChangeRequestComponent }],\r\n },\r\n {\r\n path: 'new-registration',\r\n children: [{ path: '', component: NewRegistrationComponent }],\r\n },\r\n {\r\n path: 'grievance',\r\n children: [{ path: '', component: GrievanceComponent }],\r\n },\r\n ],\r\n },\r\n\r\n {\r\n path: 'new-registration',\r\n component: InnerPageLayoutComponent,\r\n canActivate: [VendorRegGuard],\r\n children: [\r\n { \r\n path: '', redirectTo: 'budget-Details', pathMatch: 'full' \r\n },\r\n // { path: 'vendor-details', component: VendorDetailsComponent },\r\n {\r\n path:'budget-Details', component:VendorBudgetDetailsComponent\r\n },\r\n {\r\n path:'reg-deatils',component:VendorPersonalDetailsComponent\r\n },\r\n {\r\n path:'appeal-deatils',component:AppealComponent\r\n },\r\n ],\r\n },\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n // {\r\n // path: 'pond-progress-intimation',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: PondProgressIntimationComponent }],\r\n // },\r\n // {\r\n // path: 'bank-details',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: BankDetailsComponent }],\r\n // },\r\n // {\r\n // path: 'personal-details',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: PersonalDetailsComponent }],\r\n // },\r\n // {\r\n // path: 'farmer-land-detail',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: FarmerLandDetailComponent }],\r\n // },\r\n // {\r\n // path: 'on-farm-mi',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: OnFarmMiComponent }],\r\n // },\r\n // {\r\n // path: 'farmers-application',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: FarmersApplicationComponent }],\r\n // },\r\n // {\r\n // path: 'farmers-application/:appId',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: FarmersApplicationComponent }],\r\n // },\r\n // {\r\n // //path: 'dashboard/print:appId',\r\n // path: 'dashboard/print/:appId/:vendorId/:programId/:userId/:autoId',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: ConsentFormComponent }],\r\n // },\r\n // {\r\n // path: 'farmer-applications/all-status/:id',\r\n // component: InnerPageLayoutComponent,\r\n // canActivate: [AuthGuard],\r\n // children: [{ path: '', component: WorkFlowAllStatusComponent }],\r\n // },\r\n \r\n {\r\n path: 'department',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [DepartmentGuardGuard],\r\n children: [\r\n // {\r\n // path: 'farmer-applications',\r\n // component: FarmerApplicationVerificationComponent,\r\n // },\r\n {\r\n path: 'farmer-applications',\r\n component: FarmerApplicationVerificationComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n {\r\n path: 'pending',\r\n component: FarmerApplicationVerificationPendingComponent,\r\n },\r\n {\r\n path: 'current',\r\n component: FarmerApplicationVerificationCurrentComponent,\r\n },\r\n {\r\n path: 'approved',\r\n component: FarmerApplicationVerificationCompletedComponent,\r\n },\r\n ],\r\n },\r\n // { path: 'farmer-applications/all-status/:id', component: WorkFlowAllStatusComponent },\r\n // {\r\n // path: 'vendor-mi-applications',\r\n // component: MiVendorApplicationVerificationComponent,\r\n // },\r\n {\r\n path: 'vendor-mi-applications',\r\n component: MiVendorApplicationVerificationComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n {\r\n path: 'pending',\r\n component: MiVendorApplicationVerificationPendingComponent,\r\n },\r\n {\r\n path: 'current',\r\n component: MiVendorApplicationVerificationCurrentComponent,\r\n },\r\n {\r\n path: 'approved',\r\n component: MiVendorApplicationVerificationApprovedComponent,\r\n },\r\n ],\r\n },\r\n // {\r\n // path: 'tank-stage1',\r\n // component: TankStage1Component,\r\n // children: [\r\n // { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n // { path: 'pending', component: TankStage1PendingComponent },\r\n // { path: 'current', component: TankStage1CurrentComponent },\r\n // { path: 'approved', component: TankStage1ApprovedComponent },\r\n // ],\r\n // },\r\n // {\r\n // path: 'tank-stage2',\r\n // component: TankStage2Component,\r\n // children: [\r\n // { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n // { path: 'pending', component: TankStage2PendingComponent },\r\n // { path: 'current', component: TankStage2CurrentComponent },\r\n // { path: 'approved', component: TankStage2ApprovedComponent },\r\n // ],\r\n // },\r\n // {\r\n // path: 'tank-stage3',\r\n // component: TankStage3Component,\r\n // children: [\r\n // { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n // { path: 'pending', component: TankStage3PendingComponent },\r\n // { path: 'current', component: TankStage3CurrentComponent },\r\n // { path: 'approved', component: TankStage3ApprovedComponent },\r\n // ],\r\n // },\r\n {\r\n path: 'print-farmer-bank-challan',\r\n component: PrintFarmersChallanComponent,\r\n },\r\n {\r\n path: 'approve-farmer-bank-challan',\r\n component: ApproveFarmersChallanComponent,\r\n },\r\n {\r\n path: 'year-wise-progress',\r\n component : YearWiseProgressComponent\r\n },\r\n {\r\n path: 'mi-area-covered',\r\n component : MiAreaCoveredComponent\r\n },\r\n {\r\n path: 'realtime-data-pdmc-scheme',\r\n component: RealtimeDataPdmcSchemeComponent\r\n },\r\n {\r\n path: 'vendor-estimate/print/:appId/:vendorId/:programId',\r\n component: VendorMiEstimationConsentFormComponent,\r\n },\r\n {\r\n path: 'appliaction-approval/print/:appId',\r\n ///:vendorId/:programId/:userId/:autoId\r\n component: DepartmentConsentFormComponent,\r\n },\r\n // {\r\n // path: 'print/:appId',\r\n // ///:vendorId/:programId/:userId/:autoId\r\n // component: DepartmentConsentFormComponent,\r\n // },\r\n {\r\n path: 'report-summary',\r\n component: ReportSummaryComponent,\r\n },\r\n {\r\n path:'helpdesk',\r\n component: HelpdeskComponent,\r\n },\r\n {\r\n path: 'helpdesk/:appId',\r\n component: ConsentFormComponent,\r\n },\r\n {\r\n path: 'mi-survey',\r\n component: MiSurveyComponent,\r\n },\r\n {\r\n path: 'farmer-share-to-vendor',\r\n component: FarmerShareToVendorComponent,\r\n },\r\n {\r\n path: 'subsidy-to-vendor',\r\n component: SubsidyToVendorComponent,\r\n },\r\n {\r\n path: 'subsidy-to-vendor-aby',\r\n component: SubsidyToVendorAtalComponent,\r\n },\r\n {\r\n path: 'subsidy-to-farmer',\r\n component: SubsidyToFarmerComponent,\r\n },\r\n {\r\n path: 'subsidy-to-farmer-aby',\r\n component: SubsidyToFarmerAtalComponent,\r\n },\r\n {\r\n path: 'refund-to-farmer',\r\n component: RefundToFarmerComponent,\r\n },\r\n {\r\n path: 'update-mi-component-cml-validity',\r\n component: UpdateMiComponentCmlValidityComponent,\r\n },\r\n // {\r\n // path: 'physical-verification',\r\n // component: MiPhysicalVerificationsComponent,\r\n // },\r\n {\r\n path: 'physical-verification',\r\n component: MiPhysicalVerificationsComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: MiPhysicalVerificationPendingComponent },\r\n { path: 'current', component: MiPhysicalVerificationCurrentComponent },\r\n { path: 'approved', component: MiPhysicalVerficationCompletedComponent },\r\n ],\r\n },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n {\r\n path:'pond/tankstage-1',\r\n component: Tankstagesurvey1Component,\r\n },\r\n {\r\n path:'pond/tankstage-2',\r\n component: Tankstagesurvey2Component,\r\n },\r\n {\r\n path:'pond/tankstage-3',\r\n component: Tankstagesurvey3Component,\r\n },\r\n {\r\n path:'dashboard',\r\n component: DepartmentDashboardComponent,\r\n },\r\n // {\r\n // path: 'report/challan-report-by-vendor',\r\n // component : ChallanReportByVendorIdComponent\r\n // },\r\n \r\n // {\r\n // path: 'dashboard/micada_geography',\r\n // component: DepartmentDashboardComponent,\r\n // pathMatch: 'full'\r\n // },\r\n // {\r\n // path: 'dashboard/vendor_metrics',\r\n // component: DepartmentDashboardComponent,\r\n // pathMatch: 'full'\r\n // },\r\n // {\r\n // path: 'dashboard/app_verification',\r\n // component: DepartmentDashboardComponent,\r\n // pathMatch: 'full'\r\n // },\r\n {\r\n path: 'application',\r\n component: JeApplicationComponent,\r\n children: [\r\n { path: '', redirectTo: 'basic', pathMatch: 'full' },\r\n { path: 'basic', component: BasicComponent },\r\n { path: 'finance', component: FinanceComponent },\r\n { path: 'attachment', component: AttachmentComponent },\r\n { path: 'image-attachment', component: ImageAttachmentsComponent },\r\n ],\r\n },\r\n { path: 'change-request', component: FarmerAppChangeRequestComponent },\r\n { path: 'maps', component: ViewCoOrdinatesComponent, pathMatch: 'full' },\r\n {\r\n path: 'report/app-verification',\r\n component: AppVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: MonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: DistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: UserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: VendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation',\r\n component: EstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'estimation-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'estimation-month-wise',\r\n component: EstimationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-district-wise',\r\n component: EstimationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-user-wise',\r\n component: EstimationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-vendor-wise',\r\n component: EstimationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/boq',\r\n component: BOQReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'boq-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'boq-month-wise',\r\n component: BoqMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-district-wise',\r\n component: BoqDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-mi-type',\r\n component: BoqMiTypeReportComponent,\r\n },\r\n {\r\n path: 'boq-vendor-wise',\r\n component: BoqVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation-verification',\r\n component: EstimationVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: EstVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: EstVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: EstVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: EstVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/challan',\r\n component: ChallanReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: ChallanDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: ChallanVendorWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: ChallanMonthWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/physical-verification',\r\n component: PhysicalVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: PhysicalVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: PhysicalVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: PhysicalVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: PhysicalVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/fsv',\r\n component: FsvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: FsvMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: FsvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: FsvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stv',\r\n component: StvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: StvMonthWiseComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: StvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stf',\r\n component: StfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: StfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: StfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/rtf',\r\n component: RtfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: RtfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: RtfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: RtfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/mi-verification-subsidy-report',\r\n component: MiVerificationSubsidyReportComponent, \r\n },\r\n {\r\n path: 'report/vendor-mi-area-report',\r\n component: VendorMiAreaReportComponent,\r\n\r\n },\r\n {\r\n path: 'report/tank-abstract-report',\r\n component: TankAbstractReportComponent, \r\n },\r\n // {\r\n // path: 'report/stage1-report',\r\n // component: Stage1ReportComponent,\r\n \r\n // },\r\n // {\r\n // path: 'report/stage2-report',\r\n // component: Stage2ReportComponent,\r\n \r\n // },\r\n // {\r\n // path: 'report/stage3-report',\r\n // component: Stage3ReportComponent,\r\n \r\n // },\r\n // {\r\n // path: 'report/stage1-subsidy-report',\r\n // component: Stage1SubsidyReportComponent,\r\n \r\n // },\r\n // {\r\n // path: 'report/stage2-subsidy-report',\r\n // component: Stage2SubsidyReportComponent,\r\n \r\n // },\r\n // {\r\n // path: 'report/stage3-subsidy-report',\r\n // component: Stage3SubsidyReportComponent,\r\n \r\n // },\r\n {\r\n path: 'report/canal-and-tube-well-based-report',\r\n component: CanalAndTubeWellBasedReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/7500-demo',\r\n component: SeventyFiveHundredDemoComponent,\r\n \r\n },\r\n {\r\n path: 'report/atal-bhujal-user',\r\n component: AtalUserComponent,\r\n },\r\n {\r\n path: 'report/subsidy-wise-report',\r\n component: SubsidyWiseReportComponent\r\n },\r\n {\r\n path: 'all-subsidy-lot',\r\n component: AllSubsidyLotComponent,\r\n \r\n children: [\r\n // { path: '', redirectTo: 'mi-farmer-share-to-vendor/pdmc', pathMatch: 'full' },\r\n { path: 'mi-farmer-share-to-vendor/pdmc', component: FarmerShareToVendorPfmsReportComponent, pathMatch: 'full' },\r\n // { path: 'mi-farmer-share-to-farmer/aby', component: FarmerShareToFarmerPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-farmer/pdmc', component: SubsidyToFarmerPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-farmer/aby', component: SubsidyToFarmerAbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-vendor/pdmc', component: SubsidyToVendorPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-vendor/aby', component: SubsidyToVendorAbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-refund-to-farmer/pdmc', component: ReturnToFarmerPfmsReportComponent, pathMatch: 'full' },\r\n // { path: 'mi-refund-to-farmer/aby', component: RefundToFarmerAbyComponent, pathMatch: 'full' },\r\n\r\n // { path: 'mi-farmer-share-to-vendor/pfms', component: FarmerShareToVendorPfmsReportComponent, },\r\n // { path: 'mi-subsidy-to-farmer/pfms', component: SubsidyToFarmerPfmsReportComponent, },\r\n // { path: 'mi-subsidy-to-vendor/pfms', component: SubsidyToVendorPfmsReportComponent, },\r\n // { path: 'mi-refund-to-farmer/pfms', component: ReturnToFarmerPfmsReportComponent, },\r\n { path: 'import/pfms', component: ImportPfmsDataComponent, },\r\n \r\n { path: 'pond/tank-stage1/pdmc', component: TankStage1PfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage1/aby', component: TankStage1AbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage2/pdmc', component: TankStage2PfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage2/aby', component: TankStage2AbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage3/pdmc', component: TankStage3PfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage3/aby', component: TankStage3AbyPfmsReportComponent, pathMatch: 'full' },\r\n ],\r\n },\r\n {\r\n path: 'failed-mi-payment',\r\n component: FailedMiPaymentComponent,\r\n \r\n children: [\r\n // { path: '', redirectTo: 'mi-farmer-share-to-vendor/pdmc', pathMatch: 'full' },\r\n { path: 'fsv', component: FailedMiPaymentFsvComponent, pathMatch: 'full' },\r\n { path: 'stf', component: FailedMiPaymentStfComponent, pathMatch: 'full' },\r\n { path: 'stv', component: FailedMiPaymentStvComponent, pathMatch: 'full' },\r\n { path: 'rtf', component: FailedMiPaymentRtfComponent, pathMatch: 'full' },\r\n ],\r\n },\r\n // {\r\n // path: 'failed-pond-payment',\r\n // component: FailedPondPaymentComponent,\r\n \r\n // children: [\r\n // // { path: '', redirectTo: 'mi-farmer-share-to-vendor/pdmc', pathMatch: 'full' },\r\n // { path: 'stage1', component: FailedPondPaymentS1Component, pathMatch: 'full' },\r\n // { path: 'stage2', component: FailedPondPaymentS2Component, pathMatch: 'full' },\r\n // { path: 'stage3', component: FailedPondPaymentS3Component, pathMatch: 'full' },\r\n // ],\r\n // },\r\n {\r\n path: 'report/chalan-reconciliation-day-report',\r\n component: ChallanReconciliationDayReportComponent, \r\n },\r\n {\r\n path: 'mi-physical-location',\r\n component: MiPhysicalLocationComponent\r\n },\r\n {\r\n path: 'report/da-report',\r\n component: DaReportComponent,\r\n \r\n children: [\r\n // { path: '', redirectTo: 'mi', pathMatch: 'full' },\r\n {\r\n path: 'mi',\r\n component: MiDaReportComponent,\r\n },\r\n {\r\n path: 'pond',\r\n component: PondDaReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/pre-estimation',\r\n component: VendorPreEstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: PreEstimateMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: PreEstimateDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: PreEstimateUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: PreEstimateVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/consolidated-report',\r\n component: ConsolidatedReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report-new',\r\n component: ConsolidatedDashboardComponent, \r\n },\r\n {\r\n path: 'report/mi-total-app-report',\r\n component: MiConsolidatedTotalAppReportComponent,\r\n },\r\n {\r\n path: 'report/mi-consolidated-details',\r\n component: MiConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/pond-total-app-report',\r\n component: PondConsolidateReportComponent,\r\n },\r\n {\r\n path: 'report/pond-consolidated-details',\r\n component: PondConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report/:actionType/:finYear',\r\n component: MiConsolidatedCountWiseReportComponent,\r\n },\r\n {\r\n path: 'report/pond-report/:actionType/:finYear',\r\n component: PondCountWiseReportComponent, \r\n },\r\n {\r\n path: 'report/timeline',\r\n component: ApplicationTypeReportComponent\r\n },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path: 'report/inventory-report',\r\n component: InventoryReportComponent,\r\n\r\n },\r\n {\r\n path: 'report/print/:appId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n { \r\n path: 'physical-fin-target', \r\n component: PhysicalFinTargetComponent\r\n },\r\n { \r\n path: 'krishi-mapper', \r\n component: KrishiMapperComponent\r\n },\r\n // {\r\n // path: 'change-program',\r\n // component: ChangeProgramComponent\r\n // },\r\n {\r\n path: 'unhide-application',\r\n component: UnhideApplicationComponent\r\n },\r\n {\r\n path: 'change-details',\r\n component: ChangeVendorComponent\r\n },\r\n { \r\n path: 'canal', \r\n component: CanalTargetComponent \r\n },\r\n { \r\n path: 'stp', \r\n component: StpTargetComponent \r\n },\r\n { \r\n path: 'overflow-pond', \r\n component: OverFlowPondComponent \r\n },\r\n { \r\n path: 'crop-master', \r\n component: CropMasterStatusComponent \r\n },\r\n { \r\n path: 'mi-pond-target', \r\n component: MiPondTargetComponent \r\n },\r\n ],\r\n \r\n },\r\n {\r\n path: 'vendor',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [VendorGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'pre-estimate-survey', pathMatch: 'full' },\r\n // { path: 'dashboard', component: VendorComponent },\r\n \r\n // {\r\n // path: 'dashboard/dashoard-report-new',\r\n // component: VendorDashboardComponent,\r\n // },\r\n // {\r\n // path: 'print/:appId',\r\n // component: ViewFarmerApplicationComponent,\r\n // },\r\n // { path: 'dashboard', component: VendorComponent },\r\n { path: 'dashboard/dashoard-report-new', component: VendorDashboardComponent },\r\n { path: 'print/:appId', component: ViewFarmerApplicationComponent},\r\n { path: 'report/mi-consolidated-details', component: MiConsolidatedDetailReportComponent},\r\n \r\n {\r\n path: 'vendor-farmer-application',\r\n component: VendorFarmerApplicationComponent,\r\n },\r\n // {\r\n // path:'helpdesk',\r\n // component: HelpdeskComponent,\r\n // },\r\n // {\r\n // path: 'helpdesk/:appId',\r\n // component: ConsentFormComponent,\r\n // },\r\n {\r\n path: 'benificiary',\r\n component:BenificiaryComponent\r\n },\r\n {\r\n path: 'grievance',\r\n component: GrievanceComponent\r\n },\r\n // {\r\n // path: 'vendor-BOQ',\r\n // component: VendorBOQComponent,\r\n // },\r\n {\r\n path: 'vendor-BOQ',\r\n component: VendorBOQComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n {\r\n path: 'pending',\r\n component: VendorBoqPendingComponent,\r\n },\r\n {\r\n path: 'approved',\r\n component: VendorBoqApprovedComponent,\r\n },\r\n {\r\n path: 'current',\r\n component: VendorBoqCurrentComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'vendor-application',\r\n component: VendorApplicationComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n {\r\n path: 'pending',\r\n component: VendorAppPendingComponent,\r\n },\r\n {\r\n path: 'approved',\r\n component: VendorAppApprovedComponent,\r\n },\r\n {\r\n path: 'current',\r\n component: VendorAppCurrentComponent,\r\n },\r\n \r\n \r\n ],\r\n },\r\n {\r\n path: 'vendor-FullPaymentChallanDetails',\r\n component: FullPaymentchallanDetailsComponent,\r\n },\r\n // {\r\n // path: 'print/:appId/:vendorId/:programId',\r\n // component: VendorConsentFormComponent,\r\n // },\r\n {\r\n path: 'print/:appId',\r\n component: VendorConsentFormComponent,\r\n },\r\n {\r\n path: 'report/vendor-mi-area-report',\r\n component: VendorMiAreaReportComponent,\r\n\r\n },\r\n {\r\n path: 'report/vendor-subsidy-details',\r\n component: VendorSubsidyDetailsComponent,\r\n\r\n },\r\n {\r\n path: 'report/estimation',\r\n component: EstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'estimation-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'estimation-month-wise',\r\n component: EstimationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-district-wise',\r\n component: EstimationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-user-wise',\r\n component: EstimationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-vendor-wise',\r\n component: EstimationVendorWiseReportComponent,\r\n }\r\n ],\r\n },\r\n {\r\n path: 'pre-estimate-survey',\r\n component: PreEstimateSurveyComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n {\r\n path: 'pending',\r\n component: PreEstimateSurveyPendingComponent,\r\n },\r\n {\r\n path: 'approved',\r\n component: PreEstimateSurveyApprovedComponent,\r\n },\r\n {\r\n path: 'current',\r\n component: PreEstimateSurveyCurrentComponent,\r\n }, \r\n ],\r\n },\r\n {\r\n path:'mi-component-inventory-details',\r\n component: MiInventoryDetailsComponent\r\n },\r\n {\r\n path:'upload-gst-details',\r\n component: UploadGstComponent\r\n },\r\n {\r\n path:'report/challan-report-by-vendor',\r\n component: ChallanReportByVendorIdComponent\r\n },\r\n {\r\n path:'report/vendor-subsidy-detailsr',\r\n component: VendorSubsidyDetailsComponent\r\n },\r\n {\r\n path: 'vendor-all-applications',\r\n component: VendorAllApplicationsComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'je',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [JEGuardGuard],\r\n children: [\r\n // { path: '', redirectTo: 'dashboard', pathMatch: 'full' },\r\n // { path: 'dashboard', component: PondEstimateComponent },\r\n { path: '', redirectTo: 'physical-verification', pathMatch: 'full' },\r\n {\r\n path: 'physical-verification',\r\n component: MiPhysicalVerificationsComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: MiPhysicalVerificationPendingComponent },\r\n { path: 'current', component: MiPhysicalVerificationCurrentComponent },\r\n { path: 'approved', component: MiPhysicalVerficationCompletedComponent },\r\n ],\r\n },\r\n // {\r\n // path: 'physical-verification',\r\n // component: MiPhysicalVerificationsComponent,\r\n // },\r\n // {\r\n // path: 'physical-verification/:appId/:vendorId/:programId/:userId/:autoId',\r\n // component: ConsentFormComponent,\r\n // },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: ConsentFormComponent,\r\n }, \r\n {\r\n path: 'tank-stage1',\r\n component: TankStage1Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage1PendingComponent },\r\n { path: 'current', component: TankStage1CurrentComponent },\r\n { path: 'approved', component: TankStage1ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage2',\r\n component: TankStage2Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage2PendingComponent },\r\n { path: 'current', component: TankStage2CurrentComponent },\r\n { path: 'approved', component: TankStage2ApprovedComponent },\r\n ],\r\n },\r\n // {\r\n // path: 'tank-stage3',\r\n // component: TankStage3Component,\r\n // children: [\r\n // { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n // { path: 'pending', component: TankStage3PendingComponent },\r\n // { path: 'current', component: TankStage3CurrentComponent },\r\n // { path: 'approved', component: TankStage3ApprovedComponent },\r\n // ],\r\n // },\r\n {\r\n path: 'application',\r\n component: JeApplicationComponent,\r\n children: [\r\n { path: '', redirectTo: 'basic', pathMatch: 'full' },\r\n { path: 'basic', component: BasicComponent },\r\n { path: 'finance', component: FinanceComponent },\r\n { path: 'attachment', component: AttachmentComponent },\r\n ],\r\n },\r\n // {\r\n // path: 'print/:appId', component: VendorConsentFormComponent,\r\n // }\r\n {\r\n path: 'mi-source-location',\r\n component: MiSourceLocationComponent\r\n },\r\n {\r\n path: 'epc/work-pv', component: EpcWorkPvComponent\r\n },\r\n {\r\n path: 'uhbvn/farmer-request-noc', component: FarmerRequestForNocComponent\r\n },\r\n {\r\n path: 'uhbvn/uploaded-noc-survey', component: UploadedNocForSurveyComponent\r\n },\r\n {\r\n path: 'assignment-plan', component: JeSurveyActionInfoComponent\r\n },\r\n // {\r\n // path:'helpdesk',\r\n // component: HelpdeskComponent,\r\n // },\r\n // {\r\n // path: 'helpdesk/:appId',\r\n // component: ConsentFormComponent,\r\n // },\r\n ],\r\n },\r\n\r\n {\r\n path: 'cje',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [JEGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'physical-verification', pathMatch: 'full' },\r\n // { path: 'physical-verification', component: MiPhysicalVerificationsComponent },\r\n {\r\n path: 'physical-verification',\r\n component: MiPhysicalVerificationsComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: MiPhysicalVerificationPendingComponent },\r\n { path: 'current', component: MiPhysicalVerificationCurrentComponent },\r\n { path: 'approved', component: MiPhysicalVerficationCompletedComponent },\r\n ],\r\n },\r\n {\r\n path: 'print/:appId',\r\n component: ConsentFormComponent,\r\n }, \r\n {\r\n path: 'application',\r\n component: JeApplicationComponent,\r\n children: [\r\n { path: '', redirectTo: 'basic', pathMatch: 'full' },\r\n { path: 'basic', component: BasicComponent },\r\n { path: 'finance', component: FinanceComponent },\r\n { path: 'attachment', component: AttachmentComponent },\r\n ],\r\n },\r\n ],\r\n },\r\n\r\n {\r\n path: 'sdo',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [SdoGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'physical-verification', pathMatch: 'full' },\r\n\r\n // { path: 'physical-verification', component: MiPhysicalVerificationsComponent },\r\n {\r\n path: 'physical-verification',\r\n component: MiPhysicalVerificationsComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: MiPhysicalVerificationPendingComponent },\r\n { path: 'current', component: MiPhysicalVerificationCurrentComponent },\r\n { path: 'approved', component: MiPhysicalVerficationCompletedComponent },\r\n ],\r\n },\r\n // {\r\n // path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n // component: ConsentFormComponent,\r\n // },\r\n {\r\n path: 'print/:appId',\r\n component: ConsentFormComponent,\r\n }, \r\n {\r\n path: 'tank-stage1',\r\n component: TankStage1Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage1PendingComponent },\r\n { path: 'current', component: TankStage1CurrentComponent },\r\n { path: 'approved', component: TankStage1ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage2',\r\n component: TankStage2Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage2PendingComponent },\r\n { path: 'current', component: TankStage2CurrentComponent },\r\n { path: 'approved', component: TankStage2ApprovedComponent },\r\n ],\r\n },\r\n // {\r\n // path: 'tank-stage3',\r\n // component: TankStage3Component,\r\n // children: [\r\n // { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n // { path: 'pending', component: TankStage3PendingComponent },\r\n // { path: 'current', component: TankStage3CurrentComponent },\r\n // { path: 'approved', component: TankStage3ApprovedComponent },\r\n // ],\r\n // },\r\n // {\r\n // path: 'sdo/tank-stage3',\r\n // component: TankStage3Component,\r\n // },\r\n {\r\n path: 'application', component: JeApplicationComponent, children: [\r\n { path: '', redirectTo: 'basic', pathMatch: 'full' },\r\n { path: 'basic', component: BasicComponent },\r\n { path: 'finance', component: FinanceComponent },\r\n { path: 'attachment', component: AttachmentComponent },\r\n ]\r\n },\r\n\r\n {\r\n path: 'view-form',\r\n component: ViewFormComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'xen',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [XenGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'physical-verification', pathMatch: 'full' },\r\n\r\n // { path: 'physical-verification', component: MiPhysicalVerificationsComponent },\r\n {\r\n path: 'physical-verification',\r\n component: MiPhysicalVerificationsComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: MiPhysicalVerificationPendingComponent },\r\n { path: 'current', component: MiPhysicalVerificationCurrentComponent },\r\n { path: 'approved', component: MiPhysicalVerficationCompletedComponent },\r\n ],\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: ConsentFormComponent,\r\n }, \r\n {\r\n path: 'print/:appId',\r\n component: ConsentFormComponent,\r\n }, \r\n {\r\n path: 'tank-stage1',\r\n component: TankStage1Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage1PendingComponent },\r\n { path: 'current', component: TankStage1CurrentComponent },\r\n { path: 'approved', component: TankStage1ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage2',\r\n component: TankStage2Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage2PendingComponent },\r\n { path: 'current', component: TankStage2CurrentComponent },\r\n { path: 'approved', component: TankStage2ApprovedComponent },\r\n ],\r\n },\r\n // {\r\n // path: 'tank-stage3',\r\n // component: TankStage3Component,\r\n // children: [\r\n // { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n // { path: 'pending', component: TankStage3PendingComponent },\r\n // { path: 'current', component: TankStage3CurrentComponent },\r\n // { path: 'approved', component: TankStage3ApprovedComponent },\r\n // ],\r\n // },\r\n // {\r\n // path: 'xen/tank-stage3',\r\n // component: TankStage3Component,\r\n // },\r\n { path: 'vendor-data', component: VendorDataComponent },\r\n {\r\n path: 'application', component: JeApplicationComponent, children: [\r\n { path: '', redirectTo: 'basic', pathMatch: 'full' },\r\n { path: 'basic', component: BasicComponent },\r\n \r\n { path: 'finance', component: FinanceComponent },\r\n { path: 'attachment', component: AttachmentComponent },\r\n ]\r\n },\r\n {\r\n path: 'uhbvn', component: UhbvnComponent, children: [\r\n { path: '', redirectTo: 'upload-noc', pathMatch: 'full' },\r\n { path: 'upload-noc', component: UhbvnNocUploadComponent },\r\n { path: 'uploaded-noc-survey', component: UploadedNocForSurveyComponent },\r\n ]\r\n },\r\n {\r\n path: 'epc', component: EpcPaymentComponent, children: [\r\n { path: '', redirectTo: 'pv-done', pathMatch: 'full' },\r\n { path: 'pv-done', component: EpcPvDoneComponent },\r\n { path: 'pfms-payment-status', component: PfmsPaymentStatusComponent },\r\n { path: 'ready-for-payment', component: ReadyForPaymentComponent },\r\n ]\r\n },\r\n { \r\n path: 'uhbvn/print-noc', component: PrintNocComponent \r\n },\r\n { \r\n path: 'uhbvn/farmer-request-noc', component: FarmerRequestForNocComponent \r\n },\r\n {\r\n path: 'epc/work-approval', component: EpcWorkApprovalComponent\r\n },\r\n {\r\n path: 'view-form',\r\n component: ViewFormComponent,\r\n },\r\n // {\r\n // path:'helpdesk',\r\n // component: HelpdeskComponent,\r\n // },\r\n // {\r\n // path: 'helpdesk/:appId',\r\n // component: ConsentFormComponent,\r\n // },\r\n {\r\n path:'jeActivity',\r\n component: JeActivityComponent,\r\n },\r\n {\r\n path: 'report/app-verification',\r\n component: AppVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: MonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: DistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: UserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: VendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation',\r\n component: EstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'estimation-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'estimation-month-wise',\r\n component: EstimationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-district-wise',\r\n component: EstimationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-user-wise',\r\n component: EstimationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-vendor-wise',\r\n component: EstimationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/boq',\r\n component: BOQReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'boq-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'boq-month-wise',\r\n component: BoqMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-district-wise',\r\n component: BoqDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-mi-type',\r\n component: BoqMiTypeReportComponent,\r\n },\r\n {\r\n path: 'boq-vendor-wise',\r\n component: BoqVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation-verification',\r\n component: EstimationVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: EstVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: EstVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: EstVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: EstVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/challan',\r\n component: ChallanReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: ChallanDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: ChallanVendorWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: ChallanMonthWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/physical-verification',\r\n component: PhysicalVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: PhysicalVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: PhysicalVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: PhysicalVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: PhysicalVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/fsv',\r\n component: FsvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: FsvMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: FsvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: FsvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stv',\r\n component: StvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: StvMonthWiseComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: StvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stf',\r\n component: StfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: StfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: StfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/rtf',\r\n component: RtfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: RtfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: RtfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: RtfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/mi-verification-subsidy-report',\r\n component: MiVerificationSubsidyReportComponent, \r\n },\r\n {\r\n path: 'report/vendor-mi-area-report',\r\n component: VendorMiAreaReportComponent,\r\n\r\n },\r\n {\r\n path: 'report/tank-abstract-report',\r\n component: TankAbstractReportComponent, \r\n },\r\n {\r\n path: 'report/stage1-report',\r\n component: Stage1ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-report',\r\n component: Stage2ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-report',\r\n component: Stage3ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage1-subsidy-report',\r\n component: Stage1SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-subsidy-report',\r\n component: Stage2SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-subsidy-report',\r\n component: Stage3SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/canal-and-tube-well-based-report',\r\n component: CanalAndTubeWellBasedReportComponent,\r\n\r\n },\r\n {\r\n path: 'mi-physical-location',\r\n component: MiPhysicalLocationComponent\r\n },\r\n {\r\n path: 'report/7500-demo',\r\n component: SeventyFiveHundredDemoComponent,\r\n },\r\n {\r\n path: 'report/atal-bhujal-user',\r\n component: AtalUserComponent,\r\n },\r\n { \r\n path: 'report/estimation-details', \r\n component: EpcEstimationDetailsComponent\r\n }, \r\n ],\r\n },\r\n {\r\n path: 'cxen',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [XenGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'physical-verification', pathMatch: 'full' },\r\n\r\n // { path: 'physical-verification', component: MiPhysicalVerificationsComponent },\r\n {\r\n path: 'physical-verification',\r\n component: MiPhysicalVerificationsComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: MiPhysicalVerificationPendingComponent },\r\n { path: 'current', component: MiPhysicalVerificationCurrentComponent },\r\n { path: 'approved', component: MiPhysicalVerficationCompletedComponent },\r\n ],\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: ConsentFormComponent,\r\n }, \r\n {\r\n path: 'print/:appId',\r\n component: ConsentFormComponent,\r\n },\r\n {\r\n path: 'application', component: JeApplicationComponent, children: [\r\n { path: '', redirectTo: 'basic', pathMatch: 'full' },\r\n { path: 'basic', component: BasicComponent },\r\n { path: 'finance', component: FinanceComponent },\r\n { path: 'attachment', component: AttachmentComponent },\r\n ]\r\n },\r\n\r\n {\r\n path: 'view-form',\r\n component: ViewFormComponent,\r\n },\r\n ]\r\n },\r\n {\r\n path: 'admin',\r\n component: InnerPageLayoutComponent,\r\n children: [\r\n { path: '', redirectTo: 'physical-verification', pathMatch: 'full' },\r\n\r\n // { path: 'physical-verification', component: MiPhysicalVerificationsComponent },\r\n {\r\n path: 'physical-verification',\r\n component: MiPhysicalVerificationsComponent,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: MiPhysicalVerificationPendingComponent },\r\n { path: 'current', component: MiPhysicalVerificationCurrentComponent },\r\n { path: 'approved', component: MiPhysicalVerficationCompletedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage1',\r\n component: TankStage1Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage1PendingComponent },\r\n { path: 'current', component: TankStage1CurrentComponent },\r\n { path: 'approved', component: TankStage1ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage2',\r\n component: TankStage2Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage2PendingComponent },\r\n { path: 'current', component: TankStage2CurrentComponent },\r\n { path: 'approved', component: TankStage2ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage3',\r\n component: TankStage3Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage3PendingComponent },\r\n { path: 'current', component: TankStage3CurrentComponent },\r\n { path: 'approved', component: TankStage3ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path: 'year-wise-progress',\r\n component : YearWiseProgressComponent\r\n },\r\n {\r\n path: 'mi-area-covered',\r\n component : MiAreaCoveredComponent\r\n },\r\n {\r\n path: 'realtime-data-pdmc-scheme',\r\n component: RealtimeDataPdmcSchemeComponent\r\n },\r\n {\r\n path: 'application', component: JeApplicationComponent, children: [\r\n { path: '', redirectTo: 'basic', pathMatch: 'full' },\r\n { path: 'basic', component: BasicComponent },\r\n { path: 'finance', component: FinanceComponent },\r\n { path: 'attachment', component: AttachmentComponent },\r\n ]\r\n },\r\n\r\n {\r\n path: 'view-form',\r\n component: ViewFormComponent,\r\n },\r\n\r\n // {\r\n // path: 'sdo/tank-stage1',\r\n // component: TankStage1Component,\r\n // },\r\n\r\n // {\r\n // path: 'sdo/tank-stage2',\r\n // component: TankStage2Component,\r\n // },\r\n\r\n // {\r\n // path: 'sdo/tank-stage3',\r\n // component: TankStage3Component,\r\n // },\r\n {\r\n path: 'report/app-verification',\r\n component: AppVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: MonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: DistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: UserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: VendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation',\r\n component: EstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'estimation-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'estimation-month-wise',\r\n component: EstimationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-district-wise',\r\n component: EstimationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-user-wise',\r\n component: EstimationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-vendor-wise',\r\n component: EstimationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/boq',\r\n component: BOQReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'boq-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'boq-month-wise',\r\n component: BoqMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-district-wise',\r\n component: BoqDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-mi-type',\r\n component: BoqMiTypeReportComponent,\r\n },\r\n {\r\n path: 'boq-vendor-wise',\r\n component: BoqVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation-verification',\r\n component: EstimationVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: EstVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: EstVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: EstVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: EstVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/challan',\r\n component: ChallanReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: ChallanDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: ChallanVendorWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: ChallanMonthWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/physical-verification',\r\n component: PhysicalVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: PhysicalVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: PhysicalVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: PhysicalVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: PhysicalVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/fsv',\r\n component: FsvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: FsvMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: FsvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: FsvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stv',\r\n component: StvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: StvMonthWiseComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: StvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stf',\r\n component: StfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: StfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: StfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/rtf',\r\n component: RtfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: RtfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: RtfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: RtfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/mi-verification-subsidy-report',\r\n component: MiVerificationSubsidyReportComponent, \r\n },\r\n {\r\n path: 'report/vendor-mi-area-report',\r\n component: VendorMiAreaReportComponent,\r\n\r\n },\r\n {\r\n path: 'report/tank-abstract-report',\r\n component: TankAbstractReportComponent, \r\n },\r\n {\r\n path: 'report/stage1-report',\r\n component: Stage1ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-report',\r\n component: Stage2ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-report',\r\n component: Stage3ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage1-subsidy-report',\r\n component: Stage1SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-subsidy-report',\r\n component: Stage2SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-subsidy-report',\r\n component: Stage3SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/canal-and-tube-well-based-report',\r\n component: CanalAndTubeWellBasedReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/chalan-reconciliation-day-report',\r\n component: ChallanReconciliationDayReportComponent, \r\n },\r\n {\r\n path: 'report/7500-demo',\r\n component: SeventyFiveHundredDemoComponent,\r\n },\r\n {\r\n path: 'report/atal-bhujal-user',\r\n component: AtalUserComponent,\r\n },\r\n {\r\n path: 'report/pre-estimation',\r\n component: VendorPreEstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: PreEstimateMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: PreEstimateDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: PreEstimateUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: PreEstimateVendorWiseReportComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'report/consolidated-report-new',\r\n component: ConsolidatedDashboardComponent, \r\n },\r\n {\r\n path: 'report/consolidated-report',\r\n component: ConsolidatedReportComponent, \r\n },\r\n {\r\n path: 'report/mi-total-app-report',\r\n component: MiConsolidatedTotalAppReportComponent,\r\n },\r\n {\r\n path: 'report/mi-consolidated-details',\r\n component: MiConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/pond-total-app-report',\r\n component: PondConsolidateReportComponent,\r\n },\r\n {\r\n path: 'report/pond-consolidated-details',\r\n component: PondConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report/:actionType/:finYear',\r\n component: MiConsolidatedCountWiseReportComponent,\r\n },\r\n {\r\n path: 'report/pond-report/:actionType/:finYear',\r\n component: PondCountWiseReportComponent,\r\n \r\n \r\n },\r\n {\r\n path: 'report/timeline',\r\n component: ApplicationTypeReportComponent\r\n },\r\n {\r\n path: 'report/subsidy-wise-report',\r\n component: SubsidyWiseReportComponent\r\n },\r\n {\r\n path: 'report/print/:appId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path: 'report/ranking',\r\n component: RankingRatingReportComponent,\r\n },\r\n // {\r\n // path: 'target-system',\r\n // component: TargetSystemComponent\r\n // } \r\n {\r\n path: 'vendor-registration',\r\n component: VendorRegistrationsComponent\r\n },\r\n { path: 'vendor-data', \r\n component: VendorDataComponent \r\n },\r\n ],\r\n },\r\n\r\n {\r\n path: 'xen',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [XenGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'xen', pathMatch: 'full' },\r\n\r\n {\r\n path: 'xen',\r\n component: XenComponent,\r\n },\r\n \r\n {\r\n path: 'xen/xen-form',\r\n component: XenFormComponent,\r\n },\r\n\r\n {\r\n path: 'tank-stage1',\r\n component: TankStage1Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage1PendingComponent },\r\n { path: 'current', component: TankStage1CurrentComponent },\r\n { path: 'approved', component: TankStage1ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage2',\r\n component: TankStage2Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage2PendingComponent },\r\n { path: 'current', component: TankStage2CurrentComponent },\r\n { path: 'approved', component: TankStage2ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage3',\r\n component: TankStage3Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage3PendingComponent },\r\n { path: 'current', component: TankStage3CurrentComponent },\r\n { path: 'approved', component: TankStage3ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n\r\n // {\r\n // path: 'xen/tank-stage3',\r\n // component: TankStage3Component,\r\n // },\r\n ],\r\n },\r\n {\r\n path: 'helpdesk',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [HelpdeskGuard],\r\n children: [\r\n {\r\n path: '',\r\n redirectTo: 'home',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'home',\r\n component: HelpdeskComponent,\r\n },\r\n {\r\n path: 'home/:appId',\r\n component: ConsentFormComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'cao',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [CAOGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'mi-farmer-share-to-vendor/pdmc', pathMatch: 'full' },\r\n { path: 'mi-farmer-share-to-vendor/pdmc', component: FarmerShareToVendorPfmsReportComponent, pathMatch: 'full' },\r\n // { path: 'mi-farmer-share-to-farmer/aby', component: FarmerShareToFarmerPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-farmer/pdmc', component: SubsidyToFarmerPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-farmer/aby', component: SubsidyToFarmerAbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-vendor/pdmc', component: SubsidyToVendorPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-subsidy-to-vendor/aby', component: SubsidyToVendorAbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'mi-refund-to-farmer/pdmc', component: ReturnToFarmerPfmsReportComponent, pathMatch: 'full' },\r\n // { path: 'mi-refund-to-farmer/aby', component: RefundToFarmerAbyComponent, pathMatch: 'full' },\r\n { path: 'import/pfms', component: ImportPfmsDataComponent, pathMatch: 'full' },\r\n { path: 'import/bank-transaction', component: ImportBankDataComponent, pathMatch: 'full' },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path: 'pond/tank-stage1/pfms',\r\n component: TankStage1PfmsReportComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'pond/tank-stage1/aby',\r\n component: TankStage1AbyPfmsReportComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'pond/tank-stage2/pfms',\r\n component: TankStage2PfmsReportComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'pond/tank-stage2/aby',\r\n component: TankStage2AbyPfmsReportComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'pond/tank-stage3/pfms',\r\n component: TankStage3PfmsReportComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'pond/tank-stage3/aby',\r\n component: TankStage3AbyPfmsReportComponent,\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'report/chalan-reconciliation-day-report',\r\n component: ChallanReconciliationDayReportComponent, \r\n },\r\n {\r\n path: 'report/lot-wise-report',\r\n component: LotWiseReportComponent,\r\n \r\n children: [\r\n // { path: '', redirectTo: 'fsv', pathMatch: 'full' },\r\n { path: 'fsv', component: FsvLotReportComponent, pathMatch: 'full' },\r\n { path: 'stf', component: StfLotReportComponent, pathMatch: 'full' },\r\n { path: 'stv', component: StvLotReportComponent, pathMatch: 'full' },\r\n { path: 'rtf', component: RtfLotReportComponent, pathMatch: 'full' },\r\n { path: 'stage1', component: Stage1LotReportComponent, pathMatch: 'full' },\r\n { path: 'stage2', component: Stage2LotReportComponent, pathMatch: 'full' },\r\n { path: 'stage3', component: Stage3LotReportComponent, pathMatch: 'full' },\r\n ],\r\n },\r\n {\r\n path:'helpdesk',\r\n component: HelpdeskComponent,\r\n },\r\n {\r\n path: 'helpdesk/:appId',\r\n component: ConsentFormComponent,\r\n },\r\n {\r\n path: 'report/lot-report',\r\n component: LotReportComponent, \r\n },\r\n {\r\n path: 'report/lot-consolidated-report',\r\n component: LotConsolidatedReportComponent, \r\n },\r\n {\r\n path: 'report/consolidated-report',\r\n component: ConsolidatedReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report-new',\r\n component: ConsolidatedDashboardComponent,\r\n },\r\n {\r\n path: 'report/mi-total-app-report',\r\n component: MiConsolidatedTotalAppReportComponent,\r\n },\r\n {\r\n path: 'report/mi-consolidated-details',\r\n component: MiConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/pond-total-app-report',\r\n component: PondConsolidateReportComponent,\r\n },\r\n {\r\n path: 'report/pond-consolidated-details',\r\n component: PondConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report/:actionType/:finYear',\r\n component: MiConsolidatedCountWiseReportComponent,\r\n },\r\n {\r\n path: 'report/pond-report/:actionType/:finYear',\r\n component: PondCountWiseReportComponent, \r\n }, \r\n {\r\n path: 'report/financial-details',\r\n component: CaoFinancialDetailsComponent, \r\n },\r\n {\r\n path: 'report/subsidy-disbursed',\r\n component: SubsidyDistributionComponent, \r\n } \r\n ],\r\n },\r\n {\r\n path: 'dev',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [DevGuard],\r\n children: [\r\n { path: '', redirectTo: 'request-solar', pathMatch: 'full' },\r\n { path: 'request-solar', component: RequestSolarComponent, pathMatch: 'full' },\r\n { path: 'solar-procedure', component: SolarProcedureComponent, pathMatch: 'full' },\r\n { path: 'solar-flow', component: AddToSolarFlowComponent, pathMatch: 'full' },\r\n { path: 'modify-solar', component: ModifySolarComponent, pathMatch: 'full' },\r\n { path: 'get-solar', component: GetSolarComponent, pathMatch: 'full' },\r\n { path: 'solar-list', component: SolarListComponent, pathMatch: 'full' },\r\n { path: 'error-tracking', component: ErrorTrackingComponent, pathMatch: 'full' },\r\n ]\r\n },\r\n {\r\n path: 'subdev',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [SubDevGuard],\r\n children: [\r\n // { path: '', redirectTo: 'request-solar', pathMatch: 'full' },\r\n { path: '', redirectTo: 'error-tracking', pathMatch: 'full' },\r\n // { path: 'request-solar', component: RequestSolarComponent, pathMatch: 'full' },\r\n // { path: 'solar-flow', component: AddToSolarFlowComponent, pathMatch: 'full' },\r\n // { path: 'get-solar', component: GetSolarComponent, pathMatch: 'full' },\r\n { path: 'error-tracking', component: ErrorTrackingComponent, pathMatch: 'full' },\r\n ]\r\n },\r\n {\r\n path: 'ew-je',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [JEGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'farmer-applications', pathMatch: 'full' },\r\n {\r\n path: 'farmer-applications',\r\n component: FarmerApplicationVerificationComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n {\r\n path: 'pending',\r\n component: FarmerApplicationVerificationPendingComponent,\r\n },\r\n {\r\n path: 'current',\r\n component: FarmerApplicationVerificationCurrentComponent,\r\n },\r\n {\r\n path: 'approved',\r\n component: FarmerApplicationVerificationCompletedComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage1',\r\n component: TankStage1Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage1PendingComponent },\r\n { path: 'current', component: TankStage1CurrentComponent },\r\n { path: 'approved', component: TankStage1ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage2',\r\n component: TankStage2Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage2PendingComponent },\r\n { path: 'current', component: TankStage2CurrentComponent },\r\n { path: 'approved', component: TankStage2ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage3',\r\n component: TankStage3Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage3PendingComponent },\r\n { path: 'current', component: TankStage3CurrentComponent },\r\n { path: 'approved', component: TankStage3ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'report/stage1-report',\r\n component: Stage1ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-report',\r\n component: Stage2ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-report',\r\n component: Stage3ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage1-subsidy-report',\r\n component: Stage1SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-subsidy-report',\r\n component: Stage2SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-subsidy-report',\r\n component: Stage3SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path: 'appliaction-approval/print/:appId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path:'helpdesk',\r\n component: HelpdeskComponent,\r\n },\r\n {\r\n path: 'helpdesk/:appId',\r\n component: ConsentFormComponent,\r\n },\r\n ]\r\n },\r\n {\r\n path: 'ew-department',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [DepartmentGuardGuard],\r\n children: [\r\n { path: '', redirectTo: 'farmer-applications', pathMatch: 'full' },\r\n {\r\n path: 'farmer-applications',\r\n component: FarmerApplicationVerificationComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n {\r\n path: 'pending',\r\n component: FarmerApplicationVerificationPendingComponent,\r\n },\r\n {\r\n path: 'current',\r\n component: FarmerApplicationVerificationCurrentComponent,\r\n },\r\n {\r\n path: 'approved',\r\n component: FarmerApplicationVerificationCompletedComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage1',\r\n component: TankStage1Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage1PendingComponent },\r\n { path: 'current', component: TankStage1CurrentComponent },\r\n { path: 'approved', component: TankStage1ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage2',\r\n component: TankStage2Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage2PendingComponent },\r\n { path: 'current', component: TankStage2CurrentComponent },\r\n { path: 'approved', component: TankStage2ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path: 'tank-stage3',\r\n component: TankStage3Component,\r\n children: [\r\n { path: '', redirectTo: 'pending', pathMatch: 'full' },\r\n { path: 'pending', component: TankStage3PendingComponent },\r\n { path: 'current', component: TankStage3CurrentComponent },\r\n { path: 'approved', component: TankStage3ApprovedComponent },\r\n ],\r\n },\r\n {\r\n path:'pond/tankstage-1',\r\n component: Tankstagesurvey1Component,\r\n },\r\n {\r\n path:'pond/tankstage-2',\r\n component: Tankstagesurvey2Component,\r\n },\r\n {\r\n path:'pond/tankstage-3',\r\n component: Tankstagesurvey3Component,\r\n },\r\n {\r\n path: 'all-subsidy-lot',\r\n component: AllSubsidyLotComponent,\r\n \r\n children: [\r\n \r\n // { path: 'mi-farmer-share-to-vendor/pfms', component: FarmerShareToVendorPfmsReportComponent, },\r\n // { path: 'mi-subsidy-to-farmer/pfms', component: SubsidyToFarmerPfmsReportComponent, },\r\n // { path: 'mi-subsidy-to-vendor/pfms', component: SubsidyToVendorPfmsReportComponent, },\r\n // { path: 'mi-refund-to-farmer/pfms', component: ReturnToFarmerPfmsReportComponent, },\r\n { path: 'import/pfms', component: ImportPfmsDataComponent, },\r\n \r\n { path: 'pond/tank-stage1/pdmc', component: TankStage1PfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage1/aby', component: TankStage1AbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage2/pdmc', component: TankStage2PfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage2/aby', component: TankStage2AbyPfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage3/pdmc', component: TankStage3PfmsReportComponent, pathMatch: 'full' },\r\n { path: 'pond/tank-stage3/aby', component: TankStage3AbyPfmsReportComponent, pathMatch: 'full' },\r\n ],\r\n },\r\n {\r\n path: 'failed-pond-payment',\r\n component: FailedPondPaymentComponent,\r\n \r\n children: [\r\n // { path: '', redirectTo: 'mi-farmer-share-to-vendor/pdmc', pathMatch: 'full' },\r\n { path: 'stage1', component: FailedPondPaymentS1Component, pathMatch: 'full' },\r\n { path: 'stage2', component: FailedPondPaymentS2Component, pathMatch: 'full' },\r\n { path: 'stage3', component: FailedPondPaymentS3Component, pathMatch: 'full' },\r\n ],\r\n },\r\n {\r\n path: 'report/timeline',\r\n component: ApplicationTypeReportComponent\r\n },\r\n {\r\n path: 'report/consolidated-report',\r\n component: ConsolidatedReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report-new',\r\n component: ConsolidatedDashboardComponent, \r\n },\r\n {\r\n path: 'report/mi-total-app-report',\r\n component: MiConsolidatedTotalAppReportComponent,\r\n },\r\n {\r\n path: 'report/mi-consolidated-details',\r\n component: MiConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/pond-total-app-report',\r\n component: PondConsolidateReportComponent,\r\n },\r\n {\r\n path: 'report/pond-consolidated-details',\r\n component: PondConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/app-verification',\r\n component: AppVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: MonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: DistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: UserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: VendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation',\r\n component: EstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'estimation-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'estimation-month-wise',\r\n component: EstimationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-district-wise',\r\n component: EstimationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-user-wise',\r\n component: EstimationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'estimation-vendor-wise',\r\n component: EstimationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/boq',\r\n component: BOQReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'boq-month-wise', pathMatch: 'full' },\r\n {\r\n path: 'boq-month-wise',\r\n component: BoqMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-district-wise',\r\n component: BoqDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'boq-mi-type',\r\n component: BoqMiTypeReportComponent,\r\n },\r\n {\r\n path: 'boq-vendor-wise',\r\n component: BoqVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/estimation-verification',\r\n component: EstimationVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: EstVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: EstVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: EstVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: EstVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/challan',\r\n component: ChallanReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: ChallanDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: ChallanVendorWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: ChallanMonthWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/physical-verification',\r\n component: PhysicalVerificationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: PhysicalVerificationMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: PhysicalVerificationDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: PhysicalVerificationUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: PhysicalVerificationVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/fsv',\r\n component: FsvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: FsvMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: FsvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: FsvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stv',\r\n component: StvReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: StvMonthWiseComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: StvDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StvVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/stf',\r\n component: StfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: StfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: StfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: StfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/rtf',\r\n component: RtfReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'district-wise',\r\n component: RtfDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'month-wise',\r\n component: RtfMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: RtfVendorWiseReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/mi-verification-subsidy-report',\r\n component: MiVerificationSubsidyReportComponent, \r\n },\r\n {\r\n path: 'report/vendor-mi-area-report',\r\n component: VendorMiAreaReportComponent,\r\n\r\n },\r\n {\r\n path: 'report/tank-abstract-report',\r\n component: TankAbstractReportComponent, \r\n },\r\n {\r\n path: 'report/stage1-report',\r\n component: Stage1ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-report',\r\n component: Stage2ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-report',\r\n component: Stage3ReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage1-subsidy-report',\r\n component: Stage1SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage2-subsidy-report',\r\n component: Stage2SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/stage3-subsidy-report',\r\n component: Stage3SubsidyReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/canal-and-tube-well-based-report',\r\n component: CanalAndTubeWellBasedReportComponent,\r\n \r\n },\r\n {\r\n path: 'report/chalan-reconciliation-day-report',\r\n component: ChallanReconciliationDayReportComponent, \r\n },\r\n {\r\n path: 'report/7500-demo',\r\n component: SeventyFiveHundredDemoComponent,\r\n },\r\n {\r\n path: 'report/atal-bhujal-user',\r\n component: AtalUserComponent,\r\n },\r\n {\r\n path: 'report/pre-estimation',\r\n component: VendorPreEstimationReportComponent,\r\n \r\n children: [\r\n { path: '', redirectTo: 'month-wise', pathMatch: 'full' },\r\n {\r\n path: 'month-wise',\r\n component: PreEstimateMonthWiseReportComponent,\r\n },\r\n {\r\n path: 'district-wise',\r\n component: PreEstimateDistrictWiseReportComponent,\r\n },\r\n {\r\n path: 'user-wise',\r\n component: PreEstimateUserWiseReportComponent,\r\n },\r\n {\r\n path: 'vendor-wise',\r\n component: PreEstimateVendorWiseReportComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: 'report/da-report',\r\n component: DaReportComponent,\r\n children: [\r\n {\r\n path: 'mi',\r\n component: MiDaReportComponent,\r\n },\r\n {\r\n path: 'pond',\r\n component: PondDaReportComponent,\r\n },\r\n \r\n ],\r\n },\r\n {\r\n path: 'report/inventory-report',\r\n component: InventoryReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report',\r\n component: ConsolidatedReportComponent,\r\n },\r\n {\r\n path: 'report/mi-total-app-report',\r\n component: MiConsolidatedTotalAppReportComponent,\r\n },\r\n {\r\n path: 'report/mi-consolidated-details',\r\n component: MiConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/pond-total-app-report',\r\n component: PondConsolidateReportComponent,\r\n },\r\n {\r\n path: 'report/pond-consolidated-details',\r\n component: PondConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report/:actionType/:finYear',\r\n component: MiConsolidatedCountWiseReportComponent,\r\n },\r\n {\r\n path: 'report/pond-report/:actionType/:finyear',\r\n component: PondCountWiseReportComponent, \r\n },\r\n {\r\n path: 'print/:appId',\r\n component: ViewFarmerApplicationComponent,\r\n },\r\n {\r\n path: 'print/:appId/:vendorId/:programId/:userId/:autoId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path: 'appliaction-approval/print/:appId',\r\n component: DepartmentConsentFormComponent,\r\n },\r\n {\r\n path:'helpdesk',\r\n component: HelpdeskComponent,\r\n },\r\n {\r\n path: 'helpdesk/:appId',\r\n component: ConsentFormComponent,\r\n },\r\n ]\r\n },\r\n {\r\n path: 'user-action',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [UserActionGuard],\r\n children: [\r\n { path: '', redirectTo: 'canal', pathMatch: 'full' },\r\n { path: 'canal', component: CanalTargetComponent, pathMatch: 'full' },\r\n { path: 'stp', component: StpTargetComponent, pathMatch: 'full' },\r\n { path: 'overflow-pond', component: OverFlowPondComponent, pathMatch: 'full' },\r\n { path: 'crop-master', component: CropMasterStatusComponent, pathMatch: 'full' },\r\n ]\r\n },\r\n {\r\n path: 'contractor',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [ContractorGuard],\r\n children: [\r\n { path: '', redirectTo: 'dashboard', pathMatch: 'full' },\r\n { path: 'dashboard', component: ContractorDashboardComponent, pathMatch: 'full' },\r\n { path: 'new-work', component: NewWorkComponent, pathMatch: 'full' },\r\n { path: 'update-work', component: UpdateWorkComponent, pathMatch: 'full' },\r\n { path: 'report/estimation-details', component: EpcEstimationDetailsComponent, pathMatch: 'full' },\r\n ]\r\n },\r\n {\r\n path: 'ptg-dev-team',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [DevTeamGuard],\r\n children: [\r\n { path: '', redirectTo: 'unhide-application', pathMatch: 'full' },\r\n {\r\n path: 'unhide-application',\r\n component: UnhideApplicationComponent\r\n },\r\n {\r\n path: 'change-details',\r\n component: ChangeVendorComponent\r\n },\r\n ]\r\n },\r\n {\r\n path: 'grievance-handler',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [GrievanceHandlerGuard],\r\n children: [\r\n { path: '', redirectTo: 'grievance-handler', pathMatch: 'full' },\r\n {\r\n path: 'grievance-handler',\r\n component: GrievanceHandlerComponent\r\n },\r\n ]\r\n },\r\n {\r\n path: 'webadmin',\r\n component: InnerPageLayoutComponent,\r\n canActivateChild: [WebadminGuard],\r\n children: [\r\n { path: '', redirectTo: 'report/consolidated-report-new', pathMatch: 'full' },\r\n {\r\n path: 'report/consolidated-report-new',\r\n component: ConsolidatedDashboardComponent, \r\n },\r\n {\r\n path: 'report/consolidated-report',\r\n component: ConsolidatedReportComponent, \r\n },\r\n {\r\n path: 'report/mi-total-app-report',\r\n component: MiConsolidatedTotalAppReportComponent,\r\n },\r\n {\r\n path: 'report/mi-consolidated-details',\r\n component: MiConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/pond-total-app-report',\r\n component: PondConsolidateReportComponent,\r\n },\r\n {\r\n path: 'report/pond-consolidated-details',\r\n component: PondConsolidatedDetailReportComponent,\r\n },\r\n {\r\n path: 'report/consolidated-report/:actionType/:finYear',\r\n component: MiConsolidatedCountWiseReportComponent,\r\n },\r\n {\r\n path: 'report/pond-report/:actionType/:finYear',\r\n component: PondCountWiseReportComponent,\r\n },\r\n {\r\n path: 'unhide-application',\r\n component: UnhideApplicationComponent\r\n },\r\n {\r\n path: 'change-details',\r\n component: ChangeVendorComponent\r\n },\r\n {\r\n path: 'report/financial-details',\r\n component: CaoFinancialDetailsComponent, \r\n },\r\n {\r\n path: 'report/subsidy-disbursed',\r\n component: SubsidyDistributionComponent, \r\n },\r\n {\r\n path:'helpdesk',\r\n component: HelpdeskComponent,\r\n },\r\n {\r\n path: 'helpdesk/:appId',\r\n component: ConsentFormComponent,\r\n },\r\n {\r\n path: 'update-jamabandi',\r\n component: UpdateJamabandiComponent,\r\n },\r\n ]\r\n },\r\n \r\n \r\n // {\r\n // path: 'geo-location',\r\n // component: GeolocationComponent\r\n // },\r\n {\r\n path: \"\", redirectTo: \"/home\", pathMatch: \"full\"\r\n },\r\n {\r\n path: \"**\", redirectTo: \"/home\", pathMatch: \"full\"\r\n }\r\n \r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule { }\r\n","import { AppLoaderService } from './services/app-loader/app-loader.service';\r\nimport { ChangeDetectorRef, Component } from '@angular/core';\r\nimport { PrimeNGConfig } from 'primeng/api';\r\nimport { AuthenticationService } from './services/authentication.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport eng from \"../assets/i18n/en.json\";\r\nimport hnd from \"../assets/i18n/hd.json\";\r\nimport { CryptoJsService } from './services/crypto-js.service';\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent {\r\n title = 'MICADA';\r\n menuMode = 'static';\r\n isLoading: boolean;\r\n\r\n constructor(\r\n private primengConfig: PrimeNGConfig, \r\n private loader: AppLoaderService, \r\n private cdref: ChangeDetectorRef, \r\n private authService: AuthenticationService, \r\n private translate: TranslateService,\r\n private cryptoJsService: CryptoJsService\r\n ) {\r\n translate.setTranslation('hd',hnd,false)\r\n translate.setTranslation('en',eng,false)\r\n if(localStorage.getItem('lang')) {\r\n const selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n translate.use(selectedLang.code)\r\n if(selectedLang.code==\"hd\"){\r\n translate.setTranslation('hd',hnd,false)\r\n } else {\r\n translate.setTranslation('en',eng,false)\r\n }\r\n\r\n \r\n } else {\r\n translate.setDefaultLang('en');\r\n translate.use('en')\r\n translate.setTranslation('en',eng,false)\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n // if(!sessionStorage.getItem('token')){\r\n // this.getInitialToken();\r\n // }\r\n // this.getInitialToken();\r\n this.loader.isLoading$.subscribe(data => {\r\n this.isLoading = data;\r\n })\r\n this.primengConfig.ripple = true;\r\n document.documentElement.style.fontSize = '14px';\r\n }\r\n\r\n ngAfterContentChecked() {\r\n this.cdref.detectChanges();\r\n }\r\n\r\n // getInitialToken(){\r\n // this.authService.getInitialToken().subscribe((response:any) => {\r\n // if (response){\r\n // sessionStorage.setItem(\"token\", response.data)\r\n\r\n // // sessionStorage.setItem('intelli_Metabase_Key', token?.intelli_Metabase_Key)\r\n // }\r\n // })\r\n // }\r\n}\r\n","\r\n\r\n","import { ApiLoaderInterceptor } from './Interceptor/api-loader.interceptor';\r\nimport { HttpClient, HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { HomeFooterComponent } from './components/layouts/home-footer/home-footer.component';\r\nimport { HomeHeaderComponent } from './components/layouts/home-header/home-header.component';\r\nimport { HomeNavComponent } from './components/layouts/home-nav/home-nav.component';\r\nimport { HomePageLayoutComponent } from './components/layouts/home-page-layout/home-page-layout.component';\r\nimport { InnerFooterComponent } from './components/layouts/inner-footer/inner-footer.component';\r\nimport { InnerHeaderComponent } from './components/layouts/inner-header/inner-header.component';\r\nimport { InnerNavComponent } from './components/layouts/inner-nav/inner-nav.component';\r\nimport { InnerPageLayoutComponent } from './components/layouts/inner-page-layout/inner-page-layout.component';\r\nimport { BankDetailsComponent } from './components/registration/bank-details/bank-details.component';\r\nimport { PersonalDetailsComponent } from './components/registration/personal-details/personal-details.component';\r\nimport { ErrorInterceptor } from './Interceptor/auth/error.interceptor';\r\nimport { JwtInterceptor } from './Interceptor/auth/jwt.interceptor';\r\nimport { FarmerLandDetailComponent } from './components/registration/farmer-land-detail/farmer-land-detail.component';\r\nimport { OnFarmMiComponent } from './components/registration/on-farm-mi/on-farm-mi.component';\r\nimport { MenuService } from './services/app.menu.service';\r\n\r\nimport { MessageService } from 'primeng/api';\r\nimport { ConfirmationService } from 'primeng/api';\r\nimport { SharedModule } from 'primeng/api';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { AccordionModule } from 'primeng/accordion';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { AvatarGroupModule } from 'primeng/avatargroup';\r\nimport { BadgeModule } from 'primeng/badge';\r\nimport { BreadcrumbModule } from 'primeng/breadcrumb';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { CardModule } from 'primeng/card';\r\nimport { CarouselModule } from 'primeng/carousel';\r\nimport { CascadeSelectModule } from 'primeng/cascadeselect';\r\nimport { ChartModule } from 'primeng/chart';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { ChipModule } from 'primeng/chip';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { CodeHighlighterModule } from 'primeng/codehighlighter';\r\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\r\nimport { ConfirmPopupModule } from 'primeng/confirmpopup';\r\nimport { ColorPickerModule } from 'primeng/colorpicker';\r\nimport { ContextMenuModule } from 'primeng/contextmenu';\r\nimport { DataViewModule } from 'primeng/dataview';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { FieldsetModule } from 'primeng/fieldset';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\nimport { GalleriaModule } from 'primeng/galleria';\r\nimport { ImageModule } from 'primeng/image';\r\nimport { InplaceModule } from 'primeng/inplace';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { InputMaskModule } from 'primeng/inputmask';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { KnobModule } from 'primeng/knob';\r\nimport { LightboxModule } from 'primeng/lightbox';\r\nimport { ListboxModule } from 'primeng/listbox';\r\nimport { MegaMenuModule } from 'primeng/megamenu';\r\nimport { MenuModule } from 'primeng/menu';\r\nimport { MenubarModule } from 'primeng/menubar';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { OrderListModule } from 'primeng/orderlist';\r\nimport { OrganizationChartModule } from 'primeng/organizationchart';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { PaginatorModule } from 'primeng/paginator';\r\nimport { PanelModule } from 'primeng/panel';\r\nimport { PanelMenuModule } from 'primeng/panelmenu';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { PickListModule } from 'primeng/picklist';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\nimport { RatingModule } from 'primeng/rating';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { ScrollPanelModule } from 'primeng/scrollpanel';\r\nimport { ScrollTopModule } from 'primeng/scrolltop';\r\nimport { SelectButtonModule } from 'primeng/selectbutton';\r\nimport { SidebarModule } from 'primeng/sidebar';\r\nimport { SkeletonModule } from 'primeng/skeleton';\r\nimport { SlideMenuModule } from 'primeng/slidemenu';\r\nimport { SliderModule } from 'primeng/slider';\r\nimport { SplitButtonModule } from 'primeng/splitbutton';\r\nimport { SplitterModule } from 'primeng/splitter';\r\nimport { StepsModule } from 'primeng/steps';\r\nimport { TabMenuModule } from 'primeng/tabmenu';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { TerminalModule } from 'primeng/terminal';\r\nimport { TieredMenuModule } from 'primeng/tieredmenu';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { ToggleButtonModule } from 'primeng/togglebutton';\r\nimport { ToolbarModule } from 'primeng/toolbar';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { TreeModule } from 'primeng/tree';\r\nimport { TreeSelectModule } from 'primeng/treeselect';\r\nimport { TreeTableModule } from 'primeng/treetable';\r\nimport { VirtualScrollerModule } from 'primeng/virtualscroller';\r\nimport { ConfigService } from './services/app.config.service';\r\nimport { AppMenuComponent } from './components/layouts/inner-nav/app.menu.component';\r\nimport { AppMenuitemComponent } from './components/layouts/inner-nav/app.menuitem.component';\r\nimport { AppTopBarComponent } from './components/layouts/inner-page-layout/app.topbar.component';\r\nimport { FarmerLandDetailService } from './services/farmer-land-detail.service';\r\nimport { TokenService } from './services/common/token.service';\r\nimport { OnFarmMiService } from './services/on-farm-mi.service';\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { ProgressBarModule } from 'primeng/progressbar';\r\nimport { KeyFilterModule } from 'primeng/keyfilter';\r\nimport { PhoneLoginComponent } from './components/phone-login/phone-login.component';\r\nimport { FarmersApplicationComponent } from './components/application/farmers-application/farmers-application.component';\r\nimport { ConsentFormComponent } from './components/application/consent-form/consent-form.component';\r\n\r\nimport { DashboardComponent } from './components/dashboard/dashboard.component';\r\nimport { DepartmentConsentFormComponent } from './components/department/department-consent-form/department-consent-form.component';\r\nimport { VendorComponent } from './components/vendor/vendor.component';\r\nimport { VendorConsentFormComponent } from './components/vendor/vendor-consent-form/vendor-consent-form.component';\r\nimport { FarmerDashboardComponent } from './components/farmer-dashboard/farmer-dashboard.component';\r\nimport { PondProgressIntimationComponent } from './components/pond-progress-intimation/pond-progress-intimation.component';\r\nimport { VendorBOQComponent } from './components/vendor/vendor-boq/vendor-boq.component';\r\nimport { MiChallanComponent } from './components/challan/mi-challan/mi-challan.component';\r\nimport { SolarChallanComponent } from './components/challan/solar-challan/solar-challan.component';\r\nimport { FarmerShareComponent } from './components/challan/mi-challan/farmer-share/farmer-share.component';\r\nimport { FullPaymentComponent } from './components/challan/mi-challan/full-payment/full-payment.component';\r\nimport { VendorMiEstimationConsentFormComponent } from './components/department/vendor-mi-estimation-consent-form/vendor-mi-estimation-consent-form.component';\r\nimport { PondEstimateComponent } from './components/pond-estimate/pond-estimate.component';\r\nimport { AppLoaderComponent } from './services/app-loader/app-loader.component';\r\nimport { SanctionLetterComponent } from './components/challan/mi-challan/sanction-letter/sanction-letter.component';\r\nimport { FarmerApplicationVerificationComponent } from './components/department/farmer-application-verification/farmer-application-verification.component';\r\nimport { MiVendorApplicationVerificationComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification.component';\r\nimport { WorkFlowAllStatusComponent } from './components/department/farmer-application-verification/work-flow-all-status/work-flow-all-status.component';\r\nimport { LandingComponent } from './components/landing/landing.component';\r\nimport { ActivitiesComponent } from './components/activities/activities.component';\r\nimport { OrganizationalSetupComponent } from './components/organizational-setup/organizational-setup.component';\r\nimport { StatisticsComponent } from './components/statistics/statistics.component';\r\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\r\nimport { FullPaymentchallanDetailsComponent } from './components/vendor/full-paymentchallan-details/full-paymentchallan-details.component';\r\nimport { ReportSummaryComponent } from './components/department/report-summary/report-summary.component';\r\nimport { JeApplicationComponent } from './components/je/je-application/je-application.component';\r\nimport { BasicComponent } from './components/je/basic/basic.component';\r\nimport { FinanceComponent } from './components/je/finance/finance.component';\r\nimport { AttachmentComponent } from './components/je/attachment/attachment.component';\r\nimport { JeComponent } from './components/je/je.component';\r\nimport { MiPhysicalVerificationsComponent } from './components/je/mi-physical-verifications/mi-physical-verifications.component';\r\nimport { VendorApplicationComponent } from './components/vendor/vendor-application/vendor-application.component';\r\nimport { PrintFarmersChallanComponent } from './components/department/print-farmers-challan/print-farmers-challan.component';\r\nimport { CameraComponent } from './components/camera/camera.component';\r\nimport { WebcamModule } from 'ngx-webcam';\r\nimport { HelpdeskComponent } from './components/helpdesk/helpdesk.component';\r\nimport { UpdateMiComponentCmlValidityComponent } from './components/department/update-mi-component-cml-validity/update-mi-component-cml-validity.component';\r\nimport { ChangeRequestComponent } from './components/farmer/change-request/change-request.component';\r\nimport { SdoComponent } from './components/sdo/sdo.component';\r\nimport { ViewFormComponent } from './components/sdo/view-form/view-form.component';\r\nimport { FarmerAppChangeRequestComponent } from './components/department/farmer-app-change-request/farmer-app-change-request.component';\r\nimport { NewInitiativesComponent } from './components/new-initiatives/new-initiatives.component';\r\nimport { RtiComponent } from './components/rti/rti.component';\r\nimport { MiSurveyComponent } from './components/department/subsidy-lot/mi-survey/mi-survey.component';\r\nimport { MiSurveySubsidyDisbursementComponent } from './components/cao/mi-survey-subsidy-disbursement/mi-survey-subsidy-disbursement.component';\r\nimport { CaoComponent } from './components/cao/cao.component';\r\nimport { ApproveFarmersChallanComponent } from './components/department/approve-farmers-challan/approve-farmers-challan.component';\r\nimport { ViewFarmerApplicationComponent } from './components/je/view-farmer-application/view-farmer-application.component';\r\nimport { FarmerShareToVendorComponent } from './components/department/subsidy-lot/farmer-share-to-vendor/farmer-share-to-vendor.component';\r\nimport { SubsidyToVendorComponent } from './components/department/subsidy-lot/subsidy-to-vendor/subsidy-to-vendor.component';\r\nimport { SubsidyToFarmerComponent } from './components/department/subsidy-lot/subsidy-to-farmer/subsidy-to-farmer.component';\r\nimport { RefundToFarmerComponent } from './components/department/subsidy-lot/refund-to-farmer/refund-to-farmer.component';\r\nimport { FarmerShareToVendorPfmsReportComponent } from './components/cao/farmer-share-to-vendor-pfms-report/farmer-share-to-vendor-pfms-report.component';\r\nimport { SubsidyToVendorPfmsReportComponent } from './components/cao/subsidy-to-vendor-pfms-report/subsidy-to-vendor-pfms-report.component';\r\nimport { SubsidyToFarmerPfmsReportComponent } from './components/cao/subsidy-to-farmer-pfms-report/subsidy-to-farmer-pfms-report.component';\r\nimport { ReturnToFarmerPfmsReportComponent } from './components/cao/return-to-farmer-pfms-report/return-to-farmer-pfms-report.component';\r\nimport { XenComponent } from './components/xen/xen.component';\r\nimport { XenFormComponent } from './components/xen/xen-form/xen-form.component';\r\nimport { TankStage1Component } from './components/tank-stage1/tank-stage1.component';\r\nimport { TankStage2Component } from './components/tank-stage2/tank-stage2.component';\r\nimport { TankStage3Component } from './components/tank-stage3/tank-stage3.component';\r\nimport { EvaluationStudyComponent } from './components/evaluation-study/evaluation-study.component';\r\nimport { AchievementsComponent } from './components/achievements/achievements.component';\r\nimport { AnnualPlanComponent } from './components/annual-plan/annual-plan.component';\r\nimport { ProjectComponent } from './components/project/project.component';\r\nimport { MicroIrrigationComponent } from './components/micro-irrigation/micro-irrigation.component';\r\nimport { ImportPfmsDataComponent } from './components/cao/import-pfms-data/import-pfms-data.component';\r\nimport { Tankstagesurvey2Component } from './components/department/subsidy-lot/tankstagesurvey2/tankstagesurvey2.component';\r\nimport { Tankstagesurvey3Component } from './components/department/subsidy-lot/tankstagesurvey3/tankstagesurvey3.component';\r\nimport { Tankstagesurvey1Component } from './components/department/subsidy-lot/tankstagesurvey1/tankstagesurvey1.component';\r\nimport { TankStage1PfmsReportComponent } from './components/cao/tank-stage1-pfms-report/tank-stage1-pfms-report.component';\r\nimport { TankStage2PfmsReportComponent } from './components/cao/tank-stage2-pfms-report/tank-stage2-pfms-report.component';\r\nimport { TankStage3PfmsReportComponent } from './components/cao/tank-stage3-pfms-report/tank-stage3-pfms-report.component';\r\nimport { TankStagePfmsImportComponent } from './components/cao/tank-stage-pfms-import/tank-stage-pfms-import.component';\r\n\r\nimport { GoogleMapComponent } from './components/google-map/google-map.component';\r\nimport { ViewCoOrdinatesComponent } from './components/department/view-co-ordinates/view-co-ordinates.component';\r\nimport {GMapModule} from 'primeng/gmap';\r\nimport { AppVerificationReportComponent } from './components/department/reports/app-verification-report/app-verification-report.component';\r\nimport { DepartmentDashboardComponent } from './components/department/department-dashboard/department-dashboard.component';\r\nimport { MonthWiseReportComponent } from './components/department/reports/app-verification-report/month-wise-report/month-wise-report.component';\r\nimport { DistrictWiseReportComponent } from './components/department/reports/app-verification-report/district-wise-report/district-wise-report.component';\r\nimport { UserWiseReportComponent } from './components/department/reports/app-verification-report/user-wise-report/user-wise-report.component';\r\nimport { VendorWiseReportComponent } from './components/department/reports/app-verification-report/vendor-wise-report/vendor-wise-report.component';\r\nimport { EstimationReportComponent } from './components/department/reports/estimation-report/estimation-report.component';\r\nimport { EstimationMonthWiseReportComponent } from './components/department/reports/estimation-report/estimation-month-wise-report/estimation-month-wise-report.component';\r\nimport { EstimationDistrictWiseReportComponent } from './components/department/reports/estimation-report/estimation-district-wise-report/estimation-district-wise-report.component';\r\nimport { EstimationUserWiseReportComponent } from './components/department/reports/estimation-report/estimation-user-wise-report/estimation-user-wise-report.component';\r\nimport { EstimationVendorWiseReportComponent } from './components/department/reports/estimation-report/estimation-vendor-wise-report/estimation-vendor-wise-report.component';\r\nimport { BOQReportComponent } from './components/department/reports/boq-report/boq-report.component';\r\nimport { BoqMonthWiseReportComponent } from './components/department/reports/boq-report/boq-month-wise-report/boq-month-wise-report.component';\r\nimport { BoqDistrictWiseReportComponent } from './components/department/reports/boq-report/boq-district-wise-report/boq-district-wise-report.component';\r\nimport { BoqVendorWiseReportComponent } from './components/department/reports/boq-report/boq-vendor-wise-report/boq-vendor-wise-report.component';\r\nimport { BoqMiTypeReportComponent } from './components/department/reports/boq-report/boq-mi-type-report/boq-mi-type-report.component';\r\nimport { EstimationVerificationReportComponent } from './components/department/reports/estimation-verification-report/estimation-verification-report.component';\r\nimport { EstVerificationMonthWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-month-wise-report/est-verification-month-wise-report.component';\r\nimport { EstVerificationDistrictWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-district-wise-report/est-verification-district-wise-report.component';\r\nimport { EstVerificationVendorWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-vendor-wise-report/est-verification-vendor-wise-report.component';\r\nimport { EstVerificationUserWiseReportComponent } from './components/department/reports/estimation-verification-report/est-verification-user-wise-report/est-verification-user-wise-report.component';\r\nimport { ChallanReportComponent } from './components/department/reports/challan-report/challan-report.component';\r\nimport { ChallanDistrictWiseReportComponent } from './components/department/reports/challan-report/challan-district-wise-report/challan-district-wise-report.component';\r\nimport { ChallanVendorWiseReportComponent } from './components/department/reports/challan-report/challan-vendor-wise-report/challan-vendor-wise-report.component';\r\nimport { PhysicalVerificationReportComponent } from './components/department/reports/physical-verification-report/physical-verification-report.component';\r\nimport { PhysicalVerificationMonthWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-month-wise-report/physical-verification-month-wise-report.component';\r\nimport { PhysicalVerificationDistrictWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-district-wise-report/physical-verification-district-wise-report.component';\r\nimport { PhysicalVerificationVendorWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-vendor-wise-report/physical-verification-vendor-wise-report.component';\r\nimport { PhysicalVerificationUserWiseReportComponent } from './components/department/reports/physical-verification-report/physical-verification-user-wise-report/physical-verification-user-wise-report.component';\r\nimport { FsvReportComponent } from './components/department/reports/fsv-report/fsv-report.component';\r\nimport { FsvMonthWiseReportComponent } from './components/department/reports/fsv-report/fsv-month-wise-report/fsv-month-wise-report.component';\r\nimport { FsvDistrictWiseReportComponent } from './components/department/reports/fsv-report/fsv-district-wise-report/fsv-district-wise-report.component';\r\nimport { FsvVendorWiseReportComponent } from './components/department/reports/fsv-report/fsv-vendor-wise-report/fsv-vendor-wise-report.component';\r\nimport { VendorFarmerApplicationComponent } from './components/vendor/vendor-farmer-application/vendor-farmer-application.component';\r\nimport { AllSubsidyLotComponent } from './components/department/subsidy-lot/all-subsidy-lot/all-subsidy-lot.component';\r\nimport { StvReportComponent } from './components/department/reports/stv-report/stv-report.component';\r\nimport { StfReportComponent } from './components/department/reports/stf-report/stf-report.component';\r\nimport { StvMonthWiseComponent } from './components/department/reports/stv-report/stv-month-wise/stv-month-wise.component';\r\nimport { StvVendorWiseReportComponent } from './components/department/reports/stv-report/stv-vendor-wise-report/stv-vendor-wise-report.component';\r\nimport { StfDistrictWiseReportComponent } from './components/department/reports/stf-report/stf-district-wise-report/stf-district-wise-report.component';\r\nimport { StvDistrictWiseReportComponent } from './components/department/reports/stv-report/stv-district-wise-report/stv-district-wise-report.component';\r\nimport { StfMonthWiseReportComponent } from './components/department/reports/stf-report/stf-month-wise-report/stf-month-wise-report.component';\r\nimport { StfVendorWiseReportComponent } from './components/department/reports/stf-report/stf-vendor-wise-report/stf-vendor-wise-report.component';\r\nimport { RtfReportComponent } from './components/department/reports/rtf-report/rtf-report.component';\r\nimport { RtfDistrictWiseReportComponent } from './components/department/reports/rtf-report/rtf-district-wise-report/rtf-district-wise-report.component';\r\nimport { RtfMonthWiseReportComponent } from './components/department/reports/rtf-report/rtf-month-wise-report/rtf-month-wise-report.component';\r\nimport { RtfVendorWiseReportComponent } from './components/department/reports/rtf-report/rtf-vendor-wise-report/rtf-vendor-wise-report.component';\r\nimport { VendorMiAreaReportComponent } from './components/department/reports/vendor-mi-area-report/vendor-mi-area-report.component';\r\nimport { MiVerificationSubsidyReportComponent } from './components/department/reports/mi-verification-subsidy-report/mi-verification-subsidy-report.component';\r\nimport { TankAbstractReportComponent } from './components/department/reports/tank-abstract-report/tank-abstract-report.component';\r\nimport { Stage1ReportComponent } from './components/department/reports/stage1-report/stage1-report.component';\r\nimport { Stage2ReportComponent } from './components/department/reports/stage2-report/stage2-report.component';\r\nimport { Stage3ReportComponent } from './components/department/reports/stage3-report/stage3-report.component';\r\nimport { Stage1SubsidyReportComponent } from './components/department/reports/stage1-subsidy-report/stage1-subsidy-report.component';\r\nimport { Stage2SubsidyReportComponent } from './components/department/reports/stage2-subsidy-report/stage2-subsidy-report.component';\r\nimport { Stage3SubsidyReportComponent } from './components/department/reports/stage3-subsidy-report/stage3-subsidy-report.component';\r\nimport { CanalAndTubeWellBasedReportComponent } from './components/department/reports/canal-and-tube-well-based-report/canal-and-tube-well-based-report.component';\r\nimport { ChallanMonthWiseReportComponent } from './components/department/reports/challan-report/challan-month-wise-report/challan-month-wise-report.component';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { FarmerApplicationVerificationPendingComponent } from './components/department/farmer-application-verification/farmer-application-verification-pending/farmer-application-verification-pending.component';\r\nimport { FarmerApplicationVerificationCompletedComponent } from './components/department/farmer-application-verification/farmer-application-verification-completed/farmer-application-verification-completed.component';\r\nimport { FarmerApplicationVerificationCurrentComponent } from './components/department/farmer-application-verification/farmer-application-verification-current/farmer-application-verification-current.component';\r\nimport { YearWiseProgressComponent } from './components/department/year-wise-progress/year-wise-progress.component';\r\nimport { MiAreaCoveredComponent } from './components/department/mi-area-covered/mi-area-covered.component';\r\nimport { RealtimeDataPdmcSchemeComponent } from './components/department/realtime-data-pdmc-scheme/realtime-data-pdmc-scheme.component';\r\nimport { MiVendorApplicationVerificationPendingComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification-pending/mi-vendor-application-verification-pending.component';\r\nimport { MiVendorApplicationVerificationCurrentComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification-current/mi-vendor-application-verification-current.component';\r\nimport { MiVendorApplicationVerificationApprovedComponent } from './components/department/mi-vendor-application-verification/mi-vendor-application-verification-approved/mi-vendor-application-verification-approved.component';\r\n// import { GeolocationComponent } from './components/geolocation/geolocation.component';\r\nimport { PreEstimateSurveyComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey.component';\r\nimport { MiSourceLocationComponent } from './components/je/mi-source-location/mi-source-location.component';\r\nimport { ChallanReconciliationDayReportComponent } from './components/department/reports/challan-reconciliation-day-report/challan-reconciliation-day-report.component';\r\nimport { MiPhysicalLocationComponent } from './components/micada_1.0/mi-physical-location/mi-physical-location.component';\r\nimport { DrillDownApprovedIncompleteReportComponent } from './components/department/reports/drill-down-approved-incomplete-report/drill-down-approved-incomplete-report.component';\r\nimport { SeventyFiveHundredDemoComponent } from './components/department/reports/seventy-five-hundred-demo/seventy-five-hundred-demo.component';\r\nimport { AtalUserComponent } from './components/department/reports/atal-user/atal-user.component';\r\nimport { DrillDownTotalReportComponent } from './components/department/reports/drill-down-total-report/drill-down-total-report.component';\r\nimport { DrillDownPendingReportComponent } from './components/department/reports/drill-down-pending-report/drill-down-pending-report.component';\r\nimport { DrillDownRejectedReportComponent } from './components/department/reports/drill-down-rejected-report/drill-down-rejected-report.component';\r\nimport { ChallanDrillDownReportComponent } from './components/department/reports/challan-drill-down-report/challan-drill-down-report.component';\r\nimport { DrillDownAbstractReportComponent } from './components/department/reports/drill-down-abstract-report/drill-down-abstract-report.component';\r\nimport { MiInventoryDetailsComponent } from './components/vendor/mi-inventory-details/mi-inventory-details.component';\r\nimport { DrillDownTankStageReportComponent } from './components/department/reports/drill-down-tank-stage-report/drill-down-tank-stage-report.component';\r\nimport { DaReportComponent } from './components/department/reports/da-report/da-report.component';\r\nimport { MiDaReportComponent } from './components/department/reports/da-report/mi-da-report/mi-da-report.component';\r\nimport { PondDaReportComponent } from './components/department/reports/da-report/pond-da-report/pond-da-report.component';\r\nimport { VendorPreEstimationReportComponent } from './components/department/reports/vendor-pre-estimation-report/vendor-pre-estimation-report.component';\r\nimport { PreEstimateMonthWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-month-wise-report/pre-estimate-month-wise-report.component';\r\nimport { PreEstimateDistrictWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-district-wise-report/pre-estimate-district-wise-report.component';\r\nimport { PreEstimateUserWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-user-wise-report/pre-estimate-user-wise-report.component';\r\nimport { PreEstimateVendorWiseReportComponent } from './components/department/reports/vendor-pre-estimation-report/pre-estimate-vendor-wise-report/pre-estimate-vendor-wise-report.component';\r\nimport { UploadGstComponent } from './components/vendor/upload-gst/upload-gst.component';\r\nimport { ImportBankDataComponent } from './components/cao/import-bank-data/import-bank-data.component';\r\nimport { OfficeOrdersComponent } from './components/office-orders/office-orders.component';\r\nimport { ConsolidatedReportComponent } from './components/department/reports/consolidated-report/consolidated-report.component';\r\nimport { PondConsolidateReportComponent } from './components/department/reports/pond-consolidate-report/pond-consolidate-report.component';\r\nimport { VendorAppCurrentComponent } from './components/vendor/vendor-application/vendor-app-current/vendor-app-current.component';\r\nimport { VendorAppApprovedComponent } from './components/vendor/vendor-application/vendor-app-approved/vendor-app-approved.component';\r\nimport { VendorAppPendingComponent } from './components/vendor/vendor-application/vendor-app-pending/vendor-app-pending.component';\r\nimport { RequestSolarComponent } from './components/dev/request-solar/request-solar.component';\r\nimport { SolarProcedureComponent } from './components/dev/solar-procedure/solar-procedure.component';\r\nimport { AddToSolarFlowComponent } from './components/dev/add-to-solar-flow/add-to-solar-flow.component';\r\nimport { ModifySolarComponent } from './components/dev/modify-solar/modify-solar.component';\r\nimport { GetSolarComponent } from './components/dev/get-solar/get-solar.component';\r\nimport { SolarListComponent } from './components/dev/solar-list/solar-list.component';\r\nimport { MiPhysicalVerficationCompletedComponent } from './components/je/mi-physical-verifications/mi-physical-verfication-completed/mi-physical-verfication-completed.component';\r\nimport { MiPhysicalVerificationCurrentComponent } from './components/je/mi-physical-verifications/mi-physical-verification-current/mi-physical-verification-current.component';\r\nimport { MiPhysicalVerificationPendingComponent } from './components/je/mi-physical-verifications/mi-physical-verification-pending/mi-physical-verification-pending.component';\r\nimport { ApplicationTypeReportComponent } from './components/department/application-type-report/application-type-report.component';\r\nimport { SanctionLetterComponentComponent } from './components/challan/sanction-letter-component/sanction-letter-component.component';\r\nimport { ImageAttachmentsComponent } from './components/je/image-attachments/image-attachments.component';\r\nimport { TargetSystemComponent } from './components/admin-panel/target-system/target-system.component';\r\nimport { InventoryReportComponent } from './components/department/reports/inventory-report/inventory-report.component';\r\nimport { ErrorTrackingComponent } from './components/dev/error-tracking/error-tracking.component';\r\nimport { GeoMappingComponent } from './components/admin-panel/geo-mapping/geo-mapping.component';\r\nimport { TankStage1PendingComponent } from './components/tank-stage1/tank-stage1-pending/tank-stage1-pending.component';\r\nimport { TankStage1CurrentComponent } from './components/tank-stage1/tank-stage1-current/tank-stage1-current.component';\r\nimport { TankStage1ApprovedComponent } from './components/tank-stage1/tank-stage1-approved/tank-stage1-approved.component';\r\nimport { TankStage2ApprovedComponent } from './components/tank-stage2/tank-stage2-approved/tank-stage2-approved.component';\r\nimport { TankStage2CurrentComponent } from './components/tank-stage2/tank-stage2-current/tank-stage2-current.component';\r\nimport { TankStage2PendingComponent } from './components/tank-stage2/tank-stage2-pending/tank-stage2-pending.component';\r\nimport { TankStage3PendingComponent } from './components/tank-stage3/tank-stage3-pending/tank-stage3-pending.component';\r\nimport { TankStage3CurrentComponent } from './components/tank-stage3/tank-stage3-current/tank-stage3-current.component';\r\nimport { TankStage3ApprovedComponent } from './components/tank-stage3/tank-stage3-approved/tank-stage3-approved.component';\r\nimport { PreEstimateSurveyPendingComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey-pending/pre-estimate-survey-pending.component';\r\nimport { PreEstimateSurveyCurrentComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey-current/pre-estimate-survey-current.component';\r\nimport { PreEstimateSurveyApprovedComponent } from './components/vendor/pre-estimate-survey/pre-estimate-survey-approved/pre-estimate-survey-approved.component';\r\nimport { VendorBoqPendingComponent } from './components/vendor/vendor-boq/vendor-boq-pending/vendor-boq-pending.component';\r\nimport { VendorBoqCurrentComponent } from './components/vendor/vendor-boq/vendor-boq-current/vendor-boq-current.component';\r\nimport { VendorBoqApprovedComponent } from './components/vendor/vendor-boq/vendor-boq-approved/vendor-boq-approved.component';\r\nimport { CanalTargetComponent } from './components/target/canal-target/canal-target.component';\r\nimport { CropMasterStatusComponent } from './components/target/crop-master-status/crop-master-status.component';\r\nimport { StpTargetComponent } from './components/target/stp-target/stp-target.component';\r\nimport { OverFlowPondComponent } from './components/target/over-flow-pond/over-flow-pond.component';\r\nimport { DrillDownConsolidatedReportComponent } from './components/department/reports/drill-down-consolidated-report/drill-down-consolidated-report.component';\r\nimport { DrillDownConsolidatedUserwiseReportComponent } from './components/department/reports/drill-down-consolidated-userwise-report/drill-down-consolidated-userwise-report.component';\r\nimport { SubsidyWiseReportComponent } from './components/department/reports/subsidy-wise-report/subsidy-wise-report.component';\r\nimport { FarmerShareToFarmerPfmsReportComponent } from './components/cao/farmer-share-to-farmer-pfms-report/farmer-share-to-farmer-pfms-report.component';\r\nimport { SubsidyToFarmerAbyPfmsReportComponent } from './components/cao/subsidy-to-farmer-aby-pfms-report/subsidy-to-farmer-aby-pfms-report.component';\r\nimport { SubsidyToVendorAbyPfmsReportComponent } from './components/cao/subsidy-to-vendor-aby-pfms-report/subsidy-to-vendor-aby-pfms-report.component';\r\nimport { TankStage1AbyPfmsReportComponent } from './components/cao/tank-stage1-aby-pfms-report/tank-stage1-aby-pfms-report.component';\r\nimport { TankStage2AbyPfmsReportComponent } from './components/cao/tank-stage2-aby-pfms-report/tank-stage2-aby-pfms-report.component';\r\nimport { TankStage3AbyPfmsReportComponent } from './components/cao/tank-stage3-aby-pfms-report/tank-stage3-aby-pfms-report.component';\r\nimport { RefundToFarmerAbyComponent } from './components/cao/refund-to-farmer-aby/refund-to-farmer-aby.component';\r\nimport { UnhideApplicationComponent } from './components/department/farmer-queries/unhide-application/unhide-application.component';\r\nimport { ChangeVendorComponent } from './components/department/farmer-queries/change-vendor/change-vendor.component';\r\nimport { ChangeProgramComponent } from './components/department/farmer-queries/change-program/change-program.component';\r\nimport { TubewellConnectionLoginComponent } from './components/tubewell-connection-login/tubewell-connection-login.component';\r\nimport { TubewellConnectionDashboardComponent } from './components/tubewell-connection-dashboard/tubewell-connection-dashboard.component';\r\nimport { LotWiseReportComponent } from './components/department/reports/lot-wise-report/lot-wise-report.component';\r\nimport { StvLotReportComponent } from './components/department/reports/lot-wise-report/stv-lot-report/stv-lot-report.component';\r\nimport { StfLotReportComponent } from './components/department/reports/lot-wise-report/stf-lot-report/stf-lot-report.component';\r\nimport { RtfLotReportComponent } from './components/department/reports/lot-wise-report/rtf-lot-report/rtf-lot-report.component';\r\nimport { FsvLotReportComponent } from './components/department/reports/lot-wise-report/fsv-lot-report/fsv-lot-report.component';\r\nimport { Stage1LotReportComponent } from './components/department/reports/lot-wise-report/stage1-lot-report/stage1-lot-report.component';\r\nimport { Stage2LotReportComponent } from './components/department/reports/lot-wise-report/stage2-lot-report/stage2-lot-report.component';\r\nimport { Stage3LotReportComponent } from './components/department/reports/lot-wise-report/stage3-lot-report/stage3-lot-report.component';\r\nimport { NewTargetComponent } from './components/home-page/new-target/new-target.component';\r\nimport { SubsidyToFarmerAtalComponent } from './components/department/subsidy-lot/subsidy-to-farmer-atal/subsidy-to-farmer-atal.component';\r\nimport { ChallanReportByVendorIdComponent } from './components/department/reports/challan-report-by-vendor-id/challan-report-by-vendor-id.component';\r\nimport { LotReportComponent } from './components/department/reports/lot-report/lot-report.component';\r\nimport { MiConsolidatedCountWiseReportComponent } from './components/department/reports/consolidated-report/mi-consolidated-count-wise-report/mi-consolidated-count-wise-report.component';\r\nimport { FailedMiPaymentFsvComponent } from './components/department/failed-mi-payment/failed-mi-payment-fsv/failed-mi-payment-fsv.component';\r\nimport { FailedMiPaymentStfComponent } from './components/department/failed-mi-payment/failed-mi-payment-stf/failed-mi-payment-stf.component';\r\nimport { FailedMiPaymentStvComponent } from './components/department/failed-mi-payment/failed-mi-payment-stv/failed-mi-payment-stv.component';\r\nimport { FailedMiPaymentComponent } from './components/department/failed-mi-payment/failed-mi-payment.component';\r\nimport { FailedMiPaymentRtfComponent } from './components/department/failed-mi-payment/failed-mi-payment-rtf/failed-mi-payment-rtf.component';\r\nimport { FailedPondPaymentComponent } from './components/department/failed-pond-payment/failed-pond-payment.component';\r\nimport { FailedPondPaymentS1Component } from './components/department/failed-pond-payment/failed-pond-payment-s1/failed-pond-payment-s1.component';\r\nimport { FailedPondPaymentS2Component } from './components/department/failed-pond-payment/failed-pond-payment-s2/failed-pond-payment-s2.component';\r\nimport { FailedPondPaymentS3Component } from './components/department/failed-pond-payment/failed-pond-payment-s3/failed-pond-payment-s3.component';\r\nimport { PondCountWiseReportComponent } from './components/department/reports/consolidated-report/pond-count-wise-report/pond-count-wise-report.component';\r\nimport { ContractorDashboardComponent } from './components/contractor/contractor-dashboard/contractor-dashboard.component';\r\nimport { NewWorkComponent } from './components/contractor/new-work/new-work.component';\r\nimport { UpdateWorkComponent } from './components/contractor/update-work/update-work.component';\r\nimport { KycComponent } from './components/registration/kyc/kyc.component';\r\nimport { MaskAadharPipe } from './pipes/mask-aadhar.pipe';\r\nimport { MiConsolidatedTotalAppReportComponent } from './components/department/reports/consolidated-report/mi-consolidated-total-app-report/mi-consolidated-total-app-report.component';\r\nimport { PondConsolidatedTotalAppReportComponent } from './components/department/reports/consolidated-report/pond-consolidated-total-app-report/pond-consolidated-total-app-report.component';\r\nimport { PhysicalFinTargetComponent } from './components/department/physical-fin-target/physical-fin-target.component';\r\nimport { BeneficiaryDetailsComponent } from './components/beneficiary-details/beneficiary-details.component';\r\nimport { EpcWorkApprovalComponent } from './components/department/epc/epc-work-approval/epc-work-approval.component';\r\nimport { EpcWorkPvComponent } from './components/department/epc/epc-work-pv/epc-work-pv.component';\r\nimport { KrishiMapperComponent } from './components/department/krishi-mapper/krishi-mapper.component';\r\nimport { UhbvnNocUploadComponent } from './components/department/uhbvn/uhbvn-noc-upload/uhbvn-noc-upload.component';\r\nimport { NewRegistrationComponent } from './components/registration/new-registration/new-registration.component';\r\nimport { UhbvnComponent } from './components/department/uhbvn/uhbvn.component';\r\nimport { PrintNocComponent } from './components/department/uhbvn/print-noc/print-noc.component';\r\nimport { FarmerRequestForNocComponent } from './components/department/uhbvn/farmer-request-for-noc/farmer-request-for-noc.component';\r\nimport { UploadedNocForSurveyComponent } from './components/department/uhbvn/uploaded-noc-for-survey/uploaded-noc-for-survey.component';\r\nimport { ConsolidatedDashboardComponent } from './components/department/reports/consolidated-report/consolidated-dashboard/consolidated-dashboard.component';\r\nimport { VendorDetailsComponent } from './components/registration/vendor-details/vendor-details.component';\r\nimport { VendorRegistrationComponent } from './components/vendor-registration/vendor-registration.component';\r\nimport { VendorBudgetDetailsComponent } from './components/registration/vendor-budget-details/vendor-budget-details.component';\r\nimport { EpcPaymentComponent } from './components/department/epc/epc-payment/epc-payment.component';\r\nimport { EpcPvDoneComponent } from './components/department/epc/epc-payment/epc-pv-done/epc-pv-done.component';\r\nimport { PfmsPaymentStatusComponent } from './components/department/epc/epc-payment/pfms-payment-status/pfms-payment-status.component';\r\nimport { ReadyForPaymentComponent } from './components/department/epc/epc-payment/ready-for-payment/ready-for-payment.component';\r\nimport { VendorDashboardComponent } from './components/department/reports/vendor-dashboard/vendor-dashboard.component';\r\nimport { RankingRatingReportComponent } from './components/department/reports/ranking-rating-report/ranking-rating-report.component';\r\nimport { MiConsolidatedCompletedCountWiseReportComponent } from './components/department/reports/consolidated-report/mi-Completed/mi-consolidated-completed-count-wise-report/mi-consolidated-completed-count-wise-report.component';\r\nimport { MiConsolidatedRejectedCountWiseReportComponent } from './components/department/reports/consolidated-report/mi-Completed/Rejected/mi-consolidated-rejected-count-wise-report/mi-consolidated-rejected-count-wise-report.component';\r\nimport { MiConsolidatedIncompletedCountWiseReportComponent } from './components/department/reports/consolidated-report/mi-Completed/Incomplete/mi-consolidated-incompleted-count-wise-report/mi-consolidated-incompleted-count-wise-report.component';\r\nimport { PondRejectedCountWiseReportComponent } from './components/department/reports/consolidated-report/pond-count-wise-report/Rejected/pond-rejected-count-wise-report/pond-rejected-count-wise-report.component';\r\nimport { PondIncompleteCountWiseReportComponent } from './components/department/reports/consolidated-report/pond-count-wise-report/Incomplete/pond-incomplete-count-wise-report/pond-incomplete-count-wise-report.component';\r\nimport { PondCompleteCountWiseReportComponent } from './components/department/reports/consolidated-report/pond-count-wise-report/Completed/pond-complete-count-wise-report/pond-complete-count-wise-report.component';\r\nimport { LotConsolidatedReportComponent } from './components/department/reports/lot-consolidated-report/lot-consolidated-report.component';\r\nimport { MiConsolidatedDetailReportComponent } from './components/department/reports/consolidated-report/mi-consolidated-detail-report/mi-consolidated-detail-report.component';\r\nimport { PondConsolidatedDetailReportComponent } from './components/department/reports/consolidated-report/pond-consolidated-detail-report/pond-consolidated-detail-report.component';\r\nimport { BenificiaryComponent } from './components/benificiary/benificiary/benificiary.component';\r\nimport { SubsidyToVendorAtalComponent } from './components/department/subsidy-lot/subsidy-to-vendor-atal/subsidy-to-vendor-atal.component';\r\nimport { VendorRegistrationsComponent } from './components/vendor-registrations/vendor-registrations.component';\r\nimport { VendorDataComponent } from './components/je/vendor-data/vendor-data.component';\r\nimport { VendorSignupComponent } from './components/registration/vendor-signup/vendor-signup.component';\r\nimport { GrievanceComponent } from './components/grievance/grievance.component';\r\nimport { GrievanceHandlerComponent } from './components/grievance/grievance-handler/grievance-handler.component';\r\nimport { MiConsolidatedCountWiseVendorReportComponent } from './components/department/reports/vendor-dashboard/mi-consolidated-count-wise-vendor-report/mi-consolidated-count-wise-vendor-report.component';\r\nimport { CaoFinancialDetailsComponent } from './components/cao/cao-financial-details/cao-financial-details.component';\r\nimport { JeActivityComponent } from './components/je-activity/je-activity.component';\r\nimport { VendorPersonalDetailsComponent } from './components/registration/vendor-personal-details/vendor-personal-details.component';\r\nimport { SubsidyDistributionComponent } from './components/cao/subsidy-distribution/subsidy-distribution.component';\r\nimport { SubdidyDetailsComponent } from './components/subdidy-details/subdidy-details.component';\r\nimport { VendorSubsidyDetailsComponent } from './components/vendor-subsidy-details/vendor-subsidy-details.component';\r\nimport { VendorAllApplicationsComponent } from './components/vendor/vendor-all-applications/vendor-all-applications.component';\r\nimport { JeSurveyActionInfoComponent } from './components/department/je-survey-action-info/je-survey-action-info.component';\r\nimport { MiPondTargetComponent } from './components/target/mi-pond-target/mi-pond-target.component';\r\nimport { SafeUrlPipe } from './safe-url.pipe';\r\nimport { EpcEstimationDetailsComponent } from './components/department/reports/epc-report/epc-estimation-details/epc-estimation-details.component';\r\nimport { SubsidyDistributionDrillDownReportComponent } from './components/cao/subsidy-distribution/subsidy-distribution-drill-down-report/subsidy-distribution-drill-down-report.component';\r\nimport { ChallanReconciliationDayDrillDownReportComponent } from './components/department/reports/challan-reconciliation-day-report/challan-reconciliation-day-drill-down-report/challan-reconciliation-day-drill-down-report.component';\r\nimport { PhotoGalleryComponent } from './components/gallery/photo-gallery/photo-gallery.component';\r\nimport { VideoGalleryComponent } from './components/gallery/video-gallery/video-gallery.component';\r\nimport { HeaderComponent } from './components/landing/header/header.component';\r\nimport { FooterComponent } from './components/landing/footer/footer.component';\r\nimport { KeyExecutivesComponent } from './components/key-executives/key-executives.component';\r\nimport { SubsidyToFarmerCaoPfmsReportComponent } from './components/cao/subsidy-to-farmer-cao-pfms-report/subsidy-to-farmer-cao-pfms-report.component';\r\nimport { SubsidyToVendorCaoPfmsReportComponent } from './components/cao/subsidy-to-vendor-cao-pfms-report/subsidy-to-vendor-cao-pfms-report.component';\r\nimport { HeadOffExecutivesComponent } from './components/key-executives/head-off-executives/head-off-executives.component';\r\nimport { SuccessStoriesComponent } from './components/landing/success-stories/success-stories.component';\r\nimport { TankStage1CaoPfmsReportComponent } from './components/cao/tank-stage1-cao-pfms-report/tank-stage1-cao-pfms-report.component';\r\nimport { TankStage2CaoPfmsReportComponent } from './components/cao/tank-stage2-cao-pfms-report/tank-stage2-cao-pfms-report.component';\r\nimport { TankStage3CaoPfmsReportComponent } from './components/cao/tank-stage3-cao-pfms-report/tank-stage3-cao-pfms-report.component';\r\nimport { FarmerShareToVendorCaoPfmsReportComponent } from './components/cao/farmer-share-to-vendor-cao-pfms-report/farmer-share-to-vendor-cao-pfms-report.component';\r\nimport { ReturnToFarmerCaoPfmsReportComponent } from './components/cao/return-to-farmer-cao-pfms-report/return-to-farmer-cao-pfms-report.component';\r\nimport { IndianDecimalPipe } from './pipes/indian-decimal.pipe';\r\nimport { UpdateJamabandiComponent } from './components/dev/update-jamabandi/update-jamabandi.component';\r\nimport { AppealComponent } from './components/registration/appeal/appeal.component';\r\n// AoT requires an exported function for factories\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HomePageLayoutComponent,\r\n HomeFooterComponent,\r\n HomeHeaderComponent,\r\n InnerPageLayoutComponent,\r\n InnerHeaderComponent,\r\n InnerNavComponent,\r\n HomeNavComponent,\r\n HomeComponent,\r\n PersonalDetailsComponent,\r\n InnerFooterComponent,\r\n BankDetailsComponent,\r\n FarmerLandDetailComponent,\r\n OnFarmMiComponent,\r\n AppMenuComponent,\r\n AppMenuitemComponent,\r\n AppTopBarComponent,\r\n LoginComponent,\r\n PhoneLoginComponent,\r\n FarmersApplicationComponent,\r\n DashboardComponent,\r\n ConsentFormComponent,\r\n DepartmentConsentFormComponent,\r\n FarmersApplicationComponent,\r\n VendorComponent,\r\n VendorConsentFormComponent,\r\n FarmerDashboardComponent,\r\n PondProgressIntimationComponent,\r\n VendorBOQComponent,\r\n MiChallanComponent,\r\n SolarChallanComponent,\r\n FarmerShareComponent,\r\n FullPaymentComponent,\r\n VendorMiEstimationConsentFormComponent,\r\n PondEstimateComponent,\r\n AppLoaderComponent,\r\n SanctionLetterComponent,\r\n FarmerApplicationVerificationComponent,\r\n MiVendorApplicationVerificationComponent,\r\n WorkFlowAllStatusComponent,\r\n LandingComponent,\r\n ActivitiesComponent,\r\n OrganizationalSetupComponent,\r\n StatisticsComponent,\r\n ForgotPasswordComponent,\r\n FullPaymentchallanDetailsComponent,\r\n ReportSummaryComponent,\r\n JeApplicationComponent,\r\n BasicComponent,\r\n FinanceComponent,\r\n AttachmentComponent,\r\n JeComponent,\r\n MiPhysicalVerificationsComponent,\r\n VendorApplicationComponent,\r\n PrintFarmersChallanComponent,\r\n CameraComponent,\r\n HelpdeskComponent,\r\n UpdateMiComponentCmlValidityComponent,\r\n ChangeRequestComponent,\r\n SdoComponent,\r\n ViewFormComponent,\r\n FarmerAppChangeRequestComponent,\r\n NewInitiativesComponent,\r\n RtiComponent,\r\n MiSurveyComponent,\r\n MiSurveySubsidyDisbursementComponent,\r\n CaoComponent,\r\n ApproveFarmersChallanComponent,\r\n ViewFarmerApplicationComponent,\r\n FarmerShareToVendorComponent,\r\n SubsidyToVendorComponent,\r\n SubsidyToFarmerComponent,\r\n RefundToFarmerComponent,\r\n FarmerShareToVendorPfmsReportComponent,\r\n SubsidyToVendorPfmsReportComponent,\r\n SubsidyToFarmerPfmsReportComponent,\r\n ReturnToFarmerPfmsReportComponent,\r\n XenComponent,\r\n XenFormComponent,\r\n TankStage1Component,\r\n TankStage2Component,\r\n TankStage3Component,\r\n EvaluationStudyComponent,\r\n AchievementsComponent,\r\n AnnualPlanComponent,\r\n ProjectComponent,\r\n MicroIrrigationComponent,\r\n ImportPfmsDataComponent,\r\n Tankstagesurvey1Component,\r\n Tankstagesurvey2Component,\r\n Tankstagesurvey3Component,\r\n TankStage1PfmsReportComponent,\r\n TankStage2PfmsReportComponent,\r\n TankStage3PfmsReportComponent,\r\n TankStagePfmsImportComponent,\r\n GoogleMapComponent,\r\n ViewCoOrdinatesComponent,\r\n AppVerificationReportComponent,\r\n DepartmentDashboardComponent,\r\n MonthWiseReportComponent,\r\n DistrictWiseReportComponent,\r\n UserWiseReportComponent,\r\n VendorWiseReportComponent,\r\n EstimationReportComponent,\r\n EstimationMonthWiseReportComponent,\r\n EstimationDistrictWiseReportComponent,\r\n EstimationUserWiseReportComponent,\r\n EstimationVendorWiseReportComponent,\r\n BOQReportComponent,\r\n BoqMonthWiseReportComponent,\r\n BoqDistrictWiseReportComponent,\r\n BoqVendorWiseReportComponent,\r\n BoqMiTypeReportComponent,\r\n EstimationVerificationReportComponent,\r\n EstVerificationMonthWiseReportComponent,\r\n EstVerificationDistrictWiseReportComponent,\r\n EstVerificationVendorWiseReportComponent,\r\n EstVerificationUserWiseReportComponent,\r\n ChallanReportComponent,\r\n ChallanDistrictWiseReportComponent,\r\n ChallanVendorWiseReportComponent,\r\n PhysicalVerificationReportComponent,\r\n PhysicalVerificationMonthWiseReportComponent,\r\n PhysicalVerificationDistrictWiseReportComponent,\r\n PhysicalVerificationVendorWiseReportComponent,\r\n PhysicalVerificationUserWiseReportComponent,\r\n FsvReportComponent,\r\n FsvMonthWiseReportComponent,\r\n FsvDistrictWiseReportComponent,\r\n FsvVendorWiseReportComponent,\r\n VendorFarmerApplicationComponent,\r\n AllSubsidyLotComponent,\r\n StvReportComponent,\r\n StfReportComponent,\r\n StvMonthWiseComponent,\r\n StvVendorWiseReportComponent,\r\n StfDistrictWiseReportComponent,\r\n StfDistrictWiseReportComponent,\r\n StvDistrictWiseReportComponent,\r\n StfMonthWiseReportComponent,\r\n StfVendorWiseReportComponent,\r\n RtfReportComponent,\r\n RtfDistrictWiseReportComponent,\r\n RtfMonthWiseReportComponent,\r\n RtfVendorWiseReportComponent,\r\n VendorMiAreaReportComponent,\r\n MiVerificationSubsidyReportComponent,\r\n TankAbstractReportComponent,\r\n Stage1ReportComponent,\r\n Stage2ReportComponent,\r\n Stage3ReportComponent,\r\n Stage1SubsidyReportComponent,\r\n Stage2SubsidyReportComponent,\r\n Stage3SubsidyReportComponent,\r\n CanalAndTubeWellBasedReportComponent,\r\n ChallanMonthWiseReportComponent,\r\n FarmerApplicationVerificationPendingComponent,\r\n FarmerApplicationVerificationCompletedComponent,\r\n FarmerApplicationVerificationCurrentComponent,\r\n YearWiseProgressComponent,\r\n MiAreaCoveredComponent,\r\n RealtimeDataPdmcSchemeComponent,\r\n MiVendorApplicationVerificationPendingComponent,\r\n MiVendorApplicationVerificationCurrentComponent,\r\n MiVendorApplicationVerificationApprovedComponent,\r\n // GeolocationComponent,\r\n PreEstimateSurveyComponent,\r\n MiSourceLocationComponent,\r\n ChallanReconciliationDayReportComponent,\r\n MiPhysicalLocationComponent,\r\n DrillDownApprovedIncompleteReportComponent,\r\n SeventyFiveHundredDemoComponent,\r\n AtalUserComponent,\r\n DrillDownTotalReportComponent,\r\n DrillDownPendingReportComponent,\r\n DrillDownRejectedReportComponent,\r\n ChallanDrillDownReportComponent,\r\n DrillDownAbstractReportComponent,\r\n MiInventoryDetailsComponent,\r\n DrillDownTankStageReportComponent,\r\n DaReportComponent,\r\n MiDaReportComponent,\r\n PondDaReportComponent,\r\n VendorPreEstimationReportComponent,\r\n PreEstimateMonthWiseReportComponent,\r\n PreEstimateDistrictWiseReportComponent,\r\n PreEstimateUserWiseReportComponent,\r\n PreEstimateVendorWiseReportComponent,\r\n UploadGstComponent,\r\n ImportBankDataComponent,\r\n OfficeOrdersComponent,\r\n ConsolidatedReportComponent,\r\n PondConsolidateReportComponent,\r\n VendorAppCurrentComponent,\r\n VendorAppApprovedComponent,\r\n VendorAppPendingComponent,\r\n RequestSolarComponent,\r\n SolarProcedureComponent,\r\n AddToSolarFlowComponent,\r\n ModifySolarComponent,\r\n GetSolarComponent,\r\n MiPhysicalVerficationCompletedComponent,\r\n MiPhysicalVerificationCurrentComponent,\r\n MiPhysicalVerificationPendingComponent,\r\n SolarListComponent, \r\n ApplicationTypeReportComponent, \r\n SanctionLetterComponentComponent, \r\n ImageAttachmentsComponent, \r\n TargetSystemComponent, \r\n InventoryReportComponent, \r\n GeoMappingComponent, \r\n ErrorTrackingComponent,\r\n TankStage1PendingComponent, \r\n TankStage1CurrentComponent, \r\n TankStage1ApprovedComponent,\r\n TankStage2ApprovedComponent, \r\n TankStage2CurrentComponent, \r\n TankStage2PendingComponent, \r\n TankStage3PendingComponent, \r\n TankStage3CurrentComponent, \r\n TankStage3ApprovedComponent,\r\n PreEstimateSurveyPendingComponent, \r\n PreEstimateSurveyCurrentComponent, \r\n PreEstimateSurveyApprovedComponent,\r\n ImageAttachmentsComponent, \r\n VendorBoqPendingComponent, \r\n VendorBoqCurrentComponent, \r\n VendorBoqApprovedComponent, CanalTargetComponent, CropMasterStatusComponent, StpTargetComponent, OverFlowPondComponent, DrillDownConsolidatedReportComponent, DrillDownConsolidatedUserwiseReportComponent, SubsidyWiseReportComponent, FarmerShareToFarmerPfmsReportComponent, SubsidyToFarmerAbyPfmsReportComponent, SubsidyToVendorAbyPfmsReportComponent, TankStage1AbyPfmsReportComponent, TankStage2AbyPfmsReportComponent, TankStage3AbyPfmsReportComponent, RefundToFarmerAbyComponent, UnhideApplicationComponent, ChangeVendorComponent, ChangeProgramComponent, TubewellConnectionLoginComponent, TubewellConnectionDashboardComponent, LotWiseReportComponent, StvLotReportComponent, StfLotReportComponent, RtfLotReportComponent, FsvLotReportComponent, Stage1LotReportComponent, Stage2LotReportComponent, Stage3LotReportComponent, NewTargetComponent, SubsidyToFarmerAtalComponent, ChallanReportByVendorIdComponent, LotReportComponent, MiConsolidatedCountWiseReportComponent, FailedMiPaymentFsvComponent, FailedMiPaymentStfComponent, FailedMiPaymentStvComponent, FailedMiPaymentComponent, FailedMiPaymentRtfComponent, FailedPondPaymentComponent, FailedPondPaymentS1Component, FailedPondPaymentS2Component, FailedPondPaymentS3Component, PondCountWiseReportComponent, ContractorDashboardComponent, NewWorkComponent, UpdateWorkComponent, KycComponent, MaskAadharPipe, MiConsolidatedTotalAppReportComponent, PondConsolidatedTotalAppReportComponent, PhysicalFinTargetComponent, BeneficiaryDetailsComponent, EpcWorkApprovalComponent, EpcWorkPvComponent, KrishiMapperComponent, UhbvnNocUploadComponent, NewRegistrationComponent, UhbvnComponent, PrintNocComponent, FarmerRequestForNocComponent, UploadedNocForSurveyComponent, ConsolidatedDashboardComponent, EpcPaymentComponent, EpcPvDoneComponent, PfmsPaymentStatusComponent, ReadyForPaymentComponent, RankingRatingReportComponent, VendorDashboardComponent, VendorDetailsComponent, VendorRegistrationComponent, VendorBudgetDetailsComponent, EpcPaymentComponent, EpcPvDoneComponent, PfmsPaymentStatusComponent, ReadyForPaymentComponent, RankingRatingReportComponent, MiConsolidatedCompletedCountWiseReportComponent, MiConsolidatedRejectedCountWiseReportComponent, MiConsolidatedIncompletedCountWiseReportComponent, PondRejectedCountWiseReportComponent, PondIncompleteCountWiseReportComponent, PondCompleteCountWiseReportComponent, MiConsolidatedDetailReportComponent, PondConsolidatedDetailReportComponent, LotConsolidatedReportComponent, MiConsolidatedDetailReportComponent, PondConsolidatedDetailReportComponent, BenificiaryComponent, SubsidyToVendorAtalComponent, VendorRegistrationsComponent, VendorDataComponent, VendorSignupComponent, GrievanceComponent, GrievanceHandlerComponent, MiConsolidatedCountWiseVendorReportComponent, CaoFinancialDetailsComponent, JeActivityComponent, VendorPersonalDetailsComponent, SubsidyDistributionComponent, SubdidyDetailsComponent, VendorSubsidyDetailsComponent, VendorAllApplicationsComponent, JeSurveyActionInfoComponent, MiPondTargetComponent, SafeUrlPipe, EpcEstimationDetailsComponent, SubsidyDistributionDrillDownReportComponent, ChallanReconciliationDayDrillDownReportComponent, PhotoGalleryComponent, VideoGalleryComponent, HeaderComponent, FooterComponent, KeyExecutivesComponent, SubsidyToFarmerCaoPfmsReportComponent, SubsidyToVendorCaoPfmsReportComponent, HeadOffExecutivesComponent, SuccessStoriesComponent, TankStage1CaoPfmsReportComponent, TankStage2CaoPfmsReportComponent, TankStage3CaoPfmsReportComponent, FarmerShareToVendorCaoPfmsReportComponent, ReturnToFarmerCaoPfmsReportComponent, IndianDecimalPipe, UpdateJamabandiComponent, AppealComponent\r\n ],\r\n imports: [\r\n HttpClientModule,\r\n BrowserModule,\r\n AppRoutingModule,\r\n BrowserAnimationsModule,\r\n SharedModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n // primeng modules\r\n CardModule,\r\n ButtonModule,\r\n InputTextModule,\r\n RadioButtonModule,\r\n MenuModule,\r\n ToolbarModule,\r\n ConfirmDialogModule,\r\n KeyFilterModule,\r\n InputNumberModule,\r\n DropdownModule,\r\n DialogModule,\r\n TableModule,\r\n RatingModule,\r\n BrowserModule,\r\n StepsModule,\r\n TabMenuModule,\r\n TabViewModule,\r\n TagModule,\r\n TerminalModule,\r\n TieredMenuModule,\r\n TimelineModule,\r\n ToastModule,\r\n ToggleButtonModule,\r\n TooltipModule,\r\n TreeModule,\r\n TreeSelectModule,\r\n TreeTableModule,\r\n VirtualScrollerModule,\r\n FormsModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n BrowserAnimationsModule,\r\n AccordionModule,\r\n AutoCompleteModule,\r\n AvatarModule,\r\n AvatarGroupModule,\r\n BadgeModule,\r\n BreadcrumbModule,\r\n ButtonModule,\r\n CalendarModule,\r\n CardModule,\r\n CarouselModule,\r\n CascadeSelectModule,\r\n ChartModule,\r\n CheckboxModule,\r\n ChipsModule,\r\n ChipModule,\r\n CodeHighlighterModule,\r\n ConfirmDialogModule,\r\n ConfirmPopupModule,\r\n ColorPickerModule,\r\n ContextMenuModule,\r\n DataViewModule,\r\n DialogModule,\r\n DividerModule,\r\n DropdownModule,\r\n FieldsetModule,\r\n FileUploadModule,\r\n GalleriaModule,\r\n ImageModule,\r\n InplaceModule,\r\n InputNumberModule,\r\n InputMaskModule,\r\n InputSwitchModule,\r\n InputTextModule,\r\n InputTextareaModule,\r\n KnobModule,\r\n LightboxModule,\r\n ListboxModule,\r\n MegaMenuModule,\r\n MenuModule,\r\n MenubarModule,\r\n MessageModule,\r\n MessagesModule,\r\n MultiSelectModule,\r\n OrderListModule,\r\n OrganizationChartModule,\r\n OverlayPanelModule,\r\n PaginatorModule,\r\n PanelModule,\r\n PanelMenuModule,\r\n PasswordModule,\r\n PickListModule,\r\n ProgressBarModule,\r\n RadioButtonModule,\r\n RatingModule,\r\n RippleModule,\r\n ScrollPanelModule,\r\n ScrollTopModule,\r\n SelectButtonModule,\r\n SidebarModule,\r\n SkeletonModule,\r\n SlideMenuModule,\r\n SliderModule,\r\n SplitButtonModule,\r\n SplitterModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n BrowserAnimationsModule,\r\n AccordionModule,\r\n AutoCompleteModule,\r\n AvatarModule,\r\n AvatarGroupModule,\r\n BadgeModule,\r\n BreadcrumbModule,\r\n ButtonModule,\r\n CalendarModule,\r\n CardModule,\r\n CarouselModule,\r\n CascadeSelectModule,\r\n ChartModule,\r\n CheckboxModule,\r\n ChipsModule,\r\n ChipModule,\r\n CodeHighlighterModule,\r\n ConfirmDialogModule,\r\n ConfirmPopupModule,\r\n ColorPickerModule,\r\n ContextMenuModule,\r\n DataViewModule,\r\n DialogModule,\r\n DividerModule,\r\n DropdownModule,\r\n FieldsetModule,\r\n FileUploadModule,\r\n GalleriaModule,\r\n ImageModule,\r\n InplaceModule,\r\n InputNumberModule,\r\n InputMaskModule,\r\n InputSwitchModule,\r\n InputTextModule,\r\n InputTextareaModule,\r\n KnobModule,\r\n LightboxModule,\r\n ListboxModule,\r\n MegaMenuModule,\r\n MenuModule,\r\n MenubarModule,\r\n MessageModule,\r\n MessagesModule,\r\n MultiSelectModule,\r\n OrderListModule,\r\n OrganizationChartModule,\r\n OverlayPanelModule,\r\n PaginatorModule,\r\n PanelModule,\r\n PanelMenuModule,\r\n PasswordModule,\r\n PickListModule,\r\n ProgressBarModule,\r\n RadioButtonModule,\r\n RatingModule,\r\n RippleModule,\r\n ScrollPanelModule,\r\n ScrollTopModule,\r\n SelectButtonModule,\r\n SidebarModule,\r\n SkeletonModule,\r\n SlideMenuModule,\r\n SliderModule,\r\n SplitButtonModule,\r\n SplitterModule,\r\n WebcamModule,\r\n GMapModule,\r\n TranslateModule.forRoot({\r\n defaultLanguage: 'en',\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: (HttpLoaderFactory),\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: ApiLoaderInterceptor, multi: true },\r\n MessageService,\r\n ConfirmationService,\r\n MenuService,\r\n ConfigService,\r\n FarmerLandDetailService,\r\n TokenService,\r\n OnFarmMiService\r\n ],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-achievements',\r\n templateUrl: './achievements.component.html',\r\n styleUrls: ['./achievements.component.scss']\r\n})\r\nexport class AchievementsComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n \r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n \r\n \r\n }\r\n}\r\n","\r\n
{{'MI_CIRCULAR'| translate}}\r\n
\r\n

\r\n {{'THE_BUDGET_ESTIMATE'| translate}}
\r\n {{'OUT_OF_THE_ABOVE'| translate}}\r\n
\r\n
\r\n

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-activities',\r\n templateUrl: './activities.component.html',\r\n styleUrls: ['./activities.component.scss'],\r\n})\r\nexport class ActivitiesComponent implements OnInit {\r\n \r\n selectedLang :any;\r\n images = [\r\n // { \r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n { \r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n { \r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions:any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n\r\n \r\n }\r\n}\r\n","\r\n
    \r\n
    ONGOING PROJECTS
    \r\n\r\n

    Three\r\n projects namely WJC-VI, JLN-II & BCC-II were approved under\r\n CADWM Programme,\r\n wherein WJC Canal Command Ph-VI and JLN Canal Command Ph–II projects were included during the financial year\r\n 2007-08 under CADWM programme by GOI,\r\n MOWR vide sanction letter NO.13-6/2006-CADWM dated 06.02.2008 and Bhakra Canal Command Phase-II Project was\r\n included under CADWM Programme by Government\r\n of India MOWR vide sanction letter dated 25.05.2009 during the financial year 2009-10. Now, due to\r\n discontinuation of CADWM Programme by Government of India in the year 2016, these projects are being executed\r\n from state funds since 2016-17.

    \r\n
    BRIEF DETAIL OF ONGOING PROJECTS BEING\r\n EXECUTED IS AS UNDER
    \r\n 1. WESTERN JAMUNA CANAL COMMAND PH-VI PROJECT\r\n

    As per DPR,\r\n under this Project an area of 2,05,600 ha. CCA will be\r\n covered by constructing 1542 watercourses with an estimated\r\n cost of Rs. 459.92 crore. The farmers of Rohtak, Jhajjar, Sonepat, Jind, Bhiwani, Gurugram, Panipat & Karnal\r\n districts are being\r\n benefited under this project. 173514 ha. CCA has been covered by constructing 1044 watercourses under this\r\n project.

    \r\n\r\n 2. JLN CANAL COMMAND PHASE II PROJECT\r\n

    As per DPR,\r\n under this Project 99,383 ha. CCA was to be covered by\r\n constructing 525 watercourses.\r\n But, MoU for covering 74537 ha. CCA was signed with a revised estimated cost of Rs. 205.07 crore. The farmers\r\n of Jhajjar, Rewari, Gurugram, Mahendragarh\r\n & Bhiwani districts are being benefited under this project. 13488 ha. CCA has been covered by constructing 119\r\n watercourses under this project.

    \r\n 3. BHAKRA CANAL COMMAND PHASE-II PROJECT\r\n

    As per DPR,\r\n under this Project 351853 ha. CCA will be covered by\r\n constructing 1982 watercourses with an\r\n estimated cost of Rs. 815.18 crore. The farmers of Hisar, Sirsa, Fatehabad, Ambala, Kurukshetra, Kaithal,\r\n Karnal & Jind districts are being benefited\r\n under this project. 304225 ha. CCA has been covered by constructing 1648 watercourses under this project.\r\n


    \r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { promises } from 'dns';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { SuperAdminService } from 'src/app/services/super-admin.service';\r\n\r\n@Component({\r\n selector: 'app-geo-mapping',\r\n templateUrl: './geo-mapping.component.html',\r\n styleUrls: ['./geo-mapping.component.scss']\r\n})\r\nexport class GeoMappingComponent implements OnInit {\r\n\r\n @ViewChild('targetTable', { static: true })\r\n public targetTable: Table;\r\n\r\n public loading: boolean = false;\r\n\r\n public targetTableData: any = [];\r\n public userTypeData: any = [];\r\n public geoNameData: any = [];\r\n public cropTypeData: any = [];\r\n public programTypeData: any = [];\r\n public userId: any;\r\n\r\n public displayTargetDialog: boolean = false;\r\n public selectedUserType: any;\r\n public selectedGeoName: any;\r\n public selectedCropType: any;\r\n public selectedProgramType: any;\r\n public area: any;\r\n public farmerToBenifit: any;\r\n public Amount: any;\r\n public startDate: any;\r\n public endDate: any;\r\n\r\n public addTargetDetails: FormGroup;\r\n public isInvalid: boolean = false;\r\n public startDateVal: Date;\r\n\r\n public rowValue: any = null;\r\n public isEditCase: boolean = false;\r\n public userData:any;\r\n public actionData:any\r\n public selectedUserData:any\r\n public selectedActionData:any\r\n public selectedGeoTypeData:any\r\n public geoTypeData:any\r\n public selectedGeoNameData:any\r\n public geoTypeName:any\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private services: SuperAdminService,\r\n private _fb: FormBuilder,\r\n private confirmationService: ConfirmationService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n // console.log('token1', token);\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n\r\n this.addTargetDetails = this._fb.group({\r\n userType: ['', Validators.required],\r\n user: ['', Validators.required],\r\n action: ['', Validators.required],\r\n geoType: ['', Validators.required],\r\n geoName: ['', Validators.required],\r\n active: [0, Validators.required]\r\n \r\n });\r\n \r\n\r\n\r\n this.loadTableData();\r\n }\r\n\r\n loadTableData() {\r\n this.loading = true;\r\n this.services\r\n .getGeoUserMapping()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data.length > 0) {\r\n this.targetTableData = data;\r\n } else {\r\n this.targetTableData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: \"Data Not Found\",\r\n });\r\n }\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Target System Grid Load', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.activityRecordService.activityRecord(this.userId, 'Target System Grid Load', '', new Date(), err);\r\n },\r\n });\r\n \r\n }\r\n\r\n refreshTable() {\r\n this.loadTableData();\r\n }\r\n\r\n addTarget() {\r\n this.displayTargetDialog = true;\r\n this.getGeoTypeNameCropProgram();\r\n }\r\n\r\n getGeoTypeNameCropProgram() {\r\n\r\n this.loader.start();\r\n this.services\r\n .getGeoUserType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data.length > 0) {\r\n console.log(data, \"date\");\r\n \r\n this.userTypeData = data[1];\r\n console.log( this.userTypeData,\" this.userTypeData\")\r\n \r\n } else {\r\n this.userTypeData = [];\r\n \r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: \"Dropdown Data Not Found\",\r\n });\r\n }\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.userId, 'Click on Add Target', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.userTypeData = [];\r\n \r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.services\r\n .getGeoTypeNameCropProgram()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data.length > 0) {\r\n this.geoTypeData = data[0];\r\n } else {\r\n this.geoTypeData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: \"Data Not Found\",\r\n });\r\n }\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(this.userId, 'Target System Grid Load', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.activityRecordService.activityRecord(this.userId, 'Target System Grid Load', '', new Date(), err);\r\n },\r\n });\r\n }\r\n\r\n\r\n onCloseDialog() {\r\n this.displayTargetDialog = false;\r\n this.addTargetDetails.reset();\r\n // this.isInvalid = false;\r\n // this.isEditCase = false;\r\n // this.rowValue = null;\r\n\r\n // this.userTypeData = [];\r\n // this.cropTypeData = [];\r\n // this.programTypeData = [];\r\n // this.area = null;\r\n // this.farmerToBenifit = null;\r\n // this.Amount = null;\r\n // this.startDate = null;\r\n // this.endDate = null;\r\n this.userData=[]\r\n this.actionData=[]\r\n \r\n \r\n this.geoTypeData=[]\r\n \r\n this.geoTypeName=[]\r\n this.userTypeData=[]\r\n\r\n }\r\n\r\n get addTargetControls() {\r\n return this.addTargetDetails.controls;\r\n }\r\n\r\n onSaveAddGeoMapping() {\r\n // console.log(this.addTargetDetails.value.startDate <= this.addTargetDetails.value.endDate);\r\n console.log(this.addTargetDetails,\"this.addTargetDetails\")\r\n \r\n\r\n let val = this.addTargetDetails.value;\r\n let reqBody = {\r\n \"autoID\": 0,\r\n \"userID\": val?.user?.UserID,\r\n \"geoID\": val.geoName.Code,\r\n \"geoTypeName\": val.geoType.geoTypeName,\r\n \"actionId\": val?.action?.ActionID, \r\n \"active\": 0\r\n }\r\n console.log(reqBody);\r\n\r\n this.addgeoMapping(reqBody);\r\n \r\n }\r\n\r\n addgeoMapping(reqBody) {\r\n this.loader.start();\r\n this.services\r\n .addUpdateUserGeoMapping(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.loadTableData();\r\n this.onCloseDialog();\r\n\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.userId, 'Click on Add Target', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n \r\n }\r\n\r\n\r\n onRowDelete(val) {\r\n console.log(val, 'aasdasd');\r\n\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n this.deleteRow(val?.AutoID)\r\n }\r\n });\r\n\r\n // this.deleteRow(val?.AutoID)\r\n }\r\n\r\n deleteRow(autoId) {\r\n this.loader.start();\r\n this.services\r\n .deleteUserGeoMapping(autoId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data == \"Success\") {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n // this.loadTableData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n \r\n this.loader.close();\r\n this.loadTableData();\r\n // this.activityRecordService.activityRecord(this.userId, 'Click on Add Target', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectUserType() {\r\n console.log(this.selectedUserType,\"this.selectedUserType\");\r\n console.log( this.addTargetDetails,\" this.addTargetDetails\")\r\n this.callGooeNameData(this.selectedUserType);\r\n }\r\n\r\n\r\n callGooeNameData(userType) {\r\n this.loader.start();\r\n this.services\r\n .getUserActionFromUserType(userType.Level_ID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data.length > 0) {\r\n this.userData = data[0];\r\n this.actionData=data[1]\r\n console.log( this.userData,this.actionData)\r\n \r\n } else {\r\n this.userData = [];\r\n this.actionData=[];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: \"GeoName Data Not Found\",\r\n });\r\n }\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.userData = [];\r\n this.actionData=[];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n editTarget(row) {\r\n let active= row.Active==0?1:0\r\n this.confirmationService.confirm({\r\n message:row.Active==0?'Do you want to change Active status to 1':'Do you want to change Active status to 0',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n let reqBody = {\r\n AutoId: row.AutoID,\r\n Active:active,\r\n }\r\n this.loading = true;\r\n this.services.updateStatusUserGeoMapping(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n this.loadTableData();\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n toISOLocal(d) {\r\n var z = n => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n\r\n return d.getFullYear() + '-'\r\n + z(d.getMonth() + 1) + '-' +\r\n z(d.getDate());\r\n }\r\n\r\n onSelectUser(){\r\n console.log(this.selectedUserData,\"this.selectedUserData\")\r\n console.log(this.selectedActionData,\"this.selectedActionData\")\r\n console.log(this.addTargetDetails,\"this.addTargetDetails\")\r\n }\r\n onSelectGeoType(){\r\n this.services\r\n .getGeoByType(this.selectedGeoTypeData.geoTypeName)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data.length > 0) {\r\n console.log(data, \"date\");\r\n \r\n this.geoTypeName = data;\r\n console.log( this.geoTypeName,\" this.geoTypeName\")\r\n \r\n } else {\r\n this.userTypeData = [];\r\n \r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: \"Dropdown Data Not Found\",\r\n });\r\n }\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.userId, 'Click on Add Target', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.geoTypeName = [];\r\n \r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n onSelectGeoName(){\r\n\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'GEO_MAPPING'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'AUTO_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'GEO_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'GEO_TYPE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION_ID'| translate}}\r\n \r\n \r\n \r\n {{'ACTIVE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'EDIT/DELETE'| translate}}\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{product.AutoID}}\r\n {{product.UserID}}\r\n {{product.GeoID}}\r\n {{product.GEOType}}\r\n {{product.ActionId}}\r\n {{product.Active}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'USER_TYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'USER_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'ACTION_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'GEO_TYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'GEO_NAME_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n\r\n@Component({\r\n selector: 'app-target-system',\r\n templateUrl: './target-system.component.html',\r\n styleUrls: ['./target-system.component.scss']\r\n})\r\nexport class TargetSystemComponent implements OnInit {\r\n @ViewChild('targetTable', { static: true })\r\n public targetTable: Table;\r\n \r\n public loading: boolean = false;\r\n \r\n targetTableData= [\r\n {\r\n 'GeoId': 447, \r\n 'CropId': 1,\r\n 'ProgId': 3,\r\n 'Area': 42,\r\n 'FarmersToBeBenefitted': 119,\r\n 'Amount': 11865000,\r\n 'StartDate': '01-04-2023',\r\n 'EndDate': '30-06-2023'\r\n }\r\n ]\r\n constructor(\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n \r\n }\r\n\r\n refreshTable(){\r\n\r\n }\r\n\r\n addTarget(){\r\n \r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'TARGET_SYSTEM'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'GeoId'| translate}}\r\n \r\n \r\n \r\n\r\n {{'CropId'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ProgId'| translate}}\r\n \r\n \r\n \r\n\r\n {{'Area'| translate}}\r\n \r\n \r\n \r\n {{'FarmersToBeBenefitted'| translate}}\r\n \r\n \r\n \r\n {{'Area'| translate}}\r\n \r\n \r\n \r\n {{'Area'| translate}}\r\n \r\n \r\n \r\n {{'EndDate'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{product.GeoId}}\r\n {{product.CropId}}\r\n {{product.ProgId}}\r\n {{product.Area}}\r\n {{product.FarmersToBeBenefitted}}\r\n {{product.Amount}}\r\n {{product.StartDate}}\r\n {{product.EndDate}}\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-annual-plan',\r\n templateUrl: './annual-plan.component.html',\r\n styleUrls: ['./annual-plan.component.scss']\r\n})\r\nexport class AnnualPlanComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n \r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n \r\n \r\n }\r\n}\r\n","\r\n
{{'ANNUAL_PLAN_2020_21'| translate}}\r\n
\r\n

\r\n {{'ANNUAL_PLAN_DATA'| translate}}
\r\n {{'DURING_THE_CURRENT_FINANCIAL_YR'| translate}}\r\n
\r\n
\r\n

\r\n","import { filter } from 'rxjs/operators';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ApplicationDetailsModel } from 'src/app/models/farmers-application.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { OnFarmMiService } from 'src/app/services/on-farm-mi.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { ChallanService } from 'src/app/services/challan-services.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Location } from '@angular/common'\r\n\r\n\r\n@Component({\r\n selector: 'app-consent-form',\r\n templateUrl: './consent-form.component.html',\r\n styleUrls: ['./consent-form.component.scss'],\r\n})\r\nexport class ConsentFormComponent implements OnInit {\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n \r\n userId: any;\r\n autoId: any;\r\n appDetails: any;\r\n public sanctionLetterData: any;\r\n public appId: any;\r\n public progID: any;\r\n public sanctionLetterDataForTable: any[];\r\n miDetails: any;\r\n PondVerData: any;\r\n PondVerDataStage2: any;\r\n PondVerDataStage3: any;\r\n calculatedSubsidyDataForMIPhys: any;\r\n preEstimateDetails: any;\r\n physicalSurveyDetails: any;\r\n\r\n optionsPreEstimate: any;\r\n overlaysPreEstimate: any[];\r\n showMapPreEstimate: any;\r\n\r\n optionsJE: any;\r\n overlaysJE: any[];\r\n showMapJE: any;\r\n\r\n optionsXEN: any;\r\n overlaysXEN: any[];\r\n showMapXEN: any;\r\n\r\n optionsSDO: any;\r\n overlaysSDO: any[];\r\n showMapSDO: any;\r\n\r\n miSurveyMapoptions: any;\r\n miSurveyoverlays: any[];\r\n miSurveyXENMapoptions: any;\r\n miSurveyXENoverlays: any[];\r\n\r\n applicationDetails: ApplicationDetailsModel = new ApplicationDetailsModel();\r\n applicationStatus: any;\r\n vendorApplicationDetails: any;\r\n // farmerDetails: any;\r\n farmerPreviousSubsidies: any = [];\r\n farmerId: any;\r\n displayFileDialog: boolean;\r\n state: string = 'default';\r\n rotatableFilePath: any;\r\n public totalArea = 0;\r\n displayCustom: boolean;\r\n displayCustom1: boolean;\r\n activeIndex: number = 0;\r\n items: any[];\r\n selectedStatus: any;\r\n remarks: String;\r\n //appId: String;\r\n vendorId: any;\r\n programId: any;\r\n isActionSectionEnabled: boolean;\r\n\r\n public isProDataCalculated: boolean = false;\r\n public proCalculatedData: any;\r\n public statusCode: any;\r\n public isPrintClicked: boolean = false;\r\n public cropType: any;\r\n public selectedCropType: any;\r\n public selectedCrop: any;\r\n\r\n public totalLandArea: number = 0;\r\n\r\n public existingMIDetails: any;\r\n\r\n //for multiple datasets\r\n public preEstimationDataArray: any = [];\r\n public miEstimationDataArray: any = [];\r\n public miBOQDataArray: any = [];\r\n public physicalSurveyDataArray: any = [];\r\n public sanctionLetterDataArray: any = [];\r\n public physicalSurveyDetailsArray: any = [];\r\n public imgVal: any;\r\n\r\n public surveyStage1JE: any = null;\r\n public surveyStage1XEN: any = null;\r\n public surveyStage2JE: any = null;\r\n public surveyStage2XEN: any = null;\r\n public calStage1JE: any = null;\r\n public calStage1DD: any = null;\r\n public calStage1DA: any = null;\r\n public calStage1DMICADA: any = null;\r\n public calStage1Admin: any = null;\r\n public calStage2JE: any = null;\r\n public calStage2DA: any = null;\r\n public calStage2DD: any = null;\r\n public calStage2DMICADA: any = null;\r\n public calStage2Admin: any = null;\r\n public tankStage3Data: any = null;\r\n public remarksData: any = null;\r\n public t3Attachments: any = null;\r\n public t3AttachmentsPondStage1: any = null;\r\n public t3AttachmentsPondStage2: any = null;\r\n public t3VendorDetails: any = null;\r\n public pondStage3Visibility: any = null;\r\n\r\n public pondS1Exist: boolean = false;\r\n public pondS2Exist: boolean = false;\r\n\r\n public FSTVDetails: any;\r\n public STVDetails: any;\r\n public STFDetails: any;\r\n public RTFDetails: any;\r\n public PondStage1: any;\r\n public PondStage2: any;\r\n public PondStage3: any;\r\n\r\n public showSubsidyDetails: boolean = false;\r\n public showFarmerShareDepositeDetails: boolean = false;\r\n public farmerShareDepositeDetails: any;\r\n public viewLinkMasked:any;\r\n public isAdmin_DMICADA: any;\r\n\r\n public displayLandOwnerDialog: boolean = false;\r\n public landOwnerDetails : any = [];\r\n public showLandOwnerDetails: boolean = false;\r\n public isDAorDMICADA: boolean = false;\r\n\r\n public isLandOwnerDetFetching: boolean = false;\r\n loadingText: string = 'Fetching Owner Details from Land Revenue Department';\r\n private dotCount: number = 0;\r\n private maxDots: number = 3;\r\n private interval: any;\r\n\r\n public selLandForOwnerdetails: any = {};\r\n public kewatNo: any = null;\r\n\r\n public isDDEW_JEEW : boolean = false;\r\n public userRole: any;\r\n\r\n public landOwnerDetailsErrorMsg: any = null;\r\n\r\n public showHiddenButton: boolean = false;\r\n public request1complete: boolean = false;\r\n public request2complete: boolean = false;\r\n public landDetailedInfo: any = [];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private _dashboardService: DashboardService,\r\n private ofService: OnFarmMiService,\r\n private messageService: MessageService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private sanitizer: DomSanitizer,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private vendorService: VendorDashboardService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n private challanMIService: ChallanService,\r\n private jeService: JEService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private location: Location,\r\n ) {}\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]); \r\n this.userRole = JSON.parse(payload)?.sub;\r\n\r\n if(this.userRole == 'DD Associate' || this.userRole == 'DMICADA' || this.userRole == 'DD-EW' || this.userRole == 'JE-EW'){\r\n if(this.userRole == 'DD Associate' || this.userRole == 'DMICADA'){\r\n this.isDAorDMICADA = true;\r\n }else if(this.userRole == 'DD-EW' || this.userRole == 'JE-EW'){\r\n this.isDDEW_JEEW = true;\r\n }\r\n this.showLandOwnerDetails = true;\r\n }else{\r\n this.isDAorDMICADA = false;\r\n this.isDDEW_JEEW = false;\r\n this.showLandOwnerDetails = false;\r\n }\r\n if(this.userRole == 'admin' || this.userRole == 'DMICADA'){\r\n this.isAdmin_DMICADA = true;\r\n }else{\r\n this.isAdmin_DMICADA = false;\r\n }\r\n \r\n this.getCropMaster();\r\n\r\n this.appId = this.cryptoJsService.DecryptData(this.route.snapshot.paramMap.get('appId'));\r\n\r\n if (!this.appId) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error : Cannot Load Form Due to Missing Application Id.',\r\n });\r\n return;\r\n }\r\n // this.vendorId = this.route.snapshot.paramMap.get('vendorId');\r\n // this.programId = this.route.snapshot.paramMap.get('programId');\r\n // this.autoId = this.route.snapshot.paramMap.get('autoId');\r\n // this.userId = this.route.snapshot.paramMap.get('userId');\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n\r\n if (this.appId) {\r\n this.getApplicationDetails(this.appId);\r\n this.getExistingMIDetails(this.appId);\r\n this.getApplicationStatus(this.appId);\r\n // this.getPondVerDataSatge1(this.appId);\r\n // this.getPondVerDataSatge2(this.appId);\r\n this.getPondVerDataSatge3(this.appId);\r\n this.getGetSubsidyDetails(this.appId);\r\n this.challanPaymentDetails(this.appId);\r\n }\r\n }\r\n\r\n getCropMaster() {\r\n // this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.cropType = res;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onClickApp() {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(this.statusCode);\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree(\r\n [\r\n 'department',\r\n 'print',\r\n this.appId,\r\n this.vendorId,\r\n this.programId,\r\n this.userId,\r\n this.autoId,\r\n ],\r\n { queryParams: { statusCode: statusCodeEncrypted } }\r\n )\r\n );\r\n window.open(link, '_blank');\r\n }\r\n // }\r\n\r\n getPastSubsidiesByFarmerId(farmerID) {\r\n // if (this.farmerId) {\r\n // this.loader.start();\r\n this.ofService\r\n .GetFarmerPastSubsidyByFarmerId(farmerID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.farmerPreviousSubsidies = data;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n });\r\n },\r\n });\r\n // }\r\n }\r\n\r\n getPastSubsidiesByMultipleFarmerIds(GroupTableData) {\r\n let farmerIds = [];\r\n GroupTableData.forEach((farmer) => {\r\n farmerIds.push(farmer.FarmerID.toString());\r\n });\r\n if (farmerIds.length) {\r\n // this.loader.start();\r\n this.ofService\r\n .GetFarmerPastSubsidyByMultipleFarmerIds(farmerIds)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.farmerPreviousSubsidies = data;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n });\r\n },\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Group-Farmers Previous Subsidies not Fetched.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n getApplicationDetails(appId) {\r\n this.loader.start();\r\n this._dashboardService.getApplicationByAppId(appId).subscribe((res) => {\r\n this.loader.close();\r\n if (res) {\r\n this.applicationDetails = res;\r\n\r\n // res.ListViewFormData = [\r\n // {\r\n // \"AutoId\": 372819,\r\n // \"ProgId\": 2,\r\n // \"VendorId\": \"302\",\r\n // \"User_ID\": \"farmer\"\r\n // },\r\n // {\r\n // \"AutoId\": 372819,\r\n // \"ProgId\": 2,\r\n // \"VendorId\": \"302\",\r\n // \"User_ID\": \"farmer\"\r\n // }\r\n // ]\r\n\r\n if (res.ListViewFormData && res.ListViewFormData.length > 0) {\r\n res.ListViewFormData.forEach((val) => {\r\n let autoId = val?.AutoId;\r\n let progId = val?.ProgId\r\n let userId = val?.User_ID;\r\n let vendorId = val?.VendorId;\r\n\r\n if (autoId!=null && userId!=null) {\r\n this.getCalculatedSubsidyDataForMIPhys(autoId, userId);\r\n }\r\n\r\n if (autoId!=null && progId!=null) {\r\n this.getPreEstimationData(this.appId, progId);\r\n }\r\n\r\n if (this.appId!=null && progId!=null) {\r\n this.getSanctionLetterData(this.appId, progId);\r\n }\r\n\r\n if (vendorId!=null && progId!=null) {\r\n this.getMIEstimationData(this.appId, vendorId, progId);\r\n this.getMIBOQData(this.appId, vendorId, progId);\r\n }\r\n\r\n if (autoId!=null && userId!=null) {\r\n this.getPhysicalSurveyData(autoId, userId);\r\n }\r\n });\r\n }\r\n\r\n if (\r\n this.applicationDetails.FarmerLand &&\r\n this.applicationDetails.FarmerLand.length > 0\r\n ) {\r\n this.applicationDetails.FarmerLand.forEach(\r\n (val) => (this.totalLandArea += parseFloat(val.totalArea))\r\n );\r\n }\r\n\r\n this.totalArea = 0;\r\n if (this.applicationDetails?.New_MI_Datas && this.applicationDetails?.New_MI_Datas.length > 0) {\r\n this.applicationDetails.New_MI_Datas.forEach(\r\n (val) => (this.totalArea += parseFloat(val.totalArea))\r\n );\r\n }\r\n\r\n let farmerId = res.Farmer_ID;\r\n if (res?.GroupTableData) {\r\n this.getPastSubsidiesByMultipleFarmerIds(res?.GroupTableData);\r\n } else {\r\n this.getPastSubsidiesByFarmerId(farmerId);\r\n }\r\n if(this.applicationDetails?.FarmerPersonalData?.Aadhar_No){\r\n if(this.userRole && (this.userRole ==='DMICADA' || this.userRole ==='DD Associate' || this.userRole ==='CAO' || this.userRole == 'DD-EW' || this.userRole == 'JE-EW')){\r\n this.viewLinkMasked = false;\r\n }\r\n else{\r\n this.viewLinkMasked = true;\r\n this.applicationDetails.FarmerPersonalData.Aadhar_No=this.maskNumber(this.applicationDetails?.FarmerPersonalData?.Aadhar_No)\r\n this.applicationDetails.FarmerPersonalData.PPP_ID=this.maskNumber(this.applicationDetails?.FarmerPersonalData?.PPP_ID)\r\n }\r\n }\r\n }\r\n },\r\n err => {\r\n this.loader.close();\r\n });\r\n }\r\n\r\n getApplicationStatus(appId) {\r\n // this.loader.start();\r\n this._dashboardService\r\n .getApplicationStatusByAppId(appId)\r\n .subscribe((res) => {\r\n // this.loader.close();\r\n if (res) {\r\n this.applicationStatus = res.replace('Application Status: ', '');\r\n }\r\n });\r\n }\r\n\r\n getPondVerDataSatge1(appId) {\r\n this.jeService\r\n .getPondVerDataByAppIdStage1(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.PondVerData = data;\r\n sessionStorage.setItem('pondData', JSON.stringify(data));\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getPondVerDataSatge2(appId) {\r\n this.jeService\r\n .getPondVerDataByAppIdStage2(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if(data?.PondStage2Status == 1){\r\n this.PondVerDataStage2 = data;\r\n }\r\n // sessionStorage.setItem('pondData', JSON.stringify(data));\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getPondVerDataSatge3(appId) {\r\n this.jeService\r\n .getPondVerDataByAppId_SubsidyCalc_Stage3(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n if(res){\r\n this.PondVerDataStage3 = res;\r\n this.surveyStage1JE = res[1][0];\r\n if( this.surveyStage1JE?.IsExist==1){\r\n this.pondS1Exist = true;\r\n }else{\r\n this.pondS1Exist = false;\r\n }\r\n this.surveyStage1XEN = res[0][0];\r\n this.surveyStage2JE = res[3][0];\r\n if( this.surveyStage2JE?.IsExist==1){\r\n this.pondS2Exist = true;\r\n }else{\r\n this.pondS2Exist = false;\r\n }\r\n this.surveyStage2XEN = res[2][0]; \r\n this.calStage1JE = res[5][0];\r\n this.calStage1DD = res[6][0];\r\n this.calStage1DA = res[7][0];\r\n this.calStage1DMICADA = res[8][0];\r\n this.calStage1Admin = res[4][0];\r\n this.calStage2JE = res[10][0];\r\n this.calStage2DD = res[11][0];\r\n this.calStage2DA = res[12][0];\r\n this.calStage2DMICADA = res[13][0];\r\n this.calStage2Admin = res[9][0];\r\n this.tankStage3Data = res[14][0];\r\n this.remarksData = res[15][0];\r\n this.t3Attachments = res[16];\r\n this.t3VendorDetails = res[17][0];\r\n this.t3AttachmentsPondStage1 = res[18];\r\n this.t3AttachmentsPondStage2 = res[19];\r\n // this.pondStage3Visibility = res[18][0];\r\n }else{\r\n this.surveyStage1JE = null;\r\n this.surveyStage1XEN = null\r\n this.surveyStage2JE = null;\r\n this.surveyStage2XEN = null; \r\n this.calStage1JE = null;\r\n this.calStage1DD = null;\r\n this.calStage1DA = null;\r\n this.calStage1DMICADA = null;\r\n this.calStage1Admin = null\r\n this.calStage2JE = null;\r\n this.calStage2DD = null;\r\n this.calStage2DA = null;\r\n this.calStage2DMICADA = null;\r\n this.calStage2Admin = null;\r\n this.tankStage3Data = null;\r\n this.remarksData = null;null \r\n }\r\n // sessionStorage.setItem('pondData', JSON.stringify(data));\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getGetSubsidyDetails(appId) {\r\n this.jeService\r\n .getSubsidyDetails(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n if(res){\r\n this.STFDetails = res[0][0];\r\n this.STVDetails = res[1][0];\r\n this.RTFDetails = res[2][0];\r\n this.FSTVDetails = res[3][0];\r\n this.PondStage1 = res[4][0];\r\n this.PondStage2 = res[5][0];\r\n this.PondStage3 = res[6][0];\r\n if(this.STFDetails?.IsExist == 1 || this.STVDetails?.IsExist == 1 || this.RTFDetails?.IsExist == 1 || this.FSTVDetails?.IsExist == 1\r\n || this.PondStage1?.IsExist == 1 || this.PondStage2?.IsExist == 1 || this.PondStage3?.IsExist == 1){\r\n this.showSubsidyDetails = true;\r\n }else{\r\n this.showSubsidyDetails = false;\r\n }\r\n }else{\r\n this.FSTVDetails = null;\r\n this.STVDetails = null;\r\n this.STFDetails = null;\r\n this.RTFDetails = null;\r\n this.PondStage1 = null;\r\n this.PondStage2 = null;\r\n this.PondStage3 = null;\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n onPrint(divName) {\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n document.body.style.visibility = 'hidden';\r\n document.getElementById(divName).style.visibility = 'visible';\r\n window.print();\r\n document.body.style.visibility = 'visible';\r\n }\r\n\r\n public viewWorkFlowAllStatus: boolean = false;\r\n workFlowAllStatus() {\r\n this.viewWorkFlowAllStatus = true;\r\n // \r\n // this.router.navigate([\r\n // `dashboard/${this.route.snapshot.paramMap.get(\r\n // 'appId'\r\n // )}`,\r\n // ]);\r\n }\r\n\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(\r\n this.rotatableFilePath\r\n );\r\n }\r\n\r\n onCloseDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n\r\n // onPrintSanctionLetter(divName) {\r\n // this.isPrintClicked = true;\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n // }\r\n\r\n imageClick(index: number, val) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n this.imgVal = val;\r\n }\r\n\r\n imageClick1(index: number, val) {\r\n this.activeIndex = index;\r\n this.displayCustom1 = true;\r\n this.imgVal = val;\r\n }\r\n\r\n //pre-estimation\r\n getPreEstimationData(appId, programId) {\r\n if (appId && programId) {\r\n this.deptDashBoardService\r\n .getApplicationDataOfPreEstimation(appId, programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.preEstimateDetails = data;\r\n\r\n if (\r\n this.preEstimateDetails.CropTypeID &&\r\n this.preEstimateDetails.CropId\r\n ) {\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeID) {\r\n // this.selectedCropType = res.label;\r\n let crop = res.children;\r\n crop.forEach((res2) => {\r\n if (res2.data === data.CropId) {\r\n this.preEstimateDetails = {\r\n ...data,\r\n selectedCropType: res?.label,\r\n selectedCrop: res2.label,\r\n };\r\n // this.selectedCrop = res2.label;\r\n }\r\n });\r\n return;\r\n }\r\n });\r\n }\r\n\r\n if (this.preEstimateDetails.listGPSCoordinates.length > 0) {\r\n this.showMapPreEstimate = true;\r\n\r\n let preEstimateOption = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n };\r\n\r\n preEstimateOption.center = {\r\n \"lat\": this.preEstimateDetails.listGPSCoordinates[0][0]?.Latitude,\r\n \"lng\": this.preEstimateDetails.listGPSCoordinates[0][0]?.Longitude\r\n };\r\n let preEatimateOverlays = [];\r\n\r\n // add marker\r\n this.preEstimateDetails.listGPSCoordinates.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n preEatimateOverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.Latitude, lng: row?.Longitude },\r\n title: `${row?.CornerID}`,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n });\r\n })\r\n\r\n // add overlay\r\n\r\n // preEatimateOverlays.forEach((val, index) => {\r\n // if(val?.fillColor){\r\n // preEatimateOverlays.splice(index, 1);\r\n // }\r\n // })\r\n \r\n this.preEstimateDetails.listGPSCoordinates.forEach(arr => {\r\n let arr1 = arr.map(val => ({\r\n lat: val?.Latitude,\r\n lng: val?.Longitude\r\n }))\r\n preEatimateOverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr1,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n\r\n this.preEstimateDetails = {\r\n ...this.preEstimateDetails,\r\n newGPSArray: {\r\n gpsArray : this.preEstimateDetails.listGPSCoordinates,\r\n preEatimateOverlays : preEatimateOverlays,\r\n preEstimateOption: preEstimateOption\r\n } \r\n } \r\n } else {\r\n this.showMapPreEstimate = false;\r\n }\r\n\r\n this.preEstimationDataArray.push(this.preEstimateDetails);\r\n },\r\n error: () => {},\r\n });\r\n }\r\n }\r\n\r\n getMIEstimationData(appId, vendorId, programId) {\r\n if (appId && vendorId && programId) {\r\n this.deptDashBoardService\r\n .getVendorMIEstimation(this.appId, vendorId, programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.CropTypeID && data?.CropID) {\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeID) {\r\n // this.selectedCropType = res.label;\r\n let crop = res.children;\r\n crop.forEach((res2) => {\r\n if (res2.data === data.CropID) {\r\n data = {\r\n ...data,\r\n selectedCropType: res?.label,\r\n selectedCrop: res2.label,\r\n };\r\n // this.selectedCrop = res2.label;\r\n }\r\n });\r\n return;\r\n }\r\n });\r\n }\r\n\r\n // if(data?.EstimationComponentDetail && data?.EstimationComponentDetail.length > 0){\r\n // data?.EstimationComponentDetail.map(val => ({\r\n // ...val,\r\n // totalCost: val.Price*val.Quantity\r\n // }))\r\n // let componentTotal = 0;\r\n // data?.EstimationComponentDetail.forEach(val => {\r\n // componentTotal += val.Price*val.Quantity;\r\n // })\r\n\r\n // data = {\r\n // ...data,\r\n // componentTotal: componentTotal\r\n // }\r\n // }\r\n\r\n if(data?.AppID){\r\n this.miEstimationDataArray.push(data);\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getExistingMIDetails(appId){\r\n this._dashboardService.getExistingMIDetails(appId).subscribe((res) =>{\r\n this.existingMIDetails = res;\r\n })\r\n }\r\n\r\n getSanctionLetterData(appId, progID) {\r\n this.challanMIService\r\n .getSanctionLetterData(appId, progID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.sanctionLetterDataArray.push(res);\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getMIBOQData(appId, vendorId, programId) {\r\n if (appId && vendorId && programId) {\r\n this.deptDashBoardService\r\n .getVendorMIBOQ(this.appId, vendorId, programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.appDetails = data;\r\n // this.vendorApplicationDetails = data;\r\n if (data?.BoqStatus == 1) {\r\n this.miBOQDataArray.push(data);\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getPhysicalSurveyData(autoId, userId) {\r\n if (autoId && userId) {\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification(autoId, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.calculatedSubsidyDataForMIPhys = data;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n complete: () => {\r\n // this.loader.start();\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification_CalculatedSubsidy(\r\n autoId,\r\n userId\r\n )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data['PhySurveyStatus'] == 1) {\r\n\r\n // data = {\r\n // ...data,\r\n // listGPSCoordinatesXEN : [[\r\n // {\r\n // \"CornerID\": 1,\r\n // \"Latitude\": 29.718053817749,\r\n // \"Longitude\": 75.54434967041,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // },\r\n // {\r\n // \"CornerID\": 2,\r\n // \"Latitude\": 29.717578887939,\r\n // \"Longitude\": 75.544364929199,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // },\r\n // {\r\n // \"CornerID\": 3,\r\n // \"Latitude\": 29.717555999756,\r\n // \"Longitude\": 75.545417785645,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // },\r\n // {\r\n // \"CornerID\": 4,\r\n // \"Latitude\": 29.718078613281,\r\n // \"Longitude\": 75.545471191406,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // }\r\n // ]],\r\n // listGPSCoordinatesJE : [[\r\n // {\r\n // \"CornerID\": 1,\r\n // \"Latitude\": 29.718053817749,\r\n // \"Longitude\": 75.54434967041,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // },\r\n // {\r\n // \"CornerID\": 2,\r\n // \"Latitude\": 29.717578887939,\r\n // \"Longitude\": 75.544364929199,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // },\r\n // {\r\n // \"CornerID\": 3,\r\n // \"Latitude\": 29.717555999756,\r\n // \"Longitude\": 75.545417785645,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // },\r\n // {\r\n // \"CornerID\": 4,\r\n // \"Latitude\": 29.718078613281,\r\n // \"Longitude\": 75.545471191406,\r\n // \"UserId\": \"JEFatehabad2\"\r\n // }\r\n // ]]\r\n // }\r\n\r\n this.physicalSurveyDetails = data;\r\n\r\n if (this.physicalSurveyDetails.listGPSCoordinatesJE.length > 0) {\r\n this.showMapJE = true;\r\n\r\n let jeOption = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n };\r\n \r\n jeOption.center = {\r\n \"lat\": this.physicalSurveyDetails.listGPSCoordinatesJE[0][0]?.Latitude,\r\n \"lng\": this.physicalSurveyDetails.listGPSCoordinatesJE[0][0]?.Longitude\r\n };\r\n let jeOverlays = [];\r\n \r\n // add marker\r\n this.physicalSurveyDetails.listGPSCoordinatesJE.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n jeOverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.Latitude, lng: row?.Longitude },\r\n title: `${row?.CornerID}`,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n });\r\n })\r\n \r\n // add overlay\r\n this.physicalSurveyDetails.listGPSCoordinatesJE.forEach(arr => {\r\n let arr1 = arr.map(val => ({\r\n lat: val?.Latitude,\r\n lng: val?.Longitude\r\n }))\r\n\r\n jeOverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr1,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n newGPSjeArray: {\r\n gpsArray : this.physicalSurveyDetails.listGPSCoordinatesJE,\r\n overlaysJE : jeOverlays,\r\n optionsJE: jeOption\r\n } \r\n } \r\n \r\n } else {\r\n this.showMapJE = false;\r\n }\r\n\r\n if (this.physicalSurveyDetails.listGPSCoordinatesXEN.length > 0) {\r\n this.showMapXEN = true;\r\n\r\n let xenOption = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n };\r\n \r\n xenOption.center = {\r\n \"lat\": this.physicalSurveyDetails.listGPSCoordinatesXEN[0][0]?.Latitude,\r\n \"lng\": this.physicalSurveyDetails.listGPSCoordinatesXEN[0][0]?.Longitude\r\n };\r\n let xenOverlays = [];\r\n \r\n // add marker\r\n this.physicalSurveyDetails.listGPSCoordinatesXEN.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n xenOverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.Latitude, lng: row?.Longitude },\r\n title: `${row?.CornerID}`,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n });\r\n })\r\n \r\n // add overlay\r\n this.physicalSurveyDetails.listGPSCoordinatesXEN.forEach(arr => {\r\n let arr1 = arr.map(val => ({\r\n lat: val?.Latitude,\r\n lng: val?.Longitude\r\n }))\r\n xenOverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr1,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n newGPSxenArray: {\r\n gpsArray : this.physicalSurveyDetails.listGPSCoordinatesXEN,\r\n overlaysXEN : xenOverlays,\r\n optionsXEN: xenOption\r\n } \r\n } \r\n \r\n } else {\r\n this.showMapXEN = false;\r\n }\r\n\r\n if (this.physicalSurveyDetails?.listGPSCoordinatesSDO?.length > 0) {\r\n this.showMapSDO = true;\r\n\r\n let sdoOption = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n };\r\n \r\n sdoOption.center = {\r\n \"lat\": this.physicalSurveyDetails?.listGPSCoordinatesSDO[0][0]?.Latitude,\r\n \"lng\": this.physicalSurveyDetails?.listGPSCoordinatesSDO[0][0]?.Longitude\r\n };\r\n let sdoOverlays = [];\r\n \r\n // add marker\r\n this.physicalSurveyDetails?.listGPSCoordinatesSDO.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n sdoOverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.Latitude, lng: row?.Longitude },\r\n title: `${row?.CornerID}`,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n });\r\n })\r\n \r\n // add overlay\r\n this.physicalSurveyDetails?.listGPSCoordinatesSDO.forEach(arr => {\r\n let arr1 = arr.map(val => ({\r\n lat: val?.Latitude,\r\n lng: val?.Longitude\r\n }))\r\n sdoOverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr1,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n newGPSsdoArray: {\r\n gpsArray : this.physicalSurveyDetails?.listGPSCoordinatesSDO,\r\n overlaysSDO : sdoOverlays,\r\n optionsSDO: sdoOption\r\n } \r\n } \r\n \r\n } else {\r\n this.showMapSDO = false;\r\n }\r\n\r\n\r\n if (this.calculatedSubsidyDataForMIPhys) {\r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n calculatedSubsidyDataForMIPhys:\r\n this.calculatedSubsidyDataForMIPhys,\r\n };\r\n this.physicalSurveyDetailsArray.push(\r\n this.physicalSurveyDetails\r\n );\r\n } else {\r\n this.physicalSurveyDetailsArray.push(\r\n this.physicalSurveyDetails\r\n );\r\n }\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Form Not Loaded' });\r\n },\r\n });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getCalculatedSubsidyDataForMIPhys(autoId, userId) {\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification(autoId, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.calculatedSubsidyDataForMIPhys = data;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n });\r\n }\r\n\r\n challanPaymentDetails(appId){\r\n // this.loader.start();\r\n let sub = this.deptDashBoardService \r\n .getChallanPaymentDetails(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n if(data && data.length>0){\r\n this.showFarmerShareDepositeDetails = true;\r\n this.farmerShareDepositeDetails = data[0][0];\r\n }else{\r\n this.showFarmerShareDepositeDetails = false;\r\n this.farmerShareDepositeDetails = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data Not Found',\r\n // });\r\n }\r\n },\r\n error: (err) => {\r\n this.showFarmerShareDepositeDetails = false;\r\n this.farmerShareDepositeDetails = [];\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n maskNumber(number:any) {\r\n let id = number.toString();\r\n if(id){\r\n return id.slice(0, -4).replace(/./g, 'X') + id.slice(-4); //regex used here\r\n }\r\n return null \r\n }\r\n\r\n onClickBack(){\r\n this.location.back();\r\n }\r\n\r\n beforeCheckingLandStatus(val){\r\n this.selLandForOwnerdetails = val;\r\n this.displayLandOwnerDialog = true;\r\n }\r\n\r\n submitKewatNo(){\r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = null;\r\n if(this.kewatNo){\r\n this.checkLandStatus(this.selLandForOwnerdetails);\r\n }\r\n }\r\n\r\n checkLandStatus(val){\r\n this.startLoadingAnimation();\r\n // this.displayLandOwnerDialog = true;\r\n let reqBody1 = {\r\n districtCode: val?.R_Dis_Code,\r\n tehsilCode: val?.R_Teh_Code,\r\n nvCode: val?.R_Rev_Code,\r\n khewat: this.kewatNo,\r\n format: \"json\",\r\n farmerId: val?.farmerId\r\n }\r\n\r\n // let reqBody1 = {\r\n // \"districtCode\": \"02\",\r\n // \"tehsilCode\": \"007\",\r\n // \"nvCode\": \"01931\",\r\n // \"khewat\": this.kewatNo,\r\n // \"format\": \"json\"\r\n // }\r\n\r\n // let reqBody2 = { \r\n // \"districtCode\": \"02\", \r\n // \"tehsilCode\": \"007\", \r\n // \"nvCode\": \"01931\", \r\n // \"format\": \"json\"\r\n // }\r\n\r\n // let reqBody2 = {\r\n // districtCode: val?.R_Dis_Code,\r\n // tehsilCode: val?.R_Teh_Code,\r\n // nvCode: val?.R_Rev_Code,\r\n // format: \"json\"\r\n // }\r\n\r\n this.getLandOwnerDetails(reqBody1);\r\n // this.getLandKhewatDetails(reqBody2);\r\n }\r\n\r\n getLandKhewatDetails(reqBody){\r\n this.loader.start();\r\n this.vendorService \r\n .getLandKhewatByKhasra(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.landOwnerDetails = resp;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getLandOwnerDetails(reqBody){\r\n // this.loader.start();\r\n this.isLandOwnerDetFetching = true;\r\n this.vendorService \r\n .getLandOwnersDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => { \r\n this.loader.close();\r\n this.stopLoadingAnimation();\r\n // this.isLandOwnerDetFetching = false;\r\n if (resp?.length > 0) {\r\n this.landOwnerDetails = resp;\r\n this.landOwnerDetailsErrorMsg = null;\r\n\r\n let reqBody1 = {\r\n \"districtCode\": reqBody.districtCode,\r\n \"tehsilCode\": reqBody.tehsilCode,\r\n \"nvCode\": reqBody?.nvCode,\r\n \"khewat\": reqBody?.khewat,\r\n \"format\": \"json\"\r\n }\r\n this.getLandGetAreaByKhewat(reqBody)\r\n this.getKhasraAreaByKhewatNVCode(reqBody1)\r\n\r\n }else{\r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = `Someting went wrong. Please try again. ${resp}`;;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.stopLoadingAnimation();\r\n this.isLandOwnerDetFetching = false;\r\n this.showHiddenButton = false;\r\n this.landOwnerDetailsErrorMsg = `Someting went wrong. Please try again. ${err}`;\r\n this.landOwnerDetails = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n \r\n getKhasraAreaByKhewatNVCode(reqBody) {\r\n // this.loader.start();\r\n this.vendorService\r\n .getKhasraAreaKhewatByNVCODE2Khewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n this.landDetailedInfo = JSON.parse(resp?.msg); \r\n } else {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request2complete = true;\r\n }\r\n });\r\n }\r\n\r\n getLandGetAreaByKhewat(reqBody) {\r\n // this.loader.start();\r\n this.vendorService\r\n .getLandGetAreaByKhewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request2complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n const khewatArea = JSON.parse(resp?.msg)[0]?.area;\r\n const regex = /(\\d+)\\s*Kanal\\s*(\\d+)\\s*Marla/;\r\n const values = khewatArea.match(regex);\r\n\r\n const karnal = values[0] ? parseInt(values[1], 10) : 0;\r\n const marla = values[2] ? parseInt(values[2], 10) : 0;\r\n\r\n this.landOwnerDetails = this.landOwnerDetails.map(val => ({\r\n ...val,\r\n khewat_area: khewatArea,\r\n valKanal: karnal,\r\n valMarla: marla,\r\n totalArea_InAcres: ((karnal * 20) + marla)/20*0.125,\r\n owner_hissa: ((karnal * 20) + marla)*((val?.Bhag).split('/').map(Number)[0]/(val?.Bhag).split('/').map(Number)[1])/20*0.125,\r\n }));\r\n } else {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request1complete = true;\r\n }\r\n });\r\n }\r\n\r\n startLoadingAnimation(): void {\r\n this.interval = setInterval(() => {\r\n this.dotCount = (this.dotCount + 1) % (this.maxDots + 1);\r\n this.loadingText = `Fetching Owner Details from Land Revenue Department${'.'.repeat(this.dotCount)}`;\r\n }, 500); // Adjust the interval (in ms) to control the speed of the animation\r\n }\r\n\r\n stopLoadingAnimation(): void {\r\n if (this.interval) {\r\n clearInterval(this.interval);\r\n }\r\n }\r\n\r\n onCloseLandOwnerDialog(){\r\n this.displayLandOwnerDialog = false;\r\n this.stopLoadingAnimation();\r\n this.selLandForOwnerdetails = null;\r\n this.kewatNo = null;\r\n \r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = null;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
{{'FARMER_APPLICATION_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

{{'FARMER_APPLICATION_FORM_FOR_MICRO_IRRIGATION_SCHEME' | translate}}

\r\n

{{'REG_DATE' | translate}} : {{ applicationDetails?.RegDate | date: \"mediumDate\" }}

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'APPLICATION_NO' | translate}}

\r\n

{{ applicationDetails.APP_ID }}

\r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ applicationDetails?.FincialYear }}

\r\n
\r\n

{{'SCHEME_NAME' | translate}}

\r\n

\r\n {{ applicationDetails.Scheme_Code }}\r\n

\r\n
\r\n
\r\n\r\n \r\n \r\n
{{'PERSONAL_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FARMER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Name }}

\r\n
\r\n

{{'FATHER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Father_name }}

\r\n
\r\n

{{'MOTHER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Mother_Name }}

\r\n
\r\n

{{'SEX' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Gender }}

\r\n
\r\n

{{'DATE_OF_BIRTH' | translate}}

\r\n

\r\n {{\r\n applicationDetails.FarmerPersonalData.DOB\r\n | date: \"mediumDate\"\r\n }}\r\n

\r\n
\r\n

{{'MOBILE' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Mobile }}

\r\n
\r\n

{{'EMAIL' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Email_ID }}

\r\n
\r\n

{{'AADHAR_NO' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Aadhar_No }}

\r\n \r\n
\r\n

{{'VILLAGE' | translate}}

\r\n

\r\n {{ applicationDetails.FarmerPersonalData.Village_Code }}\r\n

\r\n
\r\n

{{'BLOCK' | translate}}

\r\n

\r\n {{ applicationDetails.FarmerPersonalData.Block }}\r\n

\r\n
\r\n

{{'DISTRICT' | translate}}

\r\n

\r\n {{ applicationDetails.FarmerPersonalData.District }}\r\n

\r\n
\r\n

{{'CASTE' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Caste_Code }}

\r\n \r\n
\r\n

{{'ADDRESS' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Address }}

\r\n
\r\n

{{'PINCODE' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Pin_Code }}

\r\n
\r\n

{{'PPP_ID' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.PPP_ID }}

\r\n \r\n
\r\n

{{'MFMB_NO' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.MFMBNo }}

\r\n
\r\n

{{'APPLICATION_TYPE' | translate}}

\r\n

{{ applicationDetails?.AppType }}

\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n 0\r\n \">\r\n
{{'MEMBER_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'MEMBER_NO' | translate}}{{'NAME' | translate}}{{'FATHER_NAME' | translate}}{{'MOTHER_NAME' | translate}}{{'GENDER' | translate}}{{'DATE_OF_BIRTH' | translate}}{{'CASTE' | translate}}{{'ADDRESS' | translate}}{{'PPP_ID' | translate}}{{'ID_PROOF_FILE_PATH' | translate}}{{'AADHAR_COPY' | translate}}
{{ item.memberID }}{{ item.Name }}{{ item.Father_name }}{{ item.Mother_Name }}{{ item.Gender }}{{ item.DOB }}{{ item.Caste_Code }}{{ item.Address }}{{ item.PPP_ID }}{{'VIEW_ID_PROOF' | translate}}{{'VIEW_AADHAR_COPY' | translate}}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'LAND_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CHECK_OWNER_DETAILS_WITH_LAND_REVENUE_DEPARTMENT' | translate}}{{'MEMBER_SNO' | translate}}{{'OWNER_NAME' | translate}}{{'VILLAGE' | translate}}{{'KHEWAT' | translate}}{{'KHEWAT_AREA' | translate}}{{'KHEWAT_BHAG' | translate}}{{'OWNER_HISSA_IN_KHEWAT' | translate}}{{'MORABBA_NO' | translate}}{{'KILLA_NO' | translate}}{{'TOTAL_KANALS' | translate}}{{'TOTAL_MARLAS' | translate}}{{'APPLIED_KANALS' | translate}}{{'APPLIED_MARLAS' | translate}}{{'APPLIED_AREA' | translate}}{{'CROP_TYPE' | translate}}{{'YEAR' | translate}}{{'LAND_DOC' | translate}}
\r\n
\r\n \r\n
\r\n
{{ item?.memberID }}{{ item?.OwnerName }}{{ item?.Village }}{{ item?.Khewat }}{{ item?.KhewatArea }}{{ item?.Bhag }}{{ item?.OwnerHissa }}{{ item?.morabbaNo }}{{ item?.killaNo }}{{ item?.TotalkanalinKhasra }}{{ item?.TotalmarlainKhasra }}{{ item?.kanal }}{{ item?.marla }}{{ item?.totalArea }}{{ item?.cropType }}{{ item?.Year }}\r\n \r\n
\r\n

{{'N/A' |\r\n translate}}

\r\n
\r\n
{{'GRAND_TOTAL_AREA' | translate}}{{ totalLandArea | number : '1.2-2'}} {{'ACRE' | translate}}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0 \">\r\n
{{'EXISTING_MI_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'PROGRAM_NAME' | translate}}{{'MORABBA_NO' | translate}}{{'KILLA_NO' | translate}}{{'TOTAL_AREA_IN_ACRE' | translate}}{{'IS_SUBSIDY_AVAIL' | translate}}{{'YEAR' | translate}}
{{ item?.ProgrammeName }}{{ item?.Morabba_No }}{{ item?.Killa_No }}{{ item?.TotalArea }}{{ item?.Is_Subsidy_Avail }}{{ item?.Year_subsidy }}
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'BANK_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'BANK_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerBank.bankName }}

\r\n
\r\n

{{'ACCOUNT_NO' | translate}}

\r\n

{{ applicationDetails.FarmerBank.accoNumber }}

\r\n
\r\n

{{'ACCOUNT_HOLDER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerBank.accoHolderName }}

\r\n
\r\n

{{'IFSC_CODE' | translate}}

\r\n

{{ applicationDetails.FarmerBank.ifcsCode }}

\r\n
\r\n

{{'PASSBOOK_IMAGE' | translate}}

\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'ON_FARM_POND_TANK_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'MORABBA_NO' | translate}}{{'KILLA_NO' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}{{'TOP_SIZE' | translate}}{{'BOTTOM_SIZE' | translate}}{{'DEPTH' | translate}}{{'WATER_CAPACITY' | translate}}{{'TOTAL_COST' | translate}}{{'SCAN_COPY' | translate}}
{{ item.morabbaNo }}{{ item.killaNo }}{{ item.latitude }}{{ item.longitude }}{{ item.topSize }}{{ item.bottomSize }}{{ item.dept }}{{ item.waterCapacity }}{{ item.totalCost }}\r\n {{'VIEW_SIGNATURED_COLLECTIVE_DECLARATION' | translate}}\r\n {{'EMPTY' | translate}}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'ON_FARM_SOLAR_PUMP' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CONTROLLER_TYPE' | translate}}{{'PUMP_CATEGORY' | translate}}{{'TYPE' | translate}}{{'PUMP_CAPACITY' | translate}}{{'FARMER_SHARE' | translate}}{{'PRIMARY_VENDOR' | translate}}{{'SECONDARY_VENDOR' | translate}}
{{ item.controlerType }}{{ item.pumpCategory }}{{ item.type }}{{ item.pumpCapacity }}{{ item.farmerShare }}{{ item.primaryVendor }}{{ item.secondaryVendor }}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
\r\n {{'ON_FARMER_MI_COMPONENTS_AND_VENDOR_DETAILS' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'PROGRAMME_NAME' | translate}}{{'LAND_DATA' | translate}}{{'VENDOR_NAME' | translate}}{{'TOTAL_AREA_IN_ACRE' | translate}}
{{ item.programName }}{{ item.landData }}{{ item.miVendorName }}{{ item.totalArea }}
\r\n\r\n
\r\n

\r\n {{'GRAND_TOTAL_AREA' | translate}}: {{ totalArea | number: \"1.2-2\" }} {{ 'ACRE' | translate}} \r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'WATER_COURSE_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CANAL' | translate}}{{'OUTLET' | translate}}{{'WORK_TYPE' | translate}}
{{ item?.Canal_Outlet_Name }}{{ item?.RD }}{{ item?.WorkTypeName }}
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
0\">\r\n
\r\n

{{'PRE_ESTIMATE_SURVEY' | translate}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n

{{'APP_ID' | translate}}

\r\n

{{ preEstimateDetails?.AppID }}

\r\n
\r\n

{{'PROGRAMME_NAME' | translate}}

\r\n

{{ preEstimateDetails?.ProgramName }}

\r\n
\r\n

{{'SOIL_TYPE' | translate}}

\r\n

{{ preEstimateDetails?.SoilType }}

\r\n
\r\n

{{'CROP_TYPE' | translate}}

\r\n

\r\n {{ preEstimateDetails?.selectedCropType }}\r\n

\r\n
\r\n

{{'CROP_NAME' | translate}}

\r\n

\r\n {{ preEstimateDetails?.selectedCrop }}\r\n

\r\n
\r\n

{{'WATER_SOURCE' | translate}}

\r\n

{{ preEstimateDetails?.WaterSource }}

\r\n
\r\n

{{'WATER_PRESSURE' | translate}}

\r\n

{{ preEstimateDetails?.WaterPressure }}

\r\n
\r\n

{{'WATER_QUALITY' | translate}}

\r\n

{{ preEstimateDetails?.WaterQuality }}

\r\n
\r\n

{{'WATER_REQ' | translate}}

\r\n

{{ preEstimateDetails?.WaterQuantity }}

\r\n
\r\n

{{'PH' | translate}}

\r\n

{{ preEstimateDetails?.PH }}

\r\n
\r\n

{{'EC' | translate}}

\r\n

{{ preEstimateDetails?.EC }}

\r\n
\r\n

{{'DATE_OF_SURVEY' | translate}}

\r\n

{{ preEstimateDetails?.DateOfSurvey }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ preEstimateDetails?.PlantSpacing }}

\r\n
\r\n

{{'ROW_SPACING' | translate}}

\r\n

{{ preEstimateDetails?.RowSpacing }}

\r\n
\r\n
0\">\r\n
\r\n {{'LIST_GPS_COORDINATES' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
{{'LIST_IMAGE_PATH' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'MI_ESTIMATION' | translate}}

\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
{{'ESTIMATION_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'VENDOR_NAME' | translate}}

\r\n

{{ vendorApplicationDetails?.VendorName }}

\r\n
\r\n

{{'PROGRAMME_NAME' | translate}}

\r\n

{{ vendorApplicationDetails?.ProgrammeName }}

\r\n
\r\n

{{'FARMER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.FarmerShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'COMPONENT_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.ComponentAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'DISCOUNT_RATE' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.DiscountRate | number: \"1.2-2\" }}

\r\n
\r\n

{{'OTHER_TRANSPORT_EXPENSES' | translate}}

\r\n

\r\n {{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.TransportOtherExpenses | number: \"1.2-2\" }}\r\n

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ vendorApplicationDetails?.MIArea }}

\r\n
\r\n

{{'LAND_MAP_PATH' | translate}}

\r\n

\r\n {{ \"VIEW_DOC\" | translate}}\r\n

\r\n
\r\n

{{'SIGNATURE' | translate}}

\r\n

\r\n {{ \"VIEW_DOC\" | translate}}\r\n

\r\n
\r\n

{{'CROP_TYPE' | translate}}

\r\n

{{ vendorApplicationDetails?.selectedCropType }}

\r\n
\r\n

{{'CROP_NAME' | translate}}

\r\n

{{ vendorApplicationDetails?.selectedCrop }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ vendorApplicationDetails?.PlantSpacing }}

\r\n
\r\n

{{'ROW_SPACING' | translate}}

\r\n

{{ vendorApplicationDetails?.RowSpacing }}

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{ vendorApplicationDetails?.Remarks }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n 0\r\n \">\r\n
{{'ESTIMATIONS_COMPONENT_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CAT_NAME' | translate}}{{'COMPONENT_NAME' | translate}}{{'SIZE' | translate}}{{'PRICE' | translate}}{{'QUANTITY' | translate}}{{'TOTAL_COST_IN_INR' | translate}}
{{ item.CatName }}{{ item.ComponentName }}{{ item.Size }}{{ 'INR_SYMBOL' | translate }}{{ item.Price }}{{ item.Quantity }}{{ 'INR_SYMBOL' | translate }}{{ item.Price*item.Quantity | number: \"1.2-2\" }}
\r\n
\r\n

\r\n {{'COMPONENT_TOTAL' | translate}}: {{ 'INR_SYMBOL' | translate }}{{\r\n vendorApplicationDetails?.ComponentAmount/(1-vendorApplicationDetails?.DiscountRate/100) | number:\r\n \"1.2-2\" }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'FARMER_SHARE_DEPOSIT_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'REMITTER_NAME' | translate}}

\r\n

{{ farmerShareDepositeDetails?.RemitterName }}

\r\n
\r\n

{{'CREDIT_DATE_TIME' | translate}}

\r\n

{{ farmerShareDepositeDetails?.CreditDateTime | date:'medium' }}

\r\n
\r\n

{{'FROM_ACCOUNT_NO' | translate}}

\r\n

{{ farmerShareDepositeDetails?.FromAccountNumber }}

\r\n
\r\n

{{'UTR' | translate}}

\r\n

{{ farmerShareDepositeDetails?.UTR }}

\r\n
\r\n

{{'DEPOSIT_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ farmerShareDepositeDetails?.Deposit_Amount }}

\r\n
\r\n

{{'REFERENCE_ID' | translate}}

\r\n

{{ farmerShareDepositeDetails?.ReferenceID }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'SANCTION_LETTER' | translate}}

\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n {{'SANCTION_LETTER' | translate}} \r\n
\r\n {{'HARYANA' | translate}}
\r\n {{'FINANCIAL_YEAR_2022_2023' | translate}} \r\n
\r\n
\r\n\r\n
\r\n {{'BASED_ON_DOCUMENTS' | translate}} {{ sanctionLetterData?.FarmerName }} {{'SON_OF' |\r\n translate}}\r\n {{ sanctionLetterData?.FatherName }} {{'VILLAGE' | translate}}\r\n {{ sanctionLetterData?.Village }} {{'DISTRICT' | translate}}\r\n {{ sanctionLetterData?.District }} {{'SANCTION_MSG' | translate}}:-\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'APPLICATION_ID' | translate}}

\r\n

{{ sanctionLetterData?.AppID }}

\r\n
\r\n

{{'AREA_IN' | translate}}

\r\n

{{ sanctionLetterData?.Area }}

\r\n
\r\n

{{'KHASRA_NO_OR_KILLA_NO' | translate}}

\r\n

{{ sanctionLetterData?.KhasraAndKillaNo }}

\r\n
\r\n

{{'CROP' | translate}}

\r\n

{{ sanctionLetterData?.CropName }}

\r\n
\r\n

{{'SPACING_MTS' | translate}}

\r\n

{{ sanctionLetterData?.Spacing }}

\r\n
\r\n

{{'TYPE_OF_MIS' | translate}}

\r\n

{{ sanctionLetterData?.TypeOfMIS }}

\r\n
\r\n

*{{'ESTIMATED_COST_OF_SYSTEMS' | translate}}

\r\n

{{ \"INR_SYMBOL\" | translate }}{{ sanctionLetterData?.EstimatedCost | number: \"1.2-2\" }}

\r\n
\r\n

{{'ESTIMATED_FARMER_SHARE' | translate}}

\r\n

{{ \"INR_SYMBOL\" | translate }}{{ sanctionLetterData?.EstimatedFarmerShare | number: \"1.2-2\" }}

\r\n
\r\n

{{'SUBSIDY_SHARE_AS_PER_SCHEME' | translate}}

\r\n

{{ \"INR_SYMBOL\" | translate }}{{ sanctionLetterData?.SubsidyShare | number: \"1.2-2\" }}

\r\n
\r\n

{{'FARMER_TYPE' | translate}}

\r\n

{{ sanctionLetterData?.FarmerType }}

\r\n
\r\n

{{'CATEGORY' | translate}}

\r\n

{{ sanctionLetterData?.Category }}

\r\n
\r\n

\r\n {{'AMOUNT_OF_FARMER_SHARE' | translate}}: {{ \"INR_SYMBOL\" | translate }}\r\n {{ sanctionLetterData?.EstimatedFarmerShare }}\r\n

\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{'BANK_ACCOUNT_DETAILS' | translate}}\r\n
\r\n\r\n
\r\n

\r\n {{'NAME_OF_FARMER_AS_IN_BANK_ACCOUNT' | translate}}:\r\n {{ sanctionLetterData?.NameOfFarmerAsOnBankAcc }}\r\n

\r\n

{{'NAME_OF_BANK' | translate}}: {{ sanctionLetterData?.NameOfBank }}

\r\n

{{'IFSC_CODE' | translate}}: {{ sanctionLetterData?.IFSCCode }}

\r\n

{{'ACCOUNT_NO'| translate}}.: {{ sanctionLetterData?.AccountNo }}

\r\n

{{'BRANCH_NAME' | translate}}: {{ sanctionLetterData?.BranchName }}

\r\n
\r\n\r\n
\r\n

{{'TO_' | translate}}

\r\n
\r\n

\r\n {{'SRI_SMT' | translate}}, {{ sanctionLetterData?.FarmerName }} S/o\r\n {{ sanctionLetterData?.FatherName }} Vill.\r\n {{ sanctionLetterData?.Village }} District\r\n {{ sanctionLetterData?.District }}\r\n

\r\n

{{'REGISTERED_MANUFACTURER' | translate}} {{ sanctionLetterData?.VendorName }}

\r\n

{{'DISTRICT_OFFICER_INCHARGE_OF_MI' | translate}} {{ sanctionLetterData?.XENName }} \r\n (XEN {{ sanctionLetterData?.XENDistrict }})\r\n

\r\n
\r\n
\r\n
\r\n
\r\n

\r\n *{{'NOTE' | translate}}: {{\"AMOUNT_OF_ASSISTANCE_PHYSICAL_VERIFICATION\" | translate}}.
\r\n                  \r\n {{'APPROVED_MAX_ASSISTANCE' | translate}}.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'MI_BOQ' | translate}}

\r\n
\r\n
\r\n \r\n
{{'BOQ_DETAILS' | translate}}
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'PROGRAMME_NAME' | translate}}

\r\n

{{ appDetails?.ProgrammeName }}

\r\n
\r\n

{{'FARMER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.FarmerShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'BILLED_COMPONENT_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.ComponentAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'BILL_COPY' | translate}}

\r\n

\r\n {{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n

{{'DISCOUNT_RATE' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.DiscountRate | number: \"1.2-2\" }}

\r\n
\r\n

{{'OTHER_TRANSPORT_EXPENSES' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.TransportOtherExpenses | number: \"1.2-2\" }}

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ appDetails?.MIArea }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ appDetails?.PlantSpacing }}

\r\n
\r\n

{{'ROW_SPACING' | translate}}

\r\n

{{ appDetails?.RowSpacing }}

\r\n
\r\n

{{'LAND_MAP_PATH' | translate}}

\r\n

\r\n {{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{ appDetails?.Remarks }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n 0\r\n \">\r\n
{{'BOQ_COMPONENT_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\">\r\n \r\n \r\n \r\n
{{'CAT_NAME' | translate}}{{'COMPONENT_NAME' | translate}}{{'SIZE' | translate}}{{'PRICE' | translate}}{{'QUANTITY' | translate}}{{'TOTAL_COST_IN_INR' | translate}}
{{ item.CatName }}{{ item.ComponentName }}{{ item.Size }}{{ 'INR_SYMBOL' | translate }}{{ item.Price }}{{ item.Quantity }}{{ 'INR_SYMBOL' | translate }}{{ item.Price*item.Quantity | number: \"1.2-2\" }}
\r\n
{{item.ComponentName}} - Inventory\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Lot NoBatch NoQuantity UsedRemaining Quantity
{{rowdata.lotNo}}{{rowdata.batchNumber}}{{rowdata.QuantityUsed}}{{rowdata.remainingQuantity}}
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{'COMPONENT_TOTAL' | translate}}: {{ 'INR_SYMBOL' | translate }}{{ appDetails?.ComponentAmount/(1-appDetails?.DiscountRate/100)\r\n | number: \"1.2-2\" }} \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'MI_PHYSICAL_SURVEY/VERIFICATION' | translate}}

\r\n
\r\n
\r\n \r\n
\r\n {{'MI_SURVEY_DETAILS' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n

{{'TOTAL_COST_OF_VERIFICATION' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.TotalCostVerification | number: \"1.2-2\" }}

\r\n
\r\n

{{'FARMER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.FarmerShare | number: \"1.2-2\" }}

\r\n
\r\n

{{'TRANSPORT_OTHER_CHARGES' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.BilledTransportAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ physicalSurveyDetails?.MIArea | number: \"1.2-2\" }}

\r\n
\r\n

{{'TOTAL_COST_IN_INR' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.TotalCostVerification | number: \"1.2-2\" }}

\r\n
\r\n

{{'CHALLAN_TYPE' | translate}}

\r\n

\r\n {{ physicalSurveyDetails?.ChallanType }}\r\n

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ physicalSurveyDetails?.PlantSpacing | number: \"1.2-2\" }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ physicalSurveyDetails?.RowSpacing | number: \"1.2-2\" }}

\r\n
\r\n

{{'MAX_SUBSIDY' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.ProData_MaxSubsidy | number: \"1.2-2\"}}

\r\n
\r\n

{{'LAND_DETAILS' | translate}}

\r\n

{{ physicalSurveyDetails?.LandDetail }}

\r\n
\r\n

{{'JE_NAME' | translate}}

\r\n

{{ physicalSurveyDetails?.JEName }}

\r\n
\r\n

{{'XEN_NAME' | translate}}

\r\n

{{ physicalSurveyDetails?.XENName }}

\r\n
\r\n

{{'JE_REMARKS' | translate}}

\r\n

{{ physicalSurveyDetails?.JERemarks }}

\r\n
\r\n

{{'XEN_REMARKS' | translate}}

\r\n

{{ physicalSurveyDetails?.XENRemarks }}

\r\n
\r\n

{{'SURVEY_TYPE_(XEN)' | translate}}

\r\n

{{ physicalSurveyDetails?.SurveyType == 0 ? \"From Office\": \"From Field\" }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n 0\r\n \">\r\n
{{'MI_SURVEY_COMPONENT_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CAT_NAME' | translate}}{{'COMPONENT_NAME' | translate}}{{'SIZE' | translate}}{{'PRICE' | translate}}{{'QUANTITY' | translate}}{{'TOTAL_COST_IN_INR' | translate}}
{{ item.ProgrammeName }}{{ item.component }}{{ item.size }}{{ 'INR_SYMBOL' | translate }}{{ item.Price }}{{ item.ActualQuantity }}{{ 'INR_SYMBOL' | translate }}{{ item.Price*item.ActualQuantity }}
\r\n
\r\n

\r\n {{'COMPONENT_TOTAL' | translate}}: {{ 'INR_SYMBOL' | translate }}{{ (physicalSurveyDetails?.TotalCostVerification -\r\n physicalSurveyDetails?.BilledTransportAmount) | number: \"1.2-2\" }} \r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
0\">\r\n
0\">\r\n {{'LIST_GPS_COORDINATES_JE' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
0\">{{'LIST_IMAGE_PATH_JE' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\">\r\n
0\">\r\n {{'LIST_GPS_COORDINATES_SDO' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
0\">{{'LIST_IMAGE_PATH_SDO' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\">\r\n
0\">\r\n {{'LIST_GPS_COORDINATES_XEN' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
0\">{{'LIST_IMAGE_PATH_XEN' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'MI_CALCULATED_SUBSIDY_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.StateShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.CenterShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'SUBSIDY_TO_FARMER_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.SubsidyToFarmerAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'SUBSIDY_TO_VENDOR_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.SubsidyToVendorAmount }}

\r\n
\r\n

{{'FARMER_REFUND_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.FarmerRefundAmount }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
{{'TANK_STAGE1' | translate}}
\r\n
\r\n
\r\n \r\n
{{'TANK_STAGE1_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{PondVerData?.topLength | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{PondVerData?.topBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{PondVerData?.bottomLength | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{PondVerData?.bottomBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{PondVerData?.topSize | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{PondVerData?.bottomSize | number : '1.2-2'}}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{PondVerData?.depth | number : '1.2-2'}}

\r\n
\r\n

{{'VOLUME_EARTH_WORK' | translate}}

\r\n

{{PondVerData?.VolumeEarthWork | number : '1.2-2'}}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{PondVerData?.estimateCost | number : '1.2-2'}}

\r\n
\r\n

{{'LATITUDE' | translate}}

\r\n

{{PondVerData?.tankLat}}

\r\n
\r\n

{{'LONGITUDE' | translate}}

\r\n

{{PondVerData?.tankLng}}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{PondVerData?.ActualSubsidy_Stage1 | number : '1.2-2'}}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{PondVerData?.UserID}}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerData?.StateShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerData?.CenterShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{PondVerData?.Remarks}}

\r\n
\r\n

{{'JE_REMARKS' | translate}}

\r\n

{{PondVerData?.JERemarks}}

\r\n
\r\n

{{'XEN_REMARKS' | translate}}

\r\n

{{PondVerData?.XENRemarks}}

\r\n
\r\n

{{'DA_REMARKS' | translate}}

\r\n

{{PondVerData?.DARemarks}}

\r\n
\r\n

{{'DMICADA_REMARK' | translate}}

\r\n

{{PondVerData?.DMICADAReamrks}}

\r\n
\r\n

{{'ADMIN_REMARK' | translate}}

\r\n

{{PondVerData?.AdminRemarks}}

\r\n
\r\n

{{'UPLOADED_COPY' | translate}}

\r\n

{{'VIEW' | translate}}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
{{'TANK_STAGE1_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
{{'TANK_STAGE2' | translate}}
\r\n
\r\n
\r\n \r\n
{{'TANK_STAGE2_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'TYPE_OF_POND' | translate}}

\r\n

{{PondVerDataStage2?.TypeOfPond}}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{PondVerDataStage2?.topLength | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{PondVerDataStage2?.topBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{PondVerDataStage2?.bottomLength | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{PondVerDataStage2?.bottomBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{PondVerDataStage2?.bottomSize | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{PondVerDataStage2?.topSize | number : '1.2-2'}}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{PondVerDataStage2?.depth | number : '1.2-2'}}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{PondVerDataStage2?.UserID}}

\r\n
\r\n

{{'LATITUDE' | translate}}

\r\n

{{PondVerDataStage2?.tankLat}}

\r\n
\r\n

{{'LONGITUDE' | translate}}

\r\n

{{PondVerDataStage2?.tankLng}}

\r\n
\r\n

{{'TOTAL_ESTIMATED_COST' | translate}}

\r\n

{{PondVerDataStage2?.TotalEstimatedCost | number : '1.2-2'}}

\r\n
\r\n

{{'TOTAL_ESTIMATED_SUBSIDY' | translate}}

\r\n

{{PondVerDataStage2?.TotalEstimatedSubsidy | number : '1.2-2'}}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerDataStage2?.StateShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerDataStage2?.CenterShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'ASSISTANCE_PAID_AT_STAGE2_' | translate}}

\r\n

{{PondVerDataStage2?.AssistancePaidAtStage1}}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{PondVerDataStage2?.ActualSubsidy_Stage1}}

\r\n
\r\n

{{'ESTIMATE_COPY_STAGE1' | translate}}

\r\n

{{'VIEW' | translate}}\r\n

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE2' | translate}}

\r\n

{{PondVerDataStage2?.ActualSubsidy_Stage2 | number : '1.2-2'}}

\r\n
\r\n

{{'MEASUREMENT_BOOK_COPY_STAGE2' | translate}}

\r\n

{{'VIEW' | translate}}

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.Remarks}}

\r\n
\r\n

{{'JE_REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.JERemarks}}

\r\n
\r\n

{{'XEN_REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.XENRemarks}}

\r\n
\r\n

{{'DA_REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.DARemarks}}

\r\n
\r\n

{{'DMICADA_REMARK' | translate}}

\r\n

{{PondVerDataStage2?.DMICADAReamrks}}

\r\n
\r\n

{{'ADMIN_REMARK' | translate}}

\r\n

{{PondVerDataStage2?.AdminRemarks}}

\r\n
\r\n
\r\n
\r\n
{{'TANK_STAGE2_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n

{{'POND_TANK_DETAILS' | translate}}

\r\n
\r\n\r\n
\r\n
\r\n
{{'POND_TANK_STAGE1_FIELD_PHYSICAL_SURVEY_DETAILS' | translate}}
\r\n \r\n \r\n
{{'SURVEY_STAGE1_JE' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ surveyStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1JE?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1JE?.NoOfBeneficiary }}

\r\n
\r\n

{{'VOLUME_EARTH_WORK' | translate}}

\r\n

{{ surveyStage1JE?.VolumeEarthWork }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage1JE?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage1JE?.bottomLength }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage1JE?.bottomSize }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage1JE?.depth }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ surveyStage1JE?.estimateCost }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage1JE?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage1JE?.tankLng }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage1JE?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage1JE?.topLength }}

\r\n
\r\n

{{'JE-EW_REMARK_STAGE1' | translate}}

\r\n

{{ remarksData?.JERemarks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SURVEY_STAGE1_XEN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ surveyStage1XEN?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n

{{'VOLUME_EARTH_WORK' | translate}}

\r\n

{{ surveyStage1XEN?.VolumeEarthWork }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage1XEN?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage1XEN?.bottomLength }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage1XEN?.bottomSize }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage1XEN?.depth }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ surveyStage1XEN?.estimateCost }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage1XEN?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage1XEN?.tankLng }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage1XEN?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage1XEN?.topLength }}

\r\n
\r\n

{{'XEN_REMARK_STAGE1' | translate}}

\r\n

{{ remarksData?.XENRemarks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_STAGE1_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image?.DocumentType + ' ' + image?.Stage}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
{{'Pond/Tank Head Office Subsidy Calculation/Recommendation for Stage 1st Detail' | translate}}
\r\n \r\n \r\n
{{'CAL_STAGE1_JE-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1JE?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1JE?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1JE?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1JE?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1JE?.Coverage_Area }}

\r\n
\r\n

{{'JE_REMARK_CALC_STAGE1' | translate}}

\r\n

{{ remarksData?.JE_EW_Remarks_CalcStg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_DD' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1DD?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1DD?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1DD?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1DD?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1DD?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_DA' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1DA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1DA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1DA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1DA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1DA?.Coverage_Area }}

\r\n
\r\n

{{'DA_REMARK_CALC_STAGE1' | translate}}

\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_DD-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1DMICADA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1DMICADA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1DMICADA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1DMICADA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1DMICADA?.Coverage_Area }}

\r\n
\r\n

{{'DD-EW_REMARK' | translate}}

\r\n

{{ remarksData?.DMICADAReamrks }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_ADMIN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1Admin?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1Admin?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1Admin?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1Admin?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1Admin?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
{{'POND_TANK_STAGE2_FIELD_PHYSICAL_SURVEY_DETAILS' | translate}}
\r\n \r\n \r\n
{{'SURVEY_STAGE2_JE' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE2' | translate}}

\r\n

{{ surveyStage2JE?.ActualSubsidy_Stage2 }}

\r\n
\r\n

{{'ASSISTANCE_PAID_AT_STAGE2' | translate}}

\r\n

{{ surveyStage2JE?.AssistancePaidAtStage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n

{{'SURVEY_TYPE' | translate}}

\r\n

{{ surveyStage2JE?.SurveyType }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_COST' | translate}}

\r\n

{{ surveyStage2JE?.TotalEstimatedCost }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_SUBSIDY' | translate}}

\r\n

{{ surveyStage2JE?.TotalEstimatedSubsidy }}

\r\n
\r\n

{{'TYPE_OF_POND' | translate}}

\r\n

{{ surveyStage2JE?.TypeOfPond }}

\r\n
\r\n

{{'UPDATED_AT' | translate}}

\r\n

{{ surveyStage2JE?.Updated_at | date }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage2JE?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage2JE?.bottomLength }}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ surveyStage2JE?.UserID }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage2JE?.bottomSize }}

\r\n
\r\n

{{'CREATED_AT' | translate}}

\r\n

{{ surveyStage2JE?.created_at | date }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage2JE?.depth }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage2JE?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage2JE?.tankLng }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage2JE?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage2JE?.topLength }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage2JE?.topSize }}

\r\n
\r\n

{{'JE-EW_REMARK_STAGE2' | translate}}

\r\n

{{ remarksData?.JERemarks_Stg2 }}

\r\n
\r\n \r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SURVEY_STAGE2_XEN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE2' | translate}}

\r\n

{{ surveyStage2XEN?.ActualSubsidy_Stage2 }}

\r\n
\r\n

{{'ASSISTANCE_PAID_AT_STAGE2_' | translate}}

\r\n

{{ surveyStage2XEN?.AssistancePaidAtStage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2XEN?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2XEN?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n

{{'SURVEY_TYPE' | translate}}

\r\n

{{ surveyStage2XEN?.SurveyType }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_COST' | translate}}

\r\n

{{ surveyStage2XEN?.TotalEstimatedCost }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_SUBSIDY' | translate}}

\r\n

{{ surveyStage2XEN?.TotalEstimatedSubsidy }}

\r\n
\r\n

{{'TYPE_OF_POND' | translate}}

\r\n

{{ surveyStage2XEN?.TypeOfPond }}

\r\n
\r\n

{{'UPDATED_AT' | translate}}

\r\n

{{ surveyStage2XEN?.Updated_at | date }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage2XEN?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage2XEN?.bottomLength }}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ surveyStage2XEN?.UserID }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage2XEN?.bottomSize }}

\r\n
\r\n

{{'CREATED_AT' | translate}}

\r\n

{{ surveyStage2XEN?.created_at | date }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage2XEN?.depth }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage2JE?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage2XEN?.tankLng }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage2XEN?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage2XEN?.topLength }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage2XEN?.topSize }}

\r\n
\r\n

{{'XEN_REMARK_STAGE2' | translate}}

\r\n

{{ remarksData?.XENRemarks_Stg2 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_STAGE2_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image?.DocumentType + ' ' + image?.Stage}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
{{'Pond/Tank Head Office Subsidy Calculation/Recommendation for Stage 2nd Detail' | translate}}
\r\n \r\n \r\n
{{'CAL_STAGE2_JE-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2JE?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2JE?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2JE?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2JE?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2JE?.Coverage_Area }}

\r\n
\r\n

{{'JE_REMARK_CALC_STAGE2' | translate}}

\r\n

{{ remarksData?.JERemarks_CalcStg2 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_DD' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2DD?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2DD?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2DD?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2DD?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2DD?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_DA' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2DA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2DA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2DA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2DA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2DA?.Coverage_Area }}

\r\n
\r\n

{{'DA_REMARK_CALC_STAGE2' | translate}}

\r\n

{{ remarksData?.DERemarks_CalcStg2 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_DD-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2DMICADA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2DMICADA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2DMICADA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2DMICADA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2DMICADA?.Coverage_Area }}

\r\n
\r\n

{{'DD-EW_REMARK_STAGE2' | translate}}

\r\n

{{ remarksData?.DMICADAReamrks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_ADMIN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2Admin?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2Admin?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2Admin?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2Admin?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2Admin?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
{{'MI_INSTALLATION_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'VENDOR_NAME' | translate}}

\r\n

{{ t3VendorDetails?.VendorName }}

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ t3VendorDetails?.MIArea }}

\r\n
\r\n

{{'MAX_SUBSIDY_AMOUNT' | translate}}

\r\n

{{ t3VendorDetails?.Subsidy }}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MI_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image?.DocumentType + ' ' + image?.Program_Name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n

{{'SUBSIDY_DETAILS' | translate}}

\r\n
\r\n\r\n
\r\n
\r\n
{{'SUBSIDY_DISBURSMENT_DETAILS' | translate}}
\r\n \r\n \r\n
{{'PAYMENT_TO_VENDOR(15%_FARMER_SHARE)' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ FSTVDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ FSTVDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ FSTVDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Vendor (15% farmer share)' | translate}}

\r\n

{{ FSTVDetails?.FarmerShare_to_Vendor | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ FSTVDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_STATUS' | translate}}

\r\n

{{ FSTVDetails?.Status }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ FSTVDetails?.PFMSPaymentDate | date:'mediumDate' }}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'PAYMENT_TO_VENDOR(85%_OF_TOTAL_COST)' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ STVDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ STVDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ STVDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Vendor (85% of total Cost)' | translate}}

\r\n

{{ STVDetails?.Subsidy_to_Vendor | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ STVDetails?.State_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ STVDetails?.Centre_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ STVDetails?.TopUp | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ STVDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ STVDetails?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ STFDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ STFDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ STFDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Farmer' | translate}}

\r\n

{{ STFDetails?.Subsidy_Amt_Farmer | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ STFDetails?.State_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ STFDetails?.Centre_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ STFDetails?.TopUp | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ STFDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ STFDetails?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'REFUND_TO_FARMER(ACCESS_FARMER_SHARE_DEPOSITED)' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ RTFDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ RTFDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ RTFDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Vendor (85% of total Cost)' | translate}}

\r\n

{{ RTFDetails?.Subsidy_to_Vendor | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ RTFDetails?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ RTFDetails?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ RTFDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ RTFDetails?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n
{{'SUBSIDY_DISBURSMENT_DETAILS_FOR_POND' | translate}}
\r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER_FOR_TANK/POND_STAGE1_EARTH_WORK' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ PondStage1?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ PondStage1?.FileNo }}

\r\n
\r\n

{{'SUBSIDY_AMOUNT' | translate}}

\r\n

{{ PondStage1?.Subsidy_Amt | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage1?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage1?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ PondStage1?.Topup | currency: 'INR' }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ PondStage1?.ABY | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ PondStage1?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ PondStage1?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER_FOR_TANK/POND_STAGE2_COMPLETE_WORK' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ PondStage2?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ PondStage2?.FileNo }}

\r\n
\r\n

{{'SUBSIDY_AMOUNT' | translate}}

\r\n

{{ PondStage2?.Subsidy_Amt | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage2?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage2?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ PondStage2?.Topup | currency: 'INR' }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ PondStage2?.ABY | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ PondStage2?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ PondStage2?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER_FOR_TANK/POND_STAGE3_PENDING_AMOUNT ' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ PondStage3?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ PondStage3?.FileNo }}

\r\n
\r\n

{{'SUBSIDY_AMOUNT' | translate}}

\r\n

{{ PondStage3?.Subsidy_Amt | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage3?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage3?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ PondStage3?.Topup | currency: 'INR' }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ PondStage3?.ABY | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ PondStage3?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ PondStage3?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n\r\n\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_ID' | translate}}\r\n {{'DEPARTMENT' | translate}}\r\n {{'AREA' | translate}}\r\n {{'SUBSIDY_YEAR' | translate}}\r\n {{'AADHAR_NUMBER' | translate}}\r\n {{'SYSTEM' | translate}}\r\n {{'LAND_DETAILS' | translate}}\r\n {{'DIFF_YEAR' | translate}}\r\n \r\n \r\n \r\n \r\n {{ subsidy.AppId }}\r\n {{ subsidy.Department }}\r\n {{ subsidy.Area | number: \"1.2-2\" }}\r\n {{ subsidy.SubsidyYear }}\r\n {{ subsidy.AadharNo }}\r\n {{ subsidy.System }}\r\n {{ subsidy.LandDetail }}\r\n {{ subsidy.DiffYear }}\r\n \r\n \r\n \r\n \r\n {{'NO_RECORDS_TO_SHOW' | translate}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n

{{ loadingText }}

\r\n
\r\n \r\n
0 && !isLandOwnerDetFetching\" class=\"p-fluid p-formgrid justify-content-center\">\r\n \r\n \r\n
\r\n \r\n
\r\n

{{\r\n 'Fetched Land Owner Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'OWNER_NAME'| translate}}\r\n {{'BHAG'| translate}}\r\n {{'KHEWAT_AREA'| translate}}\r\n {{'OWNER_HISSA_IN_ACRES'| translate}}\r\n {{'TOTAL_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'FARMER_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.Khewat}}\r\n {{product?.Owner_Name}}\r\n {{product?.Bhag}}\r\n {{product?.khewat_area}}\r\n {{product?.owner_hissa | number:'0.3-3'}}\r\n {{product?.TotalArea | number:'0.3-3'}}\r\n {{product?.TotalAreaFarmer | number:'0.3-3'}}\r\n {{product?.Year}}\r\n \r\n \r\n
\r\n\r\n
0\">\r\n \r\n \r\n
\r\n \r\n
\r\n

\r\n {{\r\n 'Fetched Land Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHATONI'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'MORABBA_NUMBER'| translate}}\r\n {{'KILLA_NO'| translate}}\r\n {{'KANALS'| translate}}\r\n {{'MARLAS'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.khatoni}}\r\n {{product?.khewat}}\r\n {{product?.must}}\r\n {{product?.killa}}\r\n {{product?.knl}}\r\n {{product?.mrl}}\r\n {{product?.period}}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'APPLICATION_NOT_FOUND' | translate}}
\r\n
\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n","import { filter } from 'rxjs/operators';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { of, groupBy, mergeMap, reduce, map, toArray, first } from 'rxjs';\r\nimport { TankCoverageArea } from 'src/app/models/farmers-application.model';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { ConfirmationService, MenuItem } from 'primeng/api';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { OnFarmMiService } from 'src/app/services/on-farm-mi.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-farmers-application',\r\n templateUrl: './farmers-application.component.html',\r\n styleUrls: ['./farmers-application.component.scss'],\r\n providers: [ConfirmationService],\r\n})\r\nexport class FarmersApplicationComponent implements OnInit {\r\n farmersApplicatonForm: FormGroup;\r\n selectedPrimarySolarVendor: any;\r\n selectedSecondarySolarVendor: any;\r\n selectedSecondarySolarVendorId: any;\r\n // miSolarApplicationForm: FormGroup;\r\n solarApplicatonForm: FormGroup;\r\n miApplicatonForm: FormGroup;\r\n onFarmPondApplicatonForm: FormGroup;\r\n filteredVillage: any[];\r\n selectedVillage: any;\r\n villageList = [];\r\n // waterSourceTypeList: { waterSource: any; component: any[] }[] = [];\r\n waterSourceTypeList: any;\r\n applicationTypeList: any = [];\r\n componentList: any = [];\r\n miList: any = [];\r\n miVendorList: any = [];\r\n filteredmiVendorList: any = [];\r\n miDetailsList = [];\r\n solarVendorList = [];\r\n primarySolarVendorList = [];\r\n secondarySolarVendorList = [];\r\n componentSelected: any;\r\n addBankDialog: boolean;\r\n addFarmerGroupDialog: boolean;\r\n bankAccount: any;\r\n selectedVendor: any;\r\n bankAccountList: any = [];\r\n selectedBankAccounts: any = [];\r\n applicationSelected: any;\r\n pumpCapacityList: { name: string; code: string }[];\r\n solarMasterData: any = [];\r\n selectedWatersourceType: any;\r\n schemeMasterList: { type: any; data: any[] }[];\r\n landIDList: any;\r\n selectedLandIdList: any;\r\n tankListMaster: any;\r\n coverageAreaSelected: TankCoverageArea = new TankCoverageArea();\r\n farmerDetailsList: any;\r\n selectedFarmerDetail: string[] = [];\r\n filteredFarmerDetail: any[];\r\n bankAccountSelected: any;\r\n selectedFarmerLandDetails: any[];\r\n selectedFarmersLandList: any[];\r\n selectedFarmersLandIdList: any[] = [];\r\n selectedGroupFarmersLandList: any[];\r\n\r\n watercourseApplicatonForm: FormGroup;\r\n overFlowPondApplicatonForm: FormGroup;\r\n canalOutletList: { canal: any; data: any[] }[];\r\n canalOutletListOrg: any = [];\r\n outletTypeList: any[];\r\n workTypeMasterList: any;\r\n villageCodeOutlets = [];\r\n villageCodeFarmer = [];\r\n selectedVillageCode: any;\r\n allSchemeMaster: any[] = [];\r\n selectedVillageName: any;\r\n selectedPondLand: any;\r\n selectedSolardLandId: any;\r\n applicationId: string;\r\n selectedSchemeId: any;\r\n consentUploadPath: any;\r\n miSelectedVendor: any;\r\n farmerPreviousSubsidies: any = [];\r\n farmerId: any;\r\n totalNumberOfFarmersInGroup: number;\r\n componentMaster: any;\r\n currentTotalArea: any;\r\n previousTotalArea: any;\r\n totalSubsidyArea: any\r\n public selectedMI: any;\r\n public vendorList: any = [];\r\n public selectedProgramId: any;\r\n public isDisabled=false\r\n public isSubmittedWaterCourseFrom: boolean = false;\r\n public isSubmittedOverFlowPondForm: boolean = false;\r\n public isSubmittedPondApplicatonForm: boolean = false;\r\n public isSubmittedSolarApplicatonFrom: boolean = false;\r\n allLandsOfApplication: any;\r\n public isVillhasCanal: boolean = true;\r\n public showWaterCourseForm: boolean = true;\r\n public showComponent: boolean = true;\r\n public isTargetReached: boolean = false;\r\n public isVillageSelected: boolean = false;\r\n public targetStatusBody={}\r\n ipAddress: any = '000.000.000';\r\n public farmerIDNotFound: boolean = false; \r\n public overFlowPondList: any = [];\r\n\r\n public tubewellAppId: any = null;\r\n public isAppliedForUHBVN: boolean = false;\r\n public isUHBVNAppIdFound: boolean = false;\r\n\r\n public farmerAadharNo: any;\r\n public farmerMobileNo: any;\r\n public showClearUHBVNButton: boolean = false;\r\n\r\n public isFarmerTubewellLogin: boolean = false;\r\n public uhbvnToggleDisabledMode: boolean = false;\r\n\r\n public tankTypeMaster: any = [];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n public router: Router,\r\n private confirmationService: ConfirmationService,\r\n private _fb: FormBuilder,\r\n private farmerAppSer: FarmersApplicationService,\r\n private messageService: MessageService,\r\n private farmersBankService: BankDetailService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private _dashboardService: DashboardService,\r\n private ofService: OnFarmMiService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n const encData = sessionStorage.getItem('dataF') ? JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF'))) : null;\r\n const farmerConfData = encData ? new Map(encData) : new Map();\r\n let isOwnMIFarmerLogin = farmerConfData.get('isOwnMIFarmerLogin') ? farmerConfData.get('isOwnMIFarmerLogin') : '';\r\n\r\n this.isFarmerTubewellLogin = isOwnMIFarmerLogin == '1' ? true : false;\r\n\r\n if(this.isFarmerTubewellLogin){\r\n this.isAppliedForUHBVN = true;\r\n this.uhbvnToggleDisabledMode = true;\r\n }else{\r\n this.uhbvnToggleDisabledMode = false;\r\n }\r\n\r\n this.getIP();\r\n \r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n this.farmerAadharNo = farmerData?.['Aadhar_No'];\r\n this.farmerMobileNo = farmerData?.['Mobile']; \r\n\r\n if(this.farmerId == undefined){\r\n this.farmerIDNotFound = true;\r\n return;\r\n }\r\n\r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : ''\r\n\r\n this.activityRecordService.activityRecord(mobile, 'Add/Edit Application', this.farmerId, new Date(), 'Success');\r\n\r\n this.getPastSubsidiesByFarmerId();\r\n let appId = this.route.snapshot.paramMap.get('appId');\r\n this.applicationId = appId;\r\n this.getSchemeMaster();\r\n this.getSolarMaster();\r\n this.getComponentMaster();\r\n\r\n // this.getAllMiVendors();\r\n this.getWorkTypeMasterData();\r\n // this.getAllTank();\r\n this.getTankTypeList();\r\n\r\n // this.getLandIds();\r\n this.getBankListOfFarmer();\r\n this.getVillageData(this.farmerId);\r\n this.farmersApplicatonForm = this._fb.group({\r\n waterSourceType: [''],\r\n applicationType: [''],\r\n component: [''],\r\n gender: [''],\r\n });\r\n this.solarApplicatonForm = this._fb.group({\r\n controlType: ['', Validators.required],\r\n pump: ['', Validators.required],\r\n pumpType: ['', Validators.required],\r\n pumpCapacity: ['', Validators.required],\r\n primaryVendor: ['', Validators.required],\r\n secondaryVendor: [''],\r\n farmerShare: [''],\r\n solarId: ['', Validators.required],\r\n landId: ['', Validators.required],\r\n });\r\n this.miApplicatonForm = this._fb.group({\r\n mi: [''],\r\n vendor: [''],\r\n landId: [''],\r\n });\r\n\r\n this.watercourseApplicatonForm = this._fb.group({\r\n canal: ['', Validators.required],\r\n outlet: ['', Validators.required],\r\n workType: ['', Validators.required],\r\n checkBox: ['', Validators.required],\r\n });\r\n\r\n this.overFlowPondApplicatonForm = this._fb.group({\r\n overFlowPond: ['', Validators.required],\r\n });\r\n\r\n this.onFarmPondApplicatonForm = this._fb.group({\r\n landId: ['', Validators.required],\r\n sizeCoverageArea: ['', Validators.required],\r\n tankType: ['', Validators.required],\r\n topSize: [''],\r\n bottomSize: [''],\r\n depth: [''],\r\n waterCapacity: [''],\r\n tenativeCost: [''],\r\n tankId: [''],\r\n communityActualSubsidy: [''],\r\n communityPayment: [''],\r\n individualActualSubsidy: [''],\r\n individualPayment: [''],\r\n });\r\n\r\n this.waterSourceTypeList = [];\r\n\r\n // this.pumpCapacityList = [\r\n // { name: '3 HP', code: '3 HP' },\r\n // { name: '5 HP', code: '5 HP' },\r\n // { name: '7.5 HP', code: '7.5 HP' },\r\n // { name: '10 HP', code: '10 HP' },\r\n // ];\r\n\r\n if (appId) {\r\n setTimeout(() => {\r\n this.populateForm(appId);\r\n }, 2000);\r\n }\r\n else {\r\n this.getLandIds();\r\n }\r\n }\r\n\r\n resetFromSubmissionState() {\r\n this.isSubmittedWaterCourseFrom = false;\r\n this.isSubmittedOverFlowPondForm = false;\r\n this.isSubmittedPondApplicatonForm = false;\r\n this.isSubmittedSolarApplicatonFrom = false;\r\n }\r\n\r\n get watercourseFormControls() {\r\n return this.watercourseApplicatonForm.controls;\r\n }\r\n\r\n get overFlowPondFormControls() {\r\n return this.overFlowPondApplicatonForm.controls;\r\n }\r\n\r\n get farmPondApplicatonFormControls() {\r\n return this.onFarmPondApplicatonForm.controls;\r\n }\r\n\r\n get solarApplicatonFormControls() {\r\n return this.solarApplicatonForm.controls;\r\n }\r\n\r\n populateForm(appId) {\r\n this.loader.start();\r\n this._dashboardService\r\n .getApplicationByAppId(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.APP_ID) {\r\n //Populating Farmer Application Form\r\n if (data.FarmerLand) {\r\n this.landIDList = [];\r\n this.allLandsOfApplication = data.FarmerLand;\r\n this.landIDList = this.transformLandIDData(data.FarmerLand);\r\n console.log(this.landIDList)\r\n }\r\n if (data.Scheme_ID) {\r\n this.selectedSchemeId = data.Scheme_ID;\r\n let populatedScheme = this.allSchemeMaster.filter(\r\n (x) => x.Scheme_ID === data.Scheme_ID\r\n );\r\n\r\n // console.log('populatedScheme1', populatedScheme);\r\n\r\n if(populatedScheme.length == 0){\r\n\r\n this.loader.start();\r\n this.farmerAppSer.getSchemeMaster(data.Scheme_ID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n populatedScheme = data;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'For the current Scheme ID data is not found.',\r\n });\r\n return;\r\n },\r\n complete: () => {\r\n this.onApplicationTypeSelected({\r\n value: populatedScheme[0].Applicant_type,\r\n });\r\n this.onVillageSelect({\r\n VillageCode: data.VillageData[0].VillageCode,\r\n VillageName: data.VillageData[0].VillageName,\r\n });\r\n this.onWaterSourceTypeSelected({\r\n value:\r\n this.waterSourceTypeList[populatedScheme[0].Water_Source - 1]\r\n .waterSource,\r\n }, 'exists', populatedScheme);\r\n const populatedComponent = this.componentList.filter(\r\n (x) => x.Scheme_ID === data.Scheme_ID\r\n );\r\n this.onComponentSelected({ value: populatedComponent[0] });\r\n \r\n this.populateApllicationDataOnSchemeID(data, populatedScheme);\r\n }\r\n });\r\n }else{\r\n this.onApplicationTypeSelected({\r\n value: populatedScheme[0].Applicant_type,\r\n });\r\n if(data.VillageData == null){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Village data of the selected Application Not Found.',\r\n });\r\n return;\r\n }\r\n this.onVillageSelect({\r\n VillageCode: data.VillageData[0].VillageCode,\r\n VillageName: data.VillageData[0].VillageName,\r\n });\r\n this.onWaterSourceTypeSelected({\r\n value:\r\n this.waterSourceTypeList[populatedScheme[0].Water_Source - 1]\r\n .waterSource,\r\n });\r\n const populatedComponent = this.componentList.filter(\r\n (x) => x.Scheme_ID === data.Scheme_ID\r\n );\r\n this.onComponentSelected({ value: populatedComponent[0] });\r\n \r\n this.populateApllicationDataOnSchemeID(data, populatedScheme);\r\n }\r\n\r\n\r\n \r\n // console.log(\"selectedWatersourceType\", this.selectedWatersourceType);\r\n // console.log(\"componentSelected\", this.componentSelected);\r\n }\r\n \r\n\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Requested Application Not Found.',\r\n });\r\n return;\r\n }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Requested Application Not Found.',\r\n });\r\n return;\r\n },\r\n });\r\n }\r\n\r\n populateApllicationDataOnSchemeID(data, populatedScheme){\r\n\r\n if (data.ConsentPath) {\r\n this.consentUploadPath = data.ConsentPath;\r\n }\r\n //populating Farmer Details\r\n if (data.Group_Datas) {\r\n data.Group_Datas.forEach((x) => {\r\n x.landDetails = data.FarmerLand.filter((land) => {\r\n return land.farmerId === x.Farmer_ID;\r\n });\r\n this.selectedFarmerLandDetails.push(x);\r\n });\r\n data.GroupTableData.forEach((x) => {\r\n this.selectedFarmersLandIdList.push({ Land_ID: x.LandID });\r\n });\r\n this.saveFarmerToGroup();\r\n // this.selectedFarmersLandList = data.GroupTableData;\r\n }\r\n\r\n //Populating MI Data\r\n this.miDetailsList = [];\r\n if (data.New_MI_Datas) {\r\n data.New_MI_Datas.forEach((x) => {\r\n let filteredList = this.miVendorList.filter((vendor) => {\r\n return vendor.Name == x.miVendorName;\r\n });\r\n this.miSelectedVendor = filteredList[0];\r\n let component = 0;\r\n this.componentMaster.forEach((val) => {\r\n if( x.programName == val.Program_Name){\r\n component = val.Program_Id;\r\n }\r\n })\r\n\r\n if(x.VendorCode!=0 && x.VendorCode!=null ){\r\n let body = {\r\n mi: component,\r\n vendor: x.miVendorName,\r\n landId: x.LandID,\r\n vendorCode: x.VendorCode,\r\n vendorObject: filteredList[0],\r\n landData: x.landData,\r\n totalArea: x.totalArea,\r\n };\r\n this.miDetailsList.push(body);\r\n }\r\n console.log(this.miDetailsList)\r\n });\r\n }\r\n\r\n //populating Bank\r\n this.onBankAccountSelected({\r\n value: data.FarmerBank?.accoNumber?.toString(),\r\n });\r\n\r\n //Populating Pond Farm\r\n if (data.OnFarm_Pond_Datas) {\r\n // let selectedLand = this.landIDList.filter((x) => {\r\n // return x.Land_ID === data.OnFarm_Pond_Datas[0].LandID;\r\n // });\r\n let selectedLand = data.OnFarm_Pond_Datas;\r\n this.onPondLandIdSelected({ value: selectedLand[0] });\r\n this.onFarmPondApplicatonForm.controls.landId.setValue(\r\n selectedLand[0].Land_ID\r\n );\r\n\r\n let filteredTankMaster = this.tankListMaster.filter((x) => {\r\n return (\r\n x.Coverage_Area == data.OnFarm_Pond_Datas[0].CoverageArea\r\n );\r\n });\r\n this.onCoverageAreaSelected({ value: filteredTankMaster[0] });\r\n }\r\n\r\n //populating Solar Form\r\n if (data.Solar_Pump_Datas) {\r\n // let selectedLand = this.landIDList.filter((x) => {\r\n // return x.Land_ID === data.Solar_Pump_Datas[0].LandID;\r\n // });\r\n let selectedLand = data.Solar_Pump_Datas;\r\n this.solarApplicatonForm.controls.landId.setValue(\r\n selectedLand[0].Land_ID?selectedLand[0].Land_ID:selectedLand[0].LandID\r\n );\r\n this.solarApplicatonForm.controls.controlType.setValue(\r\n data.Solar_Pump_Datas[0].controlerType\r\n );\r\n this.solarApplicatonForm.controls.pump.setValue(\r\n data.Solar_Pump_Datas[0].type\r\n );\r\n this.solarApplicatonForm.controls.pumpType.setValue(\r\n data.Solar_Pump_Datas[0].pumpCategory\r\n );\r\n this.solarApplicatonForm.controls.pumpCapacity.setValue(\r\n data.Solar_Pump_Datas[0].pumpCapacity\r\n );\r\n this.validateAndGetSolarVendors();\r\n this.selectedPrimarySolarVendor =\r\n data.Solar_Pump_Datas[0].primaryVendor;\r\n this.selectedSecondarySolarVendor =\r\n data.Solar_Pump_Datas[0].secondaryVendor;\r\n\r\n this.solarApplicatonForm.controls.farmerShare.setValue(\r\n data.Solar_Pump_Datas[0].farmerShare\r\n );\r\n }\r\n\r\n if (data?.Water_Course_Datas) {\r\n this.watercourseApplicatonForm.controls.canal.setValue(data?.Water_Course_Datas[0]?.Canal_Outlet_Name);\r\n this.watercourseApplicatonForm.controls.outlet.setValue(data?.Water_Course_Datas[0]?.Outlet_Code);\r\n this.watercourseApplicatonForm.controls.workType.setValue(data?.Water_Course_Datas[0]?.Work_type);\r\n console.log(this.watercourseApplicatonForm.controls)\r\n }\r\n\r\n if (data?.overFlowPond_Datas) {\r\n this.overFlowPondApplicatonForm.controls.overFlowPond.setValue(data?.overFlowPond_Datas[0]?.recordId);\r\n }\r\n }\r\n\r\n //get all list\r\n getBankListOfFarmer() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let appNo = farmerData?.['Farmer_ID'];\r\n\r\n this.loader.start();\r\n this.farmersBankService.getBankDetails(appNo).subscribe((res) => {\r\n this.loader.close();\r\n this.bankAccountList = res.map((r) => {\r\n return { ...r, displayName: r.Account_NO + ' - ' + r.Bank_NAME };\r\n });\r\n });\r\n }\r\n\r\n getAllOutletData(villageCode: any) {\r\n this.loader.start();\r\n this.farmerAppSer.GetAllOutletDetails(villageCode).subscribe((res) => {\r\n of(...res)\r\n .pipe(\r\n groupBy((p: any) => p.canal),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ canal: arr[0], data: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n this.canalOutletList = p;\r\n this.loader.close();\r\n if(this.applicationId){\r\n this.onCanalOutletSelected({ value: this.watercourseApplicatonForm.controls.canal.value });\r\n }\r\n });\r\n });\r\n }\r\n\r\n listAllOutletData() {\r\n this.loader.start();\r\n this.farmerAppSer.LetAllOutletDetails().subscribe((res) => {\r\n of(...res)\r\n .pipe(\r\n groupBy((p: any) => p.canal),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ canal: arr[0], data: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n this.canalOutletList = p;\r\n this.loader.close();\r\n if(this.applicationId){\r\n this.onCanalOutletSelected({ value: this.watercourseApplicatonForm.controls.canal.value });\r\n }\r\n });\r\n });\r\n }\r\n\r\n getWorkTypeMasterData() {\r\n this.loader.start();\r\n this.farmerAppSer.GetWorktypeMaster().subscribe((res) => {\r\n res = res.map(value => ({\r\n ...value,\r\n disabled: value?.workTypeID != 4 ? true : false\r\n }))\r\n this.workTypeMasterList = res\r\n this.loader.close();\r\n });\r\n }\r\n getComponentMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getComponentMaster().subscribe((res) => {\r\n console.log(\"componentMaster\", res)\r\n this.componentMaster = res;\r\n this.miList = res;\r\n this.loader.close();\r\n });\r\n }\r\n getLandIds() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let appNo = farmerData?.['Farmer_ID'];\r\n\r\n // this.farmerAppSer.getFarmersLandId(appNo).subscribe((res) => {\r\n this.loader.start();\r\n this.farmerAppSer.getNotUsedLandsByFarmerID(appNo).subscribe((res) => {\r\n this.loader.close();\r\n this.landIDList = this.selectedLandIdList = this.transformLandIDData(\r\n res.Table\r\n );\r\n\r\n let villageCodeList = this.landIDList?.map((res) => res.Village_Code);\r\n this.getAllOutletData(villageCodeList);\r\n });\r\n }\r\n\r\n transformLandIDData(inputData) {\r\n return inputData?.map((r) => {\r\n return {\r\n ...r,\r\n displayName:\r\n 'Village Name:' +\r\n (r.VillageName ? r.VillageName : this.selectedVillageName )+\r\n ' - Killa No:' +\r\n ((r.Killa_No ? r.Killa_No : r.killaNo)\r\n ? r.Killa_No\r\n ? r.Killa_No\r\n : r.killaNo\r\n : r.KillaNo) +\r\n ' - Morabba No:' +\r\n ((r.Morabba_No ? r.Morabba_No : r.morabbaNo)\r\n ? r.Morabba_No\r\n ? r.Morabba_No\r\n : r.morabbaNo\r\n : r.MorabbaNo),\r\n };\r\n });\r\n }\r\n\r\n getSchemeMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getSchemeMaster().subscribe((res) => {\r\n this.allSchemeMaster = res;\r\n of(...res)\r\n .pipe(\r\n groupBy((p: any) => p.Applicant_type),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ type: arr[0], data: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n this.schemeMasterList = p;\r\n this.loader.close();\r\n });\r\n });\r\n }\r\n\r\n getPastSubsidiesByFarmerId() {\r\n if (this.farmerId) {\r\n this.loader.start();\r\n this.ofService\r\n .GetFarmerPastSubsidyByFarmerId(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.farmerPreviousSubsidies = data;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getVillageData(farmerId) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n this.loader.start();\r\n this._personalDetalSer.getVillageBasedOnFarmerId(farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.activityRecordService.activityRecord(\r\n mobile,\r\n 'Get Village Based On Farmer Id',\r\n this.farmerId,\r\n new Date(),\r\n JSON.stringify(res)\r\n );\r\n\r\n this.villageList = res;\r\n this.loader.close();\r\n this.filteredVillage = [...this.villageList];\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n mobile,\r\n 'Get Village Based On Farmer Id',\r\n this.farmerId,\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Village Error Message. Please add the land details first and try again',\r\n detail: err,\r\n });\r\n },\r\n });\r\n // this._personalDetalSer.getVillageBasedOnFarmerId(farmerId).subscribe((res) => {\r\n // this.villageList = res;\r\n // this.loader.close();\r\n // this.filteredVillage = [...this.villageList];\r\n\r\n // if (!window.sessionStorage.getItem('villageMaster')) {\r\n // window.sessionStorage.setItem('villageMaster', JSON.stringify(res));\r\n // }\r\n // });\r\n // console.log(this.villageList);\r\n }\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.VillageName.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n this.filteredVillage = filtered;\r\n }\r\n filterMIVendor(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.miVendorList.length; i++) {\r\n const vendor = this.miVendorList[i];\r\n if (vendor.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendor);\r\n }\r\n }\r\n this.filteredmiVendorList = filtered;\r\n }\r\n GetAllFarmerDetails(villageCode: any) {\r\n this.selectedFarmerLandDetails = [];\r\n this.farmerDetailsList = [];\r\n if (this.applicationId) {\r\n this.landIDList = this.transformLandIDData(this.allLandsOfApplication);\r\n } else {\r\n if (this.applicationSelected === 'Individual') {\r\n this.getFarmerLandByFarmerIds();\r\n } else {\r\n this.loader.start();\r\n this.farmerAppSer.GetFarmerAndLandByVillageCode(villageCode).subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.farmerDetailsList = data;\r\n this.getFarmerLandByFarmerIds();\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n }\r\n }\r\n onVillageSelect(val: any) {\r\n this.isVillageSelected = true;\r\n this.resetApplication();\r\n this.villageCodeFarmer = [];\r\n this.selectedVillageName = val.VillageName;\r\n this.selectedVillageCode = val.VillageCode;\r\n this.selectedVillage = val;\r\n this.selectedFarmerLandDetails = [];\r\n this.farmerDetailsList = [];\r\n this.selectedWatersourceType = null;\r\n this.componentSelected = null;\r\n this.villageCodeFarmer.push(val.VillageCode);\r\n this.GetAllFarmerDetails(this.villageCodeFarmer);\r\n // this.getAllOutletDataN(this.villageCodeFarmer);\r\n this.getAllOutletDataN(this.villageCodeFarmer);\r\n }\r\n\r\n // getAllMiVendors() {\r\n // this.farmerAppSer.getAllMiVendors().subscribe({\r\n // next: (data) => {\r\n // if (data) {\r\n // this.miVendorList = data;\r\n // this.filteredmiVendorList = [...this.miVendorList];\r\n // }\r\n // },\r\n // error: (err) => {\r\n // console.log(err);\r\n // },\r\n // });\r\n // }\r\n getAllSolarVendors() {\r\n this.loader.start();\r\n this.farmerAppSer.getAllSolarVendors().subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.solarVendorList = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n\r\n getPrimarySolarVendors() {\r\n this.primarySolarVendorList = [];\r\n\r\n let solarMasteredFilteredData = this.getFarmerShare();\r\n if (solarMasteredFilteredData) {\r\n this.solarApplicatonForm.patchValue({\r\n farmerShare: solarMasteredFilteredData.Farmers_Share,\r\n });\r\n this.solarApplicatonForm.patchValue({\r\n solarId: solarMasteredFilteredData.Solar_ID,\r\n });\r\n\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getPrimarySolarVendors(solarMasteredFilteredData.Solar_ID)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.primarySolarVendorList = data;\r\n if (this.applicationId) {\r\n this.onPrimarySolarVendorChange({\r\n value: this.selectedPrimarySolarVendor,\r\n });\r\n }\r\n\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Solar ID Not Found For selected Combination',\r\n });\r\n }\r\n }\r\n\r\n onPrimarySolarVendorChange(event) { \r\n this.selectedPrimarySolarVendor = event.value;\r\n let solarMasteredFilteredData = this.getFarmerShare();\r\n // console.log(this.primarySolarVendorList)\r\n let selectedPrimaryVendor = this.primarySolarVendorList.filter(vendor => {\r\n return vendor.Primary_Vendor === event.value\r\n })\r\n this.secondarySolarVendorList = [];\r\n this.selectedSecondarySolarVendor = null;\r\n if (selectedPrimaryVendor.length) {\r\n this.getSecondarySolarVendors(selectedPrimaryVendor[0].pid);\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'PID value is unknown for Selcted Primary Vendor, Hence Secondary Vendor is not known',\r\n });\r\n return;\r\n }\r\n\r\n }\r\n\r\n onSecondarySolarVendorChange(event) {\r\n this.selectedSecondarySolarVendor = event.value;\r\n let selectedSolarVendor = this.secondarySolarVendorList.filter((x) => {\r\n return x.Secondary_Vendor === this.selectedSecondarySolarVendor;\r\n });\r\n this.selectedSecondarySolarVendorId = selectedSolarVendor[0].sid;\r\n }\r\n\r\n getSecondarySolarVendors(solarId: any) {\r\n this.loader.start();\r\n this.farmerAppSer.getSecondarySolarVendors(solarId).subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.secondarySolarVendorList = data;\r\n if (this.selectedSecondarySolarVendor) {\r\n let selectedSolarVendor = this.secondarySolarVendorList.filter(\r\n (x) => {\r\n return x.Secondary_Vendor === this.selectedSecondarySolarVendor;\r\n }\r\n );\r\n this.selectedSecondarySolarVendorId = selectedSolarVendor[0].sid;\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n\r\n // getAllTank() {\r\n // this.loader.start();\r\n // this.farmerAppSer.getAllTank().subscribe({\r\n // next: (data) => {\r\n // this.tankListMaster = data;\r\n // this.loader.close();\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log(err);\r\n // },\r\n // });\r\n // }\r\n\r\n getTankListBasedOnType(val) {\r\n this.loader.start();\r\n this.farmerAppSer.getAreaBasedOnTankType(val).subscribe({\r\n next: (data) => {\r\n this.tankListMaster = data;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n\r\n getTankTypeList() {\r\n this.loader.start();\r\n this.farmerAppSer.getTankType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.tankTypeMaster = data;\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Tank Type Data Not Loaded' });\r\n this.tankTypeMaster = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.tankTypeMaster = [];\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n getSolarMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getSolarMaster().subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.solarMasterData = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n\r\n openPreviousConsent(url) {\r\n window.open(url, '_blank');\r\n }\r\n\r\n downloadConsent() {\r\n window.open('/assets/consent.pdf', '_blank');\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let phNo = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.consentUploadPath = resp.data;\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onFarmersApplicationFormSubmit() {\r\n\r\n // console.log(\"miDetailsList\", this.miDetailsList, this.miDetailsList.length == 0);\r\n // console.log(\"componentSelected\", this.componentSelected);\r\n // console.log(\"coverageAreaSelected\", this.coverageAreaSelected['Tank_ID'] );\r\n // console.log(\"coverageAreaSelected\", this.coverageAreaSelected);\r\n // console.log(\"bankAccountSelected\", this.bankAccountSelected);\r\n // console.log(\"solarApplicatonForm\", this.solarApplicatonForm.value)\r\n\r\n\r\n // check validations\r\n if (this.componentSelected.component.includes('MI')) {\r\n if (this.miDetailsList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! MI list is empty',\r\n detail: 'Please Add MI details first',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n if (this.componentSelected.component.includes('Pond')) {\r\n if (this.onFarmPondApplicatonForm.invalid) {\r\n this.isSubmittedPondApplicatonForm = true;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Fill Pond Application Form Properly.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n if (this.componentSelected.component.includes('Solar')) {\r\n if (this.solarApplicatonForm.invalid) {\r\n this.isSubmittedSolarApplicatonFrom = true;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Fill Solar Application Form Properly.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n //gettting primary solar vendor Id\r\n let filteredPrimarySolarVendor: any = this.primarySolarVendorList.filter(x => x.Primary_Vendor === this.selectedPrimarySolarVendor);\r\n\r\n //Populating Water \r\n let waterCouseDetail = []\r\n if (this.selectedWatersourceType == 'Canal' || this.selectedWatersourceType == 'STP') {\r\n if (this.watercourseApplicatonForm.invalid) {\r\n this.isSubmittedWaterCourseFrom = true;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Fill Water Course Form Properly.',\r\n });\r\n return;\r\n }\r\n else {\r\n let body = {\r\n \"outlet_Code\": this.watercourseApplicatonForm.controls.outlet.value,\r\n \"work_type\": this.watercourseApplicatonForm.controls.workType.value\r\n }\r\n waterCouseDetail.push(body)\r\n }\r\n }\r\n\r\n let overFlowPondDetail = [];\r\n if (this.selectedWatersourceType == 'Over Flow Pond') {\r\n if (this.overFlowPondApplicatonForm.invalid) {\r\n this.isSubmittedOverFlowPondForm = true;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Fill Over Flow Pond Form Properly.',\r\n });\r\n return;\r\n } else {\r\n let body = {\r\n recordId: this.overFlowPondApplicatonForm.controls.overFlowPond.value,\r\n };\r\n overFlowPondDetail.push(body);\r\n }\r\n }\r\n\r\n //validation for bank details\r\n if (this.bankAccountSelected == undefined || this.bankAccountSelected == null) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Select the Bank Details.',\r\n });\r\n return;\r\n }\r\n\r\n //Validation for Group: Consent Form Path shouldnt be null\r\n if (this.applicationSelected === 'Group') {\r\n if (!this.consentUploadPath) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please upload Consent Form',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n //Validate if Total subsidy area is less than 12.5\r\n this.totalSubsidyArea = 0;\r\n this.miDetailsList.forEach((mi) => {\r\n this.totalSubsidyArea = this.totalSubsidyArea + Number(mi.totalArea);\r\n\r\n });\r\n this.farmerPreviousSubsidies.forEach((subsidy) => {\r\n if (subsidy.DiffYear < 8) {\r\n if(subsidy.AppId != this.applicationId){\r\n this.totalSubsidyArea = this.totalSubsidyArea + Number(subsidy.Area);\r\n }\r\n }\r\n });\r\n //For Group Application, the total max subsidy allowed is calculated by No. of Farmer in Group Multiplied by '12.5' and Subtracting farmer previous subsidies from last 8 years\r\n if (this.applicationSelected === 'Group') {\r\n let maxSubsidyAreaForGroup = this.totalNumberOfFarmersInGroup * 12.5\r\n if (maxSubsidyAreaForGroup > 0) {\r\n if (this.totalSubsidyArea > maxSubsidyAreaForGroup) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Total Area Eligible for subsidy should be Less than ' + Number(maxSubsidyAreaForGroup) + 'Acre .For ' + this.totalNumberOfFarmersInGroup + 'Farmers (Group Application). You are applying for ' +\r\n Number(this.totalSubsidyArea) +\r\n ' Acre. \\n\\n Contact Department',\r\n });\r\n return;\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Max SubSidy Area Cant be calculated for Group. Contact Department',\r\n });\r\n return;\r\n }\r\n } else {\r\n if (this.totalSubsidyArea > 12.5) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Total Area Eligible for subsidy should be Less than 12.5 Acre. You are applying for ' +\r\n Number(this.totalSubsidyArea) +\r\n ' Acre. \\n\\n Contact Department',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n let totalArea = 0;\r\n this.miDetailsList.forEach((mi) => {\r\n totalArea = totalArea + Number(mi.totalArea);\r\n });\r\n //Validation for 'MI' if total area is less than 1 acre\r\n if (Number(totalArea) < 1 && Number(totalArea) != 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Data error! Total Area for MI form cannot be less than 1 Acre. ' +\r\n Number(totalArea),\r\n });\r\n return;\r\n }\r\n //Validation for 'Pond' if total area is less than 5 acre\r\n if (this.componentSelected.component.includes('Pond')) {\r\n if (Number(totalArea) < 5 && Number(totalArea) != 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Data error! Total Area for Pond form cannot be less than 5 Acre.Current Total Area is ' +\r\n Number(totalArea),\r\n });\r\n return;\r\n }\r\n }\r\n\r\n \r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let appNo = farmerData?.['Farmer_ID'];\r\n let farmersApplicationToSubmit = {\r\n apP_ID: this.applicationId ? this.applicationId : '',\r\n uhbvnAppid: this.tubewellAppId ? this.tubewellAppId : '',\r\n farmer_ID: appNo,\r\n applicant_type: this.applicationSelected,\r\n scheme_Code: this.componentSelected.Scheme_ID,\r\n user_ID: sessionStorage.getItem('abyUserID')\r\n ? sessionStorage.getItem('abyUserID')\r\n : (sessionStorage.getItem('userID') == 'ownMIfarmer' ? 'farmer' : sessionStorage.getItem('userID')),\r\n is_Atal: sessionStorage.getItem('isAtalBhujal') === '1' || sessionStorage.getItem(\"isVendor\") === '1' ? true : false,\r\n netWork_Id: this.ipAddress, \r\n terminal_Id: this.ipAddress,\r\n consentPath: this.consentUploadPath ? this.consentUploadPath : '',\r\n group_Datas: this.selectedGroupFarmersLandList,\r\n water_Course_Datas: waterCouseDetail,\r\n overFlowPond_Datas: overFlowPondDetail,\r\n onFarm_Pond_Datas: this.componentSelected.component.includes('Pond')\r\n ? [\r\n {\r\n land_ID: this.onFarmPondApplicatonForm.value['landId'],\r\n tank_id: this.onFarmPondApplicatonForm.value['tankId'],\r\n },\r\n ]\r\n : [],\r\n solar_Pump_Datas: this.componentSelected.component.includes('Solar')\r\n ? [\r\n {\r\n solar_ID: +this.solarApplicatonForm.value['solarId'],\r\n solar_Vendor_id: filteredPrimarySolarVendor[0].pid,\r\n solar_Vendor_Secondry_ID: this.selectedSecondarySolarVendorId,\r\n land_ID: this.solarApplicatonForm.controls.landId.value,\r\n },\r\n ]\r\n : [],\r\n new_MI_Datas: this.miDetailsList.map((r) => {\r\n return {\r\n // new_MI_System: this.miList.filter(\r\n // (res) => res.Program_Name === r.mi\r\n // )[0]?.Program_Id,\r\n land_ID: r.landId,\r\n new_MI_System: r.mi,\r\n vendor_Code: r.vendorId?.Vendor_Code\r\n ? r.vendorId?.Vendor_Code\r\n : r.vendorCode,\r\n };\r\n }),\r\n bank_Datas: [\r\n {\r\n bank_Data: this.bankAccountSelected?.toString(),\r\n },\r\n // {\r\n // \"farmer_ID\": appNo,\r\n // \"bank_ID\": this.bankAccountSelected\r\n // }\r\n ],\r\n };\r\n\r\n this.postFarmersRegistrationData(farmersApplicationToSubmit);\r\n }\r\n getCurrentSubsidyArea() {\r\n let currentArea = 0\r\n this.miDetailsList.forEach((mi) => {\r\n currentArea = currentArea + Number(mi.totalArea);\r\n });\r\n return currentArea\r\n }\r\n getPreviousSubsidyArea() {\r\n let previousSubsidyArea = 0\r\n this.farmerPreviousSubsidies.forEach((subsidy) => {\r\n if (subsidy.DiffYear < 8) {\r\n if (subsidy.AppId != this.applicationId) {\r\n previousSubsidyArea = previousSubsidyArea + Number(subsidy.Area);\r\n }\r\n }\r\n });\r\n return previousSubsidyArea\r\n }\r\n getTotalSubsidyArea() {\r\n let totalArea = 0\r\n this.miDetailsList.forEach((mi) => {\r\n totalArea = totalArea + Number(mi.totalArea);\r\n });\r\n this.farmerPreviousSubsidies.forEach((subsidy) => {\r\n if (subsidy.DiffYear < 8) {\r\n if (subsidy.AppId != this.applicationId) {\r\n totalArea = totalArea + Number(subsidy.Area);\r\n }\r\n }\r\n });\r\n return totalArea\r\n }\r\n postFarmersRegistrationData(farmersApplicationToSubmit) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(farmersApplicationToSubmit))\r\n }\r\n\r\n this.loader.start();\r\n this.farmerAppSer\r\n .postFarmersRegistrationData(reqBodyAfterEncypt)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.startsWith('S:')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.resetApplication();\r\n setTimeout(() => {\r\n // this.router.navigate(['farmer/dashboard']);\r\n this.router.navigate(['farmer/bank-details']);\r\n }, 1000);\r\n }\r\n else if(data.includes('deadlocked') || data.includes('deadlock')){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Oops!!! Something went wrong. Please try again later.',\r\n });\r\n }\r\n else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: data,\r\n });\r\n }\r\n this.activityRecordService.activityRecord(mobile, 'Farmer Application Details Add/Edit', this.farmerId, new Date(), data, farmersApplicationToSubmit);\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(mobile, 'Farmer Application Details Add/Edit', this.farmerId, new Date(), err, farmersApplicationToSubmit);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Application not saved.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n resetApplication() {\r\n this.solarApplicatonForm.reset();\r\n this.onFarmPondApplicatonForm.reset();\r\n this.miDetailsList = [];\r\n this.isTargetReached = false;\r\n }\r\n\r\n getSolarVendorId() {\r\n let id = this.solarVendorList.filter(\r\n (r) =>\r\n this.solarApplicatonForm.value['secondaryVendor'].toLowerCase() ===\r\n r.Secondary_Vendor.toLowerCase() &&\r\n this.solarApplicatonForm.value['primaryVendor'].toLowerCase() ===\r\n r.Primary_Vendor.toLowerCase()\r\n )[0]?.Id;\r\n return id;\r\n }\r\n\r\n onBankAccountSelected(event) {\r\n this.bankAccountSelected = event.value;\r\n }\r\n\r\n onWaterSourceTypeSelected(event, ...args) {\r\n this.selectedWatersourceType = event.value;\r\n console.log(\"this.selectedWatersourceType\", this.selectedWatersourceType);\r\n this.showComponent = true;\r\n this.showWaterCourseForm = true;\r\n if(this.canalOutletList){\r\n if(this.selectedWatersourceType == \"STP\"){\r\n let val = this.canalOutletListOrg.filter(val => val?.outletName == \"STP\");\r\n this.groupByCanal(val);\r\n }else if(this.selectedWatersourceType == \"Canal\"){\r\n let val = this.canalOutletListOrg.filter(val => val?.outletName != \"STP\");\r\n this.groupByCanal(val);\r\n }else{\r\n let val = this.canalOutletListOrg;\r\n this.groupByCanal(val);\r\n }\r\n }\r\n\r\n if(!this.isVillhasCanal){\r\n\r\n if(this.selectedWatersourceType == 'Canal' || this.selectedWatersourceType == 'STP'){\r\n this.showComponent = false;\r\n this.showWaterCourseForm = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Info Message',\r\n detail: `${this.selectedWatersourceType} not found for the selected Village`,\r\n });\r\n return;\r\n }\r\n }\r\n if (this.selectedWatersourceType == 'Over Flow Pond') {\r\n this.getOverFlowPondMasterData(this.selectedVillageCode);\r\n }\r\n // this.componentSelected.Scheme_ID = '';\r\n // this.componentSelected.component = '';\r\n console.log(\"waterSourceTypeList\", this.waterSourceTypeList);\r\n let selectedWaterSourceData = [];\r\n if(args[0]== 'exists'){\r\n selectedWaterSourceData = args[1];\r\n }else{\r\n selectedWaterSourceData = this.waterSourceTypeList.filter(\r\n (d) => d.waterSource === this.selectedWatersourceType\r\n )[0].component;\r\n }\r\n console.log(\"selectedWaterSourceData\", selectedWaterSourceData)\r\n console.log(\"\", this.selectedWatersourceType)\r\n this.componentList = selectedWaterSourceData\r\n .map((d) => {\r\n let keys = ['MI', 'Solar', 'Pond', 'Water_Course'];\r\n if(this.selectedWatersourceType == 'Canal' ||\r\n this.selectedWatersourceType == 'STP' ||\r\n this.selectedWatersourceType == 'Over Flow Pond'\r\n ){\r\n keys = ['MI'];\r\n }\r\n let filtered = keys.filter((r) => d[r] === true);\r\n return { component: filtered.join('+'), Scheme_ID: d.Scheme_ID };\r\n })\r\n .filter((r) => r.component && r.Scheme_ID);\r\n console.log('componentList', this.componentList)\r\n }\r\n\r\n groupByCanal(res) {\r\n const groupedData = res.reduce((acc, cur) => {\r\n const canal = cur.canal;\r\n if (!acc[canal]) {\r\n acc[canal] = [];\r\n }\r\n acc[canal].push(cur);\r\n return acc;\r\n }, {});\r\n \r\n // Convert grouped object into array format\r\n this.canalOutletList = Object.keys(groupedData).map(canal => ({\r\n canal: canal,\r\n data: groupedData[canal]\r\n }));\r\n }\r\n\r\n onComponentSelected(event) {\r\n let selected = event.value;\r\n console.log(\"componentSelected\", event);\r\n this.componentSelected = selected;\r\n console.log(\"componentSelected\", this.componentSelected);\r\n\r\n let arr = this.componentSelected?.component.split(\"+\");\r\n // console.log(arr);\r\n const MI = arr.includes(\"MI\");\r\n const Pond = arr.includes(\"Pond\");\r\n const Solar = arr.includes(\"Solar\");\r\n\r\n // console.log(MI, Pond, Solar);\r\n\r\n let reqBody = {\r\n AppId: this.applicationId ? this.applicationId : '',\r\n VillageCode: this.selectedVillageCode,\r\n MI: MI,\r\n Pond: Pond,\r\n Solar: Solar\r\n }\r\n this.targetStatusBody={...reqBody}\r\n // this.getTargetStatus(reqBody);\r\n }\r\n\r\n // getTargetStatus(reqBody) {\r\n // this.loader.start();\r\n // this._personalDetalSer.getTargetStatus(reqBody).subscribe({\r\n // next: (data) => {\r\n // if(data['Status'] == \"Application from your district is stopped as target area for current Quarter/Year is reached\"){\r\n // this.isTargetReached = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info MessageIL',\r\n // detail: data['Status'],\r\n // });\r\n // }else{\r\n // this.isTargetReached = false;\r\n // }\r\n // if(data.Status!='0'){\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error MessageIL',\r\n // detail: `err: ${data.Status}`,\r\n // });\r\n\r\n // }\r\n // this.loader.close();\r\n // }, \r\n // error: (err) => {\r\n // this.isTargetReached = false;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'errorIL',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // }\r\n // })\r\n // }\r\n\r\n onApplicationTypeSelected(event) {\r\n let selected = event.value;\r\n // this.getVillageData();\r\n this.applicationSelected = selected;\r\n this.waterSourceTypeList = [];\r\n this.componentList = [];\r\n let selectedAppData = this.schemeMasterList.filter(\r\n (d) => d.type === this.applicationSelected\r\n )[0].data;\r\n this.loader.start();\r\n of(...selectedAppData)\r\n .pipe(\r\n groupBy((p: any) => p.Source_Name),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ waterSource: arr[0], component: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n this.loader.close();\r\n this.waterSourceTypeList = p;\r\n if (this.applicationSelected == 'Individual') {\r\n // this.listAllOutletData();\r\n } else {\r\n this.canalOutletList = [];\r\n }\r\n }, error => {\r\n this.loader.close();\r\n });\r\n }\r\n\r\n onCanalOutletSelected(event) {\r\n let selected = event.value;\r\n this.outletTypeList = [];\r\n let selectedAppData = this.canalOutletList?.filter(\r\n (d) => d.canal === selected\r\n )[0].data;\r\n this.outletTypeList = selectedAppData;\r\n console.log(\"this.outletTypeList\", this.outletTypeList)\r\n // if (!this.applicationId) {\r\n // if (\r\n // this.selectedWatersourceType == 'Canal' ||\r\n // this.selectedWatersourceType == 'STP'\r\n // ) {\r\n // console.log(\"this.landIDList\", this.selectedLandIdList)\r\n // console.log(\"this.selectedLandIdList\", this.selectedLandIdList)\r\n // this.landIDList = this.selectedLandIdList?.filter(\r\n // (x) => x.Village_Code == this.outletTypeList[0].villageCode\r\n // );\r\n // console.log(\"this.landIDList\", this.selectedLandIdList)\r\n // } else {\r\n // this.landIDList = this.selectedLandIdList;\r\n // }\r\n // }\r\n }\r\n\r\n editProduct(ele) {\r\n this.selectedMI=ele.mi;\r\n\r\n // this.getAllMIvenders(this.selectedMI);\r\n // this.onSelectMI();\r\n\r\n this.miApplicatonForm.reset();\r\n\r\n this.miApplicatonForm.patchValue({\r\n landId: ele.landId,\r\n // landId: this.landIDList.filter(r => r.Land_ID === ele.landId)[0].displayName,\r\n mi: ele.mi,\r\n // vendor: ele.vendorId,\r\n });\r\n this.addBankDialog = true;\r\n\r\n if(ele.vendorId){\r\n this.miSelectedVendor=ele.vendorId;\r\n\r\n }else{\r\n // this.loader.start();\r\n this.farmerAppSer\r\n .getAllMIvenders(ele.mi)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n console.log(\"All MI Vendor Data\", res)\r\n this.miVendorList = res;\r\n \r\n let val = res.find(val => val.Vendor_Code == ele.vendorCode);\r\n // console.log(\"val\", val);\r\n this.miSelectedVendor = val;\r\n \r\n // this.loader.close();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n \r\n \r\n }\r\n editFarmersInGroup(ele) {\r\n // this.miApplicatonForm.reset();\r\n // this.miApplicatonForm.patchValue({\r\n // landId: ele.Land_ID,\r\n // // landId: this.landIDList.filter(r => r.Land_ID === ele.landId)[0].displayName,\r\n // mi: ele.mi,\r\n // vendor: ele.vendor\r\n // });\r\n this.addFarmerGroupDialog = true;\r\n }\r\n\r\n deleteProduct(ele) {\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n this.miDetailsList = this.miDetailsList.filter(\r\n (val) => val.landId !== ele.landId\r\n );\r\n if(this.miDetailsList.length==0){\r\n this.isDisabled=false;\r\n }\r\n },\r\n });\r\n }\r\n deleteFarmersInGroup(ele) { }\r\n\r\n hideDialog() {\r\n this.miApplicatonForm.reset();\r\n this.addBankDialog = false;\r\n }\r\n hideFarmersAddToGroupDialog() {\r\n this.addFarmerGroupDialog = false;\r\n }\r\n\r\n saveProduct() {\r\n console.log('componentSelected', this.componentSelected)\r\n // mi: [''],\r\n // vendor: [''],\r\n // landId: ['']\r\n \r\n let filteredLand = this.landIDList.filter((x) => {\r\n return x.LandID == this.miApplicatonForm.value['landId'];\r\n });\r\n this.targetStatusBody['LandId']=this.miApplicatonForm.value['landId']\r\n this.targetStatusBody['ProgramId'] = this.selectedMI\r\n this.targetStatusBody['ApplyArea'] = filteredLand[0]?.TotalArea?filteredLand[0]?.TotalArea:filteredLand[0]?.totalArea\r\n this.targetStatusBody['SchemeCode'] = this.componentSelected?.Scheme_ID\r\n this.targetStatusBody['UHBVNAppId'] = this.tubewellAppId ? this.tubewellAppId : ''\r\n \r\n // this.getTargetStatus( this.targetStatusBody);\r\n\r\n this.loader.start();\r\n this._personalDetalSer.getTargetStatus(this.targetStatusBody).subscribe({\r\n next: (data) => {\r\n if(data['Status'] != \"0\"){\r\n this.isTargetReached = true;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info MessageIL',\r\n detail: data['Status'],\r\n });\r\n }else{\r\n this.isTargetReached = false;\r\n\r\n // let vendorName = this.miVendorList.filter(\r\n // (x) =>\r\n // x.Vendor_Code == this.miApplicatonForm.value['vendor']['Vendor_Code']\r\n // )[0]?.Name;\r\n \r\n // console.log('Filtered Land', filteredLand);\r\n // console.log('vendorName', this.miSelectedVendor.Name);\r\n\r\n let miFarmValue = {\r\n mi: this.miApplicatonForm.value['mi'],\r\n vendor: this.miSelectedVendor? this.miSelectedVendor.Name : '',\r\n landId: this.miApplicatonForm.value['landId'],\r\n vendorId: this.miApplicatonForm.value['vendor'],\r\n landData: filteredLand[0]?.displayName,\r\n totalArea: filteredLand[0]?.TotalArea ? filteredLand[0]?.TotalArea : filteredLand[0]?.totalArea,\r\n };\r\n \r\n this.miDetailsList = this.miDetailsList.filter(\r\n (val) => val.landId !== miFarmValue.landId\r\n );\r\n \r\n this.miDetailsList.push(miFarmValue);\r\n this.miApplicatonForm.reset();\r\n this.addBankDialog = false;\r\n // console.log(this.miApplicatonForm.value)\r\n\r\n }\r\n this.loader.close();\r\n }, \r\n error: (err) => {\r\n this.isTargetReached = false;\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n })\r\n \r\n }\r\n\r\n saveFarmerToGroup() {\r\n this.selectedFarmersLandList = [];\r\n this.selectedGroupFarmersLandList = [];\r\n console.log(this.selectedFarmerLandDetails);\r\n if (this.applicationSelected === 'Group') {\r\n let farmerIds = []\r\n this.selectedFarmerLandDetails.forEach(farmer => {\r\n farmerIds.push(farmer.Farmer_ID.toString())\r\n })\r\n this.totalNumberOfFarmersInGroup = farmerIds.length;\r\n if (farmerIds.length) {\r\n this.loader.start();\r\n this.ofService\r\n .GetFarmerPastSubsidyByMultipleFarmerIds(farmerIds)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.farmerPreviousSubsidies = data;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n });\r\n },\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Group-Farmers Previous Subsidies not Fetched.',\r\n });\r\n return;\r\n }\r\n }\r\n this.selectedFarmerLandDetails.forEach((r) => {\r\n r.landDetails.forEach((element) => {\r\n // this.selectedFarmersLandList.push({\r\n // \"farmer_Id\": element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n // \"landID\": element.Land_ID ? element.Land_ID : element.LandID,\r\n // \"farmersName\": r.Name,\r\n // \"village\": r.vendorId ? r.venorId : r.Village_Code\r\n // })\r\n // this.selectedGroupFarmersLandList.push({\r\n // \"farmer_Id\": element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n // \"landID\": element.Land_ID ? element.Land_ID : element.LandID\r\n // })\r\n\r\n let filteredLands = this.selectedFarmersLandIdList.filter((x) => {\r\n return (\r\n x.Land_ID == (element.LandID ? element.LandID : element.Land_ID)\r\n );\r\n });\r\n\r\n if (filteredLands.length) {\r\n this.selectedFarmersLandList.push({\r\n farmer_Id: element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n landID: element.Land_ID ? element.Land_ID : element.LandID,\r\n farmersName: r.Name,\r\n // village: r.vendorId ? r.venorId : r.Village_Code,\r\n village: r.vendorId ? r.venorId : this.selectedVillage?.VillageName,\r\n });\r\n this.selectedGroupFarmersLandList.push({\r\n farmer_Id: element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n landID: element.Land_ID ? element.Land_ID : element.LandID,\r\n });\r\n }\r\n });\r\n });\r\n this.addFarmerGroupDialog = false;\r\n }\r\n\r\n getFarmerLandByFarmerIds() {\r\n let farmerIds = [];\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n //Here for Individual application Type\r\n if (this.applicationSelected === 'Individual') {\r\n let farmerId = farmerData?.['Farmer_ID'];\r\n farmerIds.push(farmerId.toString());\r\n } else {\r\n let farmerId = farmerData?.['Farmer_ID'];\r\n farmerIds.push(farmerId.toString());\r\n this.selectedFarmersLandList?.forEach((x) => {\r\n farmerIds.push(x.farmer_Id?.toString());\r\n });\r\n }\r\n\r\n let villageCodes = [];\r\n villageCodes.push(this.selectedVillageCode.toString());\r\n let body = {\r\n farmerId: farmerIds,\r\n villageCode: villageCodes,\r\n };\r\n this.loader.start();\r\n this.farmerAppSer.GetFarmerLandByFarmerIds(body).subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.length) {\r\n this.landIDList = this.transformLandIDData(data);\r\n return;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n //this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Cannot Get Farmer lands for Selected Village.' });\r\n },\r\n });\r\n }\r\n\r\n openNew() {\r\n // this.bankAccount = {};\r\n // this.submitted = false;\r\n this.miApplicatonForm.reset();\r\n this.getFarmerLandByFarmerIds();\r\n // this.getLandIds();\r\n this.addBankDialog = true;\r\n }\r\n addFarmersInGroup() {\r\n // this.bankAccount = {};\r\n // this.submitted = false;\r\n this.addFarmerGroupDialog = true;\r\n }\r\n\r\n validateAndGetSolarVendors() {\r\n if (\r\n this.solarApplicatonForm.controls.controlType.value &&\r\n this.solarApplicatonForm.controls.pump.value &&\r\n this.solarApplicatonForm.controls.pumpType.value\r\n ){\r\n // console.log(this.solarApplicatonForm.controls.controlType.value, \r\n // this.solarApplicatonForm.controls.pump.value,\r\n // this.solarApplicatonForm.controls.pumpType.value)\r\n this.getPumpCapacityList(this.solarApplicatonForm.controls.controlType.value, this.solarApplicatonForm.controls.pumpType.value, \r\n this.solarApplicatonForm.controls.pump.value);\r\n }\r\n\r\n if (\r\n this.solarApplicatonForm.controls.controlType.value &&\r\n this.solarApplicatonForm.controls.pump.value &&\r\n this.solarApplicatonForm.controls.pumpType.value &&\r\n this.solarApplicatonForm.controls.pumpCapacity.value\r\n ){\r\n this.getPrimarySolarVendors();\r\n }\r\n }\r\n\r\n getPumpCapacityList(PumpContType, PumpCategory, PumpType){\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getPumpCapacityList(PumpContType, PumpCategory, PumpType)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.pumpCapacityList = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n },\r\n });\r\n }\r\n\r\n onCapacityOfPumpSelected(event) {\r\n if (!this.solarApplicatonForm.controls.controlType.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - controlType Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pump.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pump Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pumpType.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pumpType Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pumpCapacity.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pumpCapacity Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.landId.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - landId Cant be Empty',\r\n });\r\n }\r\n\r\n this.validateAndGetSolarVendors();\r\n }\r\n\r\n getFarmerShare() {\r\n return this.solarMasterData.filter(\r\n (d: any) =>\r\n d.Pump_Controler_Type ===\r\n this.solarApplicatonForm.value['controlType'] &&\r\n d.Pump_Capacity === this.solarApplicatonForm.value['pumpCapacity'] &&\r\n d.Pump_Category === this.solarApplicatonForm.value['pumpType'] &&\r\n d.Pump_Type === this.solarApplicatonForm.value['pump']\r\n )[0];\r\n }\r\n\r\n onPondLandIdSelected(event) {\r\n this.selectedPondLand = event.value;\r\n }\r\n\r\n onSelectedTankType(event) {\r\n console.log(event.value);\r\n let selectedTankType = event.value?.Type;\r\n this.getTankListBasedOnType(selectedTankType);\r\n }\r\n\r\n onCoverageAreaSelected(event) {\r\n this.coverageAreaSelected = event.value;\r\n this.onFarmPondApplicatonForm.patchValue({\r\n topSize: this.coverageAreaSelected.Top_Size,\r\n bottomSize: this.coverageAreaSelected.Bottom_Size,\r\n depth: this.coverageAreaSelected.Depth,\r\n waterCapacity: this.coverageAreaSelected.Water_Capacity,\r\n tenativeCost: this.coverageAreaSelected.Total_Cost,\r\n tankId: this.coverageAreaSelected.Tank_ID,\r\n communityActualSubsidy: this.coverageAreaSelected.communityActualSubsidy,\r\n communityPayment: this.coverageAreaSelected.communityPayment,\r\n individualActualSubsidy: this.coverageAreaSelected.individualActualSubsidy,\r\n individualPayment: this.coverageAreaSelected.individualPayment,\r\n });\r\n }\r\n\r\n onSolarLandIdSelected(event) { }\r\n\r\n onVendorSelect(event) { }\r\n\r\n selectRow(checkValue, data) {\r\n if (checkValue) {\r\n let index = this.selectedFarmersLandIdList.indexOf(data);\r\n if (index == -1) {\r\n this.selectedFarmersLandIdList.push(data);\r\n }\r\n } else {\r\n let index = this.selectedFarmersLandIdList.indexOf(data);\r\n if (index !== -1) {\r\n this.selectedFarmersLandIdList.splice(index, 1);\r\n }\r\n }\r\n }\r\n\r\n selectHeaderRow(checkValue, data) {\r\n if (checkValue) {\r\n data.forEach((element) => {\r\n let index = this.selectedFarmersLandIdList.indexOf(element);\r\n if (index == -1) {\r\n this.selectedFarmersLandIdList.push(element);\r\n }\r\n });\r\n } else {\r\n data.forEach((element) => {\r\n let index = this.selectedFarmersLandIdList.indexOf(element);\r\n if (index !== -1) {\r\n this.selectedFarmersLandIdList.splice(index, 1);\r\n }\r\n });\r\n }\r\n }\r\n\r\n onSelectMI() {\r\n console.log(this.miList,\"miListmiList\")\r\n console.log('programId', this.selectedMI);\r\n this.selectedProgramId = this.selectedMI\r\n this.getAllMIvenders(this.selectedMI);\r\n if(this.miDetailsList.length>0){\r\n this.miDetailsList.forEach(e=>{\r\n if(e.mi==this.selectedMI){\r\n this.miSelectedVendor=e.vendorId\r\n this.isDisabled=true;\r\n console.log(this.miDetailsList,\"this.miDetailsList\")\r\n return;\r\n }\r\n else{\r\n this.isDisabled=false;\r\n } \r\n })\r\n\r\n }\r\n\r\n }\r\n\r\n getAllMIvenders(programId) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getAllMIvenders(programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n console.log(\"All MI Vendor Data\", res)\r\n this.miVendorList = res;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Category not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getAllOutletDataN(villageCode: any) {\r\n this.loader.start();\r\n this.farmerAppSer.GetAllOutletDetails(villageCode)\r\n .subscribe({\r\n next: (res) => {\r\n of(...res)\r\n .pipe(\r\n groupBy((p: any) => p.canal),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ canal: arr[0], data: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n // this.waterSourceTypeList[0].disabled = false;\r\n this.isVillhasCanal = true;\r\n this.showWaterCourseForm = true;\r\n this.showComponent = true;\r\n this.canalOutletListOrg = res;\r\n this.canalOutletList = p;\r\n this.loader.close();\r\n if(this.applicationId){\r\n this.onCanalOutletSelected({ value: this.watercourseApplicatonForm.controls.canal.value });\r\n }\r\n });\r\n },\r\n error: (err) => {\r\n console.log('err', err)\r\n this.isVillhasCanal = false;\r\n // this.waterSourceTypeList[0].disabled = true;\r\n this.loader.close(); \r\n },\r\n });\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n\r\n getOverFlowPondMasterData(villCode) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getOverFlowPondMaster([villCode])\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n console.log('overFlow Pond Master Data', res);\r\n this.overFlowPondList = res;\r\n if(this.overFlowPondList.length == 0){\r\n this.overFlowPondList = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found for selected village',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n console.log('error', err)\r\n this.loader.close();\r\n this.overFlowPondList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onUHBVNToggle(val){\r\n console.log(val);\r\n console.log(this.isAppliedForUHBVN);\r\n console.log(this.tubewellAppId);\r\n }\r\n\r\n validateUBVNAppId(){\r\n this.isUHBVNAppIdFound = false;\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getValidateUHBVNData(this.tubewellAppId, this.farmerMobileNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if(res[0].result == 1){\r\n this.isUHBVNAppIdFound = true;\r\n this.showClearUHBVNButton = true;\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'You have applied for Tubewell connection with UHBVN.',\r\n });\r\n }else{\r\n this.showClearUHBVNButton = false;\r\n this.isUHBVNAppIdFound = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Either UHBVN App No OR applied Aadhar No is incorrect.',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showClearUHBVNButton = false;\r\n this.isUHBVNAppIdFound = false;\r\n\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n clearUBVNAppId(){\r\n this.tubewellAppId = null;\r\n this.showClearUHBVNButton = false;\r\n this.isUHBVNAppIdFound = false;\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n

{{'FARMER ID NOT FOUND'| translate}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'FARMERS_APPLICATION'| translate}}
\r\n\r\n
\r\n
\r\n \r\n \r\n Tubewell connection (UHBVN)\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n\r\n \r\n
\r\n

{{ 'TARGET_REACHED_FOR_THE_SELECTED_VILLAGE._YOU_CANNOT_PROCEED_FURTHER.' | translate}}

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_FARMERS_LIST'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n {{'FARMER_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMERS_NAME'| translate}}\r\n \r\n \r\n \r\n {{'LAND_ID'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {{product.farmer_Id}}\r\n {{product.farmersName}}\r\n {{product.landID}}\r\n {{product.village}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{selectedFarmersLandList ? selectedFarmersLandList.length : 0 }} {{'FARMERS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'CANAL_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'OUTLET_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'WORKTYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SELECT_CHECKBOX'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
{{'OVERFLOW_POND'| translate}}
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'OVERFLOW_POND_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
{{'MI_FORM'| translate}}
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_MI_LIST'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'COMPONENT'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'LAND_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA_ACRE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.mi}}\r\n {{product.vendor}}\r\n {{product.landData}}\r\n {{product.totalArea}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{miDetailsList ? miDetailsList.length : 0 }} {{'COMPONENT_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'POND_FORM'| translate}}
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'LAND_ID_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'TANK_TYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'SIZE_COVERAGE_AREA_IA_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
{{'SOLAR_PUMP_DETAIL'| translate}}
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LAND_ID_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n\r\n
\r\n
{{'SELECT_BENEFICIARY_BANK'| translate}}
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DEPARTMENT'| translate}}\r\n {{'AREA'| translate}}\r\n {{'SUBSIDY_YEAR'| translate}}\r\n {{'AADHAR_NUMBER'| translate}}\r\n {{'SYSTEM'| translate}}\r\n {{'LAND_DETAILS'| translate}}\r\n {{'DIFF_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{subsidy.AppId}}\r\n {{subsidy.Department}}\r\n {{subsidy.Area | number : '1.2-2'}}\r\n {{subsidy.SubsidyYear}}\r\n {{subsidy.AadharNo}}\r\n {{subsidy.System}}\r\n {{subsidy.LandDetail}}\r\n {{subsidy.DiffYear}}\r\n \r\n \r\n \r\n \r\n {{'NO_RECORDS_TO_SHOW'| translate}}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'NAME'| translate}} \r\n \r\n {{'FATHER_NAME'| translate}} \r\n \r\n {{'MOTHER_NAME'| translate}} \r\n \r\n {{'PPP_ID'| translate}} \r\n \r\n {{'AADHAR_NO'| translate}} \r\n \r\n {{'VILLAGE_CODE'| translate}}\r\n \r\n {{'MOBILE'| translate}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Name}}\r\n {{product.Father_name}}\r\n {{product.Mother_Name}}\r\n {{product.PPP_ID}}\r\n {{product.Aadhar_No}}\r\n {{product.Village_Code}}\r\n {{product.Mobile}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'LAND_ID_'| translate}}\r\n \r\n {{'MORABBA_NO'| translate}}\r\n \r\n {{'KILLA_NO'| translate}} \r\n \r\n {{'KANALS'| translate}} \r\n \r\n {{'VILLAGE_CODE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{order.Land_ID}}\r\n {{order.Morabba_No}}\r\n {{order.Killa_No}}\r\n {{order.Kanals}}\r\n {{order.Village_Code}}\r\n \r\n \r\n \r\n \r\n {{'THERE_ARE_NO_LAND_FOR_THIS_FARMER'| translate}}.\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-beneficiary-details',\r\n templateUrl: './beneficiary-details.component.html',\r\n styleUrls: ['./beneficiary-details.component.scss'],\r\n providers: [DatePipe]\r\n})\r\nexport class BeneficiaryDetailsComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n \r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n // public benTypeList: any = [];\r\n public benTypeList: any = [\r\n {\r\n benName: 'MI Subsidy',\r\n benCode: 1\r\n },\r\n {\r\n benName: 'Pond/Tank Subsidy',\r\n benCode: 2\r\n }\r\n ]\r\n public selectedBenType: any;\r\n public selectedStartDate: any;\r\n public selectedEndDate: any;\r\n public showDataTable: boolean = false;\r\n public loading: boolean = false;\r\n public benificaryData: any = [];\r\n\r\n constructor(\r\n private translateService: TranslateService,\r\n private datePipe: DatePipe,\r\n private messageService: MessageService,\r\n private reportService: ReportsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n this.getBenfTypeList();\r\n \r\n this.selectedBenType = {\r\n benName: 'MI Subsidy',\r\n benCode: 1\r\n }\r\n\r\n this.onClickGetData();\r\n }\r\n\r\n getBenfTypeList(){\r\n setTimeout(val => {\r\n this.benTypeList = [\r\n {\r\n benName: 'MI Subsidy',\r\n benCode: 1\r\n },\r\n {\r\n benName: 'Pond/Tank Subsidy',\r\n benCode: 2\r\n }\r\n ]\r\n }, 100)\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code) \r\n }\r\n\r\n onSelectBenType(val){\r\n this.selectedStartDate = null;\r\n this.selectedEndDate = null;\r\n\r\n this.onClickGetData();\r\n }\r\n\r\n // clearGetData(){\r\n // }\r\n\r\n onClickGetData(){\r\n let beneficiaryType = this.selectedBenType; \r\n // let startDate = this.datePipe.transform(new Date(this.selectedStartDate), 'yyyy-MM-dd');\r\n // let endDate = this.datePipe.transform(new Date(this.selectedEndDate), 'yyyy-MM-dd');\r\n \r\n\r\n // let reqBody = {\r\n // benType: beneficiaryType,\r\n // startDate: startDate,\r\n // endDate: endDate\r\n // }\r\n\r\n this.showDataTable = true;\r\n\r\n if(beneficiaryType.benCode == 1){\r\n this.getMIBeneficiaryData();\r\n }else if(beneficiaryType.benCode == 2){\r\n this.getPondBeneficiaryData();\r\n }\r\n }\r\n\r\n getPondBeneficiaryData(){\r\n this.loading = true;\r\n this.reportService \r\n .getPondBeneficiaryReport()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loading = false;\r\n if(res.length > 0){\r\n this.benificaryData = res;\r\n }else{\r\n this.benificaryData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res,\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.benificaryData = [];\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getMIBeneficiaryData(){\r\n this.loading = true;\r\n this.reportService \r\n .getMIBeneficiaryReport('')\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loading = false;\r\n if(res.length > 0){\r\n this.benificaryData = res;\r\n }else{\r\n this.benificaryData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.benificaryData = [];\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","\r\n ...\r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-benificiary',\r\n templateUrl: './benificiary.component.html',\r\n styleUrls: ['./benificiary.component.scss']\r\n})\r\nexport class BenificiaryComponent implements OnInit {\r\n\r\n public tableData = [];\r\n public cols: any = [];\r\n isSubmitted = false;\r\n applicationId: any = null;\r\n inputId: any = '';\r\n inputPhone: any = '';\r\n userID: any;\r\n // table: boolean = false;\r\n public tableHeaderName = 'Benificiary Details';\r\n BenificiaryReport: MenuItem[];\r\n\r\n constructor(\r\n public router: Router,\r\n private messageService: MessageService,\r\n private route: ActivatedRoute,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnDestroy(): void {\r\n console.log(\"Step 2\");\r\n }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Status', '', new Date(), 'Success');\r\n\r\n this.BenificiaryReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.tableData, `MI_${this.tableHeaderName}`);\r\n },\r\n }\r\n ,\r\n ];\r\n }\r\n\r\n getApplicationStatus() {\r\n if (!this.inputId && !this.inputPhone) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Enter Application Id/ Aadhar No Or Phone No',\r\n });\r\n return;\r\n }\r\n\r\n if (this.inputId) {\r\n if (this.inputId.length == 12) {\r\n this.inputPhone = '';\r\n this.getApplicationNo(this.inputId, this.inputPhone);\r\n } else if (this.inputId.startsWith('MI')) {\r\n this.applicationId = this.inputId;\r\n this.checkApplicationDetails();\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Enter Application Id/ Aadhar No properly.',\r\n });\r\n }\r\n }\r\n\r\n if (this.inputPhone) {\r\n if (this.inputPhone.length === 10) {\r\n this.inputId = '';\r\n this.getApplicationNo(this.inputId, this.inputPhone);\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Enter Phone No properly.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n // this.table = true;\r\n this.isSubmitted = true;\r\n }\r\n\r\n getApplicationNo(Aadhaar, mobile) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getAppIdByAadharNoOrPhone(Aadhaar, mobile)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n data = data.Table;\r\n if (data[0].Message) {\r\n this.tableData = [];\r\n this.cols = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data[0].Message,\r\n });\r\n return;\r\n } else {\r\n this.tableData = data;\r\n this.cols = Object.keys(data[0]);\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Get Application by Aadhar No', Aadhaar, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.tableData = [];\r\n this.cols = [];\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'Get Application by Aadhar No Err', Aadhaar, new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n checkApplicationDetails() {\r\n this.ngOnDestroy();\r\n if (((this.router.url.startsWith('/helpdesk')))) {\r\n this.router.navigate(['helpdesk', 'home', this.applicationId]);\r\n } else {\r\n this.router.navigate(['department', 'helpdesk', this.applicationId]);\r\n }\r\n }\r\n\r\n clearData() {\r\n this.tableData = [];\r\n this.inputPhone = null;\r\n this.inputId = null;\r\n }\r\n\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData;\r\n // let dataToSave = modelData.map((d: any) => {\r\n // console.log(d);\r\n // return {\r\n // 'Aadhar': d.Aadhar,\r\n // 'Application ID': d.Application_ID,\r\n // 'Area': d.Area,\r\n // 'Category': d.Category,\r\n // 'Department': d.Department,\r\n // 'District': d.District,\r\n // 'FarmerName': d.FarmerName,\r\n // 'FatherName': d.FatherName,\r\n // 'JE Verification Amount': d.JEVerificationAmount,\r\n // 'Land Details': d.LandDetails,\r\n // 'Mobile': d.Mobile,\r\n // 'Registration Date': d.Registration_Date,\r\n // 'Total Cost Verification': d.TotalCostVerification,\r\n // 'Vendor Name': d.Vendor_Name,\r\n // 'Village': d.Village,\r\n // 'Year': d.Year,\r\n // 'System': d.System\r\n // };\r\n // });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n}\r\nfunction convertToArray(tableData: any): any {\r\n throw new Error('Function not implemented.');\r\n}\r\n\r\n","\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
0\" class=\"d-flex justify-content-center align-items-center vh-100 mt-2\">\r\n \r\n
\r\n
\r\n
\r\n\r\n 0\" [columns]=\"cols\" [value]=\"tableData\" [rows]=\"10\" [paginator]=\"true\"\r\n [globalFilterFields]=\"['Aadhar', 'Application_ID', 'Area', 'Category', 'Department', 'District', 'FarmerName', 'FatherName', 'JEVerificationAmount', 'LandDetails', 'Mobile', 'Registration_Date', 'TotalCostVerification', 'Vendor_Name', 'Village', 'Year', 'system']\"\r\n responsiveLayout=\"scroll\" [rowHover]=\"true\" dataKey=\"Application_ID\"\r\n currentPageReportTemplate=\"{{'SHOWING' | translate}} {first} {{'TO' | translate}} {last} {{'OF' | translate}} {totalRecords} {{'ENTRIES' | translate}}\"\r\n [showCurrentPageReport]=\"true\" styleClass=\"p-datatable-gridlines\" [tableStyle]=\"{'max-width': '80rem'}\">\r\n\r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n {{ col }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ rowData[col] }}\r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n\r\n
\r\n\r\n\r\n","import {Component, OnInit, Output, EventEmitter, Input, Inject} from '@angular/core';\r\n// import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport {WebcamImage, WebcamInitError, WebcamUtil} from 'ngx-webcam';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-camera',\r\n templateUrl: './camera.component.html',\r\n styleUrls: ['./camera.component.scss']\r\n})\r\nexport class CameraComponent implements OnInit {\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n // toggle webcam on/off\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n // width: {ideal: 1024},\r\n // height: {ideal: 576}\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n\r\n // webcam snapshot trigger\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject();\r\n\r\n public ngOnInit(): void {\r\n // console.log(this.webcamImage);\r\n\r\n WebcamUtil.getAvailableVideoInputs()\r\n .then((mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n });\r\n }\r\n // constructor(public dialogRef: MatDialogRef,\r\n // @Inject(MAT_DIALOG_DATA) public data: any) {\r\n // // console.log(data);\r\n\r\n // }\r\n constructor(){\r\n\r\n }\r\n\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean|string): void {\r\n // true => move forward through devices\r\n // false => move backwards through devices\r\n // string => move to device with given deviceId\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n // console.log('active device: ' + deviceId);\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n // this.dialogRef.close(this.webcamImage);\r\n // console.log(this.webcamImage)\r\n }\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n}\r\n","\r\nclose h2\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n

0\">{{'MESSAGES'| translate}}:

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport saveAs from 'file-saver';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-cao-financial-details',\r\n templateUrl: './cao-financial-details.component.html',\r\n styleUrls: ['./cao-financial-details.component.scss']\r\n})\r\nexport class CaoFinancialDetailsComponent implements OnInit {\r\n @ViewChild('lotDataTable') tableContainer: ElementRef;\r\n @ViewChild('lotDetailsTable') tableContainer2: ElementRef;\r\n miUnderProcessReport: MenuItem[];\r\n lotDetailReport: MenuItem[];\r\n \r\n public totalSubsidyDisbursed: any = 0;\r\n public totalSubsidyDisbursedPDMC: any = 0;\r\n public totalSubsidyDisbursedTank: any = 0;\r\n\r\n public tankSubsidyChartData: any;\r\n public PDMCSubsidyChartData: any;\r\n public subsidyChartData: any;\r\n\r\n public subsidyDisbData: any;\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n\r\n public subsidyDisSumYearwise: any;\r\n public tankSubsidyDisSumYearwise: any;\r\n public PDMCSubsidyDisSumYearwise: any;\r\n\r\n public options: any;\r\n public lotNoByFinYear: any = [];\r\n public loading: boolean = false;\r\n public selectedLotNo: any;\r\n public lotDetails: any = [];\r\n\r\n public tableHeader: any = '';\r\n\r\n public lotData: any = [];\r\n public loading1: boolean = false;\r\n public showLotDataDialog: boolean = false;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadData();\r\n\r\n this.miUnderProcessReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.lotNoByFinYear, `Lot No List`);\r\n },\r\n }\r\n ];\r\n this.lotDetailReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelForLot(this.lotDetails, `Lot Detail`);\r\n },\r\n }\r\n ];\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n exportExcelForLot(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot No': d.Lot_No,\r\n 'App ID': d.AppID,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n 'Centre Share Amount': d.Centre_share_amt,\r\n 'State Share Amount': d.State_share_amt,\r\n 'TopUp': d.TopUp,\r\n 'aby': d.aby,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n 'CAORemarks': d.CAORemarks,\r\n 'Fin_Year': d.Fin_Year,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot No': d.Lot_No,\r\n 'Total Application': d.total_apps,\r\n 'Total Centre Share': d.total_centre_share,\r\n 'Total State Share': d.total_state_share,\r\n 'Total Topup': d.total_topup,\r\n 'Total ABY': d.total_aby,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n loadData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getSubsidyDistribution(1)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.subsidyDisbData = data;\r\n this.computeValue(data);\r\n } else {\r\n this.subsidyDisbData = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.subsidyDisbData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n computeValue(data) {\r\n console.log(data)\r\n const CRORE_CONVERSION = 10000000; // 1 crore = 10 million rupees\r\n\r\n // 1. Total Subsidy Dis Sum\r\n this.totalSubsidyDisbursed = data.reduce((acc, item) => acc + item.subsidy_dis, 0) / CRORE_CONVERSION;\r\n console.log(\"Total Subsidy Dis:\", this.totalSubsidyDisbursed);\r\n\r\n // 2. Sum of Tank and Non-Tank\r\n this.totalSubsidyDisbursedPDMC = data\r\n .filter(item => item.sub_type !== 'Tank')\r\n .reduce((acc, item) => acc + item.subsidy_dis, 0) / CRORE_CONVERSION;\r\n console.log(\"Tank Subsidy Dis:\", this.totalSubsidyDisbursedPDMC);\r\n\r\n this.totalSubsidyDisbursedTank = data\r\n .filter(item => item.sub_type === 'Tank')\r\n .reduce((acc, item) => acc + item.subsidy_dis, 0) / CRORE_CONVERSION;\r\n console.log(\"Non-Tank Subsidy Dis:\", this.totalSubsidyDisbursedTank);\r\n\r\n\r\n this.animateCounter('totalSubsidyDisbursed', this.totalSubsidyDisbursed);\r\n this.animateCounter('totalSubsidyDisbursedPDMC', this.totalSubsidyDisbursedPDMC);\r\n this.animateCounter('totalSubsidyDisbursedTank', this.totalSubsidyDisbursedTank);\r\n\r\n\r\n // Helper function to round to 2 decimal places\r\n const toCrores = (amount: number) => (amount / CRORE_CONVERSION).toFixed(3);\r\n\r\n const subsidyDisSumYearwise = data\r\n .reduce((acc, item) => {\r\n if (!acc[item.Fin_Year]) {\r\n acc[item.Fin_Year] = 0;\r\n }\r\n acc[item.Fin_Year] += item.subsidy_dis;\r\n return acc;\r\n }, {});\r\n\r\n // Formatting keys with year and sum in crores\r\n this.subsidyDisSumYearwise = Object.keys(subsidyDisSumYearwise).reduce((acc, year) => {\r\n const sumInCrores = toCrores(subsidyDisSumYearwise[year]);\r\n acc[`${year} (${sumInCrores})`] = parseFloat(sumInCrores);\r\n return acc;\r\n }, {});\r\n\r\n console.log(\"Yearwise Subsidy Dis (in Crores):\", this.subsidyDisSumYearwise);\r\n\r\n // 3. Yearwise sum for Tank\r\n const tankSubsidyDisSumYearwise = data\r\n .filter(item => item.sub_type === 'Tank')\r\n .reduce((acc, item) => {\r\n if (!acc[item.Fin_Year]) {\r\n acc[item.Fin_Year] = 0;\r\n }\r\n acc[item.Fin_Year] += item.subsidy_dis;\r\n return acc;\r\n }, {});\r\n\r\n // Formatting keys with year and sum in crores\r\n this.tankSubsidyDisSumYearwise = Object.keys(tankSubsidyDisSumYearwise).reduce((acc, year) => {\r\n const sumInCrores = toCrores(tankSubsidyDisSumYearwise[year]);\r\n acc[`${year} (${sumInCrores})`] = parseFloat(sumInCrores);\r\n return acc;\r\n }, {});\r\n\r\n console.log(\"Yearwise Tank Subsidy Dis (in Crores):\", this.tankSubsidyDisSumYearwise);\r\n\r\n // 4. Yearwise sum for Non-Tank\r\n const nonTankSubsidyDisSumYearwise = data\r\n .filter(item => item.sub_type !== 'Tank')\r\n .reduce((acc, item) => {\r\n if (!acc[item.Fin_Year]) {\r\n acc[item.Fin_Year] = 0;\r\n }\r\n acc[item.Fin_Year] += item.subsidy_dis;\r\n return acc;\r\n }, {});\r\n\r\n // Formatting keys with year and sum in crores\r\n this.PDMCSubsidyDisSumYearwise = Object.keys(nonTankSubsidyDisSumYearwise).reduce((acc, year) => {\r\n const sumInCrores = toCrores(nonTankSubsidyDisSumYearwise[year]);\r\n acc[`${year} (${sumInCrores})`] = parseFloat(sumInCrores);\r\n return acc;\r\n }, {});\r\n\r\n console.log(\"Yearwise Non-Tank Subsidy Dis (in Crores):\", this.PDMCSubsidyDisSumYearwise);\r\n\r\n this.loadGraph();\r\n }\r\n\r\n private animateCounter(property: string, endValue: number): void {\r\n const duration = 2000; // Duration of the animation in milliseconds\r\n const frameRate = 60; // Number of updates per second\r\n const totalFrames = (duration / 1000) * frameRate;\r\n let frame = 0;\r\n\r\n const intervalId = setInterval(() => {\r\n frame++;\r\n const progress = frame / totalFrames;\r\n const currentCount = Math.floor(progress * endValue);\r\n\r\n this[property] = currentCount;\r\n\r\n if (frame >= totalFrames) {\r\n clearInterval(intervalId);\r\n this[property] = endValue; // Ensure the final value is set\r\n }\r\n }, 1000 / frameRate);\r\n }\r\n\r\n loadGraph() {\r\n // Extract and sort the keys based on the financial year\r\n const tankSortedKeys = Object.keys(this.tankSubsidyDisSumYearwise).sort((a, b) => {\r\n const yearA = parseInt(a.split(' ')[0].split('-')[0], 10);\r\n const yearB = parseInt(b.split(' ')[0].split('-')[0], 10);\r\n\r\n return yearA - yearB;\r\n });\r\n\r\n const tankSortedValues = tankSortedKeys.map(key => this.tankSubsidyDisSumYearwise[key]);\r\n\r\n this.tankSubsidyChartData = {\r\n labels: tankSortedKeys,\r\n datasets: [\r\n {\r\n data: tankSortedValues,\r\n backgroundColor: [\r\n '#0073e6',\r\n '#3399ff',\r\n '#80bfff'\r\n ],\r\n hoverBackgroundColor: [\r\n '#0073e6',\r\n '#3399ff',\r\n '#80bfff'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n // Extract and sort the keys based on the financial year\r\n const PDMCSortedKeys = Object.keys(this.PDMCSubsidyDisSumYearwise).sort((a, b) => {\r\n const yearA = parseInt(a.split(' ')[0].split('-')[0], 10);\r\n const yearB = parseInt(b.split(' ')[0].split('-')[0], 10);\r\n\r\n return yearA - yearB;\r\n });\r\n\r\n const PDMCSortedValues = PDMCSortedKeys.map(key => this.PDMCSubsidyDisSumYearwise[key]);\r\n\r\n\r\n this.PDMCSubsidyChartData = {\r\n labels: PDMCSortedKeys,\r\n datasets: [\r\n {\r\n data: PDMCSortedValues,\r\n backgroundColor: [\r\n '#26734d',\r\n '#39ac73',\r\n '#79d2a6'\r\n ],\r\n hoverBackgroundColor: [\r\n '#26734d',\r\n '#39ac73',\r\n '#79d2a6'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n // Extract and sort the keys based on the financial year\r\n const sortedKeys = Object.keys(this.subsidyDisSumYearwise).sort((a, b) => {\r\n const yearA = parseInt(a.split(' ')[0].split('-')[0], 10);\r\n const yearB = parseInt(b.split(' ')[0].split('-')[0], 10);\r\n\r\n return yearA - yearB;\r\n });\r\n\r\n const sortedValues = sortedKeys.map(key => this.subsidyDisSumYearwise[key]);\r\n\r\n this.subsidyChartData = {\r\n labels: sortedKeys,\r\n datasets: [\r\n {\r\n data: sortedValues,\r\n backgroundColor: [\r\n '#b30000',\r\n '#ff3333',\r\n '#ff9999'\r\n ],\r\n hoverBackgroundColor: [\r\n '#b30000',\r\n '#ff3333',\r\n '#ff9999'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.options = {\r\n responsive: true,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: 'white',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n animation: {\r\n animateScale: true,\r\n animateRotate: true\r\n },\r\n cutout: '0%',\r\n elements: {\r\n arc: {\r\n borderWidth: 0,\r\n borderAlign: 'center',\r\n offset: 15\r\n }\r\n },\r\n };\r\n }\r\n\r\n onClickPie(event, lotType) {\r\n const index = event.element.index; \r\n // const clickedData = this.subsidyChartData.datasets[0].data[index]; \r\n\r\n const clickedLabel = this.subsidyChartData.labels[index];\r\n\r\n const financialYear = clickedLabel.split(' ')[0];\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400);\r\n\r\n let lotName = lotType;\r\n if(lotName == ''){\r\n lotName = 'PDMC + Tank'\r\n }\r\n this.tableHeader = `All lots of (${lotName}) of Financial Year: ${financialYear}`\r\n\r\n this.getLotNoByFinYear(financialYear, lotType);\r\n }\r\n\r\n getLotNoByFinYear(finYear, lotType) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getDistinctLotNoByFinYear(finYear, lotType)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.lotNoByFinYear = data;\r\n } else {\r\n this.lotNoByFinYear = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.lotNoByFinYear = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectRow(val){\r\n this.selectedLotNo = val?.Lot_No;\r\n this.loadLotDetails(val?.Lot_No);\r\n setTimeout( () => this.tableContainer2.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n }\r\n\r\n onClickLotNo(val){\r\n let lotNo = val?.Lot_No;\r\n let lotType = lotNo.slice(4, 7);\r\n if(lotType == \"STF\"){\r\n this.showLotDataDialog = true;\r\n this.lotData = [];\r\n let apiName = 'GetApplicationsForMISubsidyToFarmerPFMSExport';\r\n this.loadLotData(apiName, lotNo);\r\n }else if(lotType == \"STV\"){\r\n this.showLotDataDialog = true;\r\n this.lotData = [];\r\n let apiName = 'GetApplicationsForMISubsidyToVendorPFMSExport';\r\n this.loadLotData(apiName, lotNo);\r\n }else if(lotType == \"TS1\"){\r\n this.showLotDataDialog = true;\r\n this.lotData = [];\r\n this.loadTankLotData(1, lotNo);\r\n }else if(lotType == \"TS2\"){\r\n this.showLotDataDialog = true;\r\n this.lotData = [];\r\n this.loadTankLotData(2, lotNo);\r\n }else if(lotType == \"TS3\"){\r\n this.showLotDataDialog = true;\r\n this.lotData = [];\r\n this.loadTankLotData(3, lotNo);\r\n }\r\n }\r\n\r\n hideDialog(){\r\n this.showLotDataDialog = false;\r\n this.lotData = [];\r\n }\r\n\r\n loadTankLotData(tankType, lotNo) {\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub = this.reportsService\r\n .getTankLotDataInCAOFinDashboard(tankType, lotNo, '', '')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n if (data?.length > 0) {\r\n this.lotData = data;\r\n } else {\r\n this.lotData = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.lotData = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n loadLotData(apiName, lotNo) {\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub = this.reportsService\r\n .getLotDataInCAOFinDashboard(apiName, lotNo, '', '')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n if (data?.length > 0) {\r\n this.lotData = data;\r\n } else {\r\n this.lotData = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.lotData = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n loadLotDetails(lotNo) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getPaymentsByLotNo(lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.lotDetails = data;\r\n } else {\r\n this.lotDetails = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.lotDetails = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onClickApp(appId) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree(['cao', 'print', appId]));\r\n window.open(link, '_blank');\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n\r\n
\r\n
    \r\n
  • \r\n {{ 'Subsidy Disbursed (Tank) (₹): '}}\r\n  \r\n {{ totalSubsidyDisbursedTank | number }}  Cr.\r\n
  • \r\n
  • \r\n {{ 'Subsidy Disbursed (PDMC) (₹): '}}\r\n  \r\n {{ totalSubsidyDisbursedPDMC | number }}  Cr.\r\n
  • \r\n
  • \r\n {{ 'Total Subsidy Disbursed (₹): '}}\r\n  \r\n {{ totalSubsidyDisbursed | number }}  Cr.\r\n
  • \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"dashboardTable card\">\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ tableHeader | translate}}
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'LOT_NO'| translate}}\r\n {{'Total Apps'| translate}}\r\n {{'CENTER_SHARE_AMOUNT'| translate}}\r\n {{'STATE_SHARE_AMOUNT'| translate}}\r\n {{'TOP_UP_AMOUNT'| translate}}\r\n {{'ABY_AMOUNT'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{item?.Lot_No}}\r\n {{item?.total_apps}}\r\n {{item?.total_centre_share}}\r\n {{item?.total_state_share}}\r\n {{item?.total_topup}}\r\n {{item?.total_aby}}\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n\r\n
0\" class=\"dashboardTable card\">\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ 'Lot No '}} {{ selectedLotNo }}\r\n {{'details' }}
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'APP_ID'| translate}}\r\n {{'PFMS_PAYMENT_DATE'| translate}}\r\n {{'CENTER_SHARE_AMOUNT'| translate}}\r\n {{'STATE_SHARE_AMOUNT'| translate}}\r\n {{'TOP_UP_AMOUNT'| translate}}\r\n {{'ABY_AMOUNT'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'REMARKS'| translate}}\r\n {{'CAO_REMARKS'| translate}}\r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{item?.AppID}}\r\n {{item?.PFMSPaymentDate | date:'mediumDate'}}\r\n {{item?.Centre_share_amt}}\r\n {{item?.State_share_amt}}\r\n {{item?.TopUp}}\r\n {{item?.aby}}\r\n {{item?.Status}}\r\n {{item?.Remarks}}\r\n {{item?.CAORemarks}}\r\n {{item?.Fin_Year}}\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_FARMER_LOT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditDateTime}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.ABY}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_Type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{lotData ? lotData.length : 0 }}\r\n {{'MI_SUBSIDY_TO_FARMER_LOT_APPLICATIONS_ADDED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-cao',\r\n templateUrl: './cao.component.html',\r\n styleUrls: ['./cao.component.scss']\r\n})\r\nexport class CaoComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'jspdf-autotable';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-farmer-share-to-farmer-pfms-report',\r\n templateUrl: './farmer-share-to-farmer-pfms-report.component.html',\r\n styleUrls: ['./farmer-share-to-farmer-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class FarmerShareToFarmerPfmsReportComponent implements OnInit {\r\n\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) \r\n public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public filteredDataForExport: any = [];\r\n public miCertificateData: any = null;\r\n public isPrintClicked: boolean = false;\r\n public printGeneratedDate: any;\r\n \r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService,\r\n private translateService: TranslateService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"MI Farmer Share To Vendor PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"MI Farmer Share To Vendor PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.caoService.miFarmerShareToVendorPFMSReport(\"isAtal\")\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Farmer PFMS Report (ABY)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n else{\r\n this.farmerShareToVendorPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Farmer PFMS Report (ABY)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_Record', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n this.miCertificateData = null;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_Record,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.printGeneratedDate = this.toISOLocal(new Date()).replace(/.\\d+Z$/g, \"\")\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miFarmerShareToVendorPFMSExport(lotId, status, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Farmer PFMS Export (ABY)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.miSurveyData = [];\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Farmer PFMS Export (ABY)', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n\r\n this.miCertificateData = null;\r\n if(status== ''){\r\n this.caoService.getDataForLotCertificate(lotId, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.miCertificateData = data[0];\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Farmer PFMS Export (ABY) Lot Certificate', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Farmer PFMS Export (ABY) lot Certificate', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'File No': this.lotNo,\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSCCode': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number ? d.Vendor_Account_Number.toString() : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy'),\r\n 'Challan Amount Deposited': d?.Farmer_Share_To_Vendor,\r\n 'Programme Name': d?.Programme_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_type,\r\n 'MI Area': d?.MIArea,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n\r\n let dataToSaveForCertificate = [\r\n // {\r\n // 'Lot No': this.lotNo,\r\n // 'Date the lot of print generated': this.miCertificateData?.currentDate,\r\n // 'Period': `${this.miCertificateData?.prevDate} to ${this.miCertificateData?.currentDate}`,\r\n // // 'Statement 1': `Period date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}`,\r\n // 'Statement 1': `Total farmer share deposited till date ${this.miCertificateData?.currentDate} total application ${this.miCertificateData?.totalChallanApp} Amount Rs. ${this.miCertificateData?.totalChallanAmount}.`,\r\n // 'Statement 2': `Detail this lot no. ${this.lotNo } total Application ${this.miCertificateData?.totalLotApp} Amount Rs. ${this.miCertificateData?.totalLotAmount} from date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}.`,\r\n // 'Statement 3': `Payment for Farmer share done lot numbers, ${this.miCertificateData?.ImportLot == null ? '____' : this.miCertificateData?.ImportLot} Amount Rs.${this.miCertificateData?.ImportAmt == null ? '____' : this.miCertificateData?.ImportAmt}.`,\r\n // 'Certificate 1': `The farmer share of ${this.miCertificateData?.totalLotApp} no. of applications for amount Rs. ${this.miCertificateData?.totalLotAmount} has been received as per the portal report. This Lot is submitted for further processing as per the next process of verification and payment approval.`,\r\n // 'Certificate 2': `It is certified that the farmer share of each applications has been tallied with the bank account passbook and application wise amount has been credited in the Farmer share bank account of MICADA.`,\r\n // 'Certificate 3': `The ${this.miCertificateData?.totalLotApp} no. of cases for Rs. ${this.miCertificateData?.prevDate} is submitted for approval and payment to ${this.miCertificateData?.NoOfVendors == null ? 0 : this.miCertificateData?.NoOfVendors} no. of vendors as per details of lot ${this.lotNo}.`\r\n // }\r\n\r\n {\r\n '': `Lot No: ${this.lotNo}`,\r\n },\r\n {\r\n '': `Date the lot of print generated ${this.printGeneratedDate}`,\r\n },\r\n {\r\n '': `Period: ${this.miCertificateData?.prevDate} to ${this.miCertificateData?.currentDate}`,\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n\r\n '': `Total farmer share deposited till date ${this.miCertificateData?.currentDate} total application ${this.miCertificateData?.totalChallanApp} Amount Rs. ${this.miCertificateData?.totalChallanAmount}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n \r\n {\r\n\r\n '': `Detail this lot no. ${this.lotNo } total Application ${this.miCertificateData?.totalLotApp} Amount Rs. ${this.miCertificateData?.totalLotAmount} from date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n \r\n {\r\n '': `Payment for Farmer share done lot numbers, ${this.miCertificateData?.ImportLot == null ? '____' : this.miCertificateData?.ImportLot} Amount Rs.${this.miCertificateData?.ImportAmt == null ? '____' : this.miCertificateData?.ImportAmt}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 1:`\r\n },\r\n {\r\n\r\n '': `The farmer share of ${this.miCertificateData?.totalLotApp} no. of applications for amount Rs. ${this.miCertificateData?.totalLotAmount} has been received as per the portal report.`,\r\n },\r\n {\r\n '': `This Lot is submitted for further processing as per the next process of verification and payment approval.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` Director /MI`\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 2:`\r\n },\r\n {\r\n\r\n '': `It is certified that the farmer share of each applications has been tallied with the bank account passbook`,\r\n },\r\n {\r\n '': `and application wise amount has been credited in the Farmer share bank account of MICADA.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` CAO /Accounts Officer`\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 3:`\r\n },\r\n {\r\n\r\n '': `The ${this.miCertificateData?.totalLotApp} no. of cases for Rs. ${this.miCertificateData?.prevDate} is submitted for approval and payment to ${this.miCertificateData?.NoOfVendors == null ? 0 : this.miCertificateData?.NoOfVendors} no. of vendors as per details of lot ${this.lotNo}.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` CAO`\r\n }\r\n ]\r\n\r\n const worksheet2 = xlsx.utils.json_to_sheet(dataToSaveForCertificate);\r\n\r\n const workbook = { Sheets: { data: worksheet, certificate: worksheet2 }, SheetNames: [\"data\", \"certificate\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'FTV',\r\n SubTypeLot: 'ABY',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n\r\n // onPrint(divName){\r\n // this.isPrintClicked = true;\r\n // // var printContents = document.getElementById(divName).innerHTML;\r\n // // var originalContents = document.body.innerHTML; \r\n // // document.body.innerHTML = printContents;\r\n // // window.print();\r\n // // document.body.innerHTML = originalContents;\r\n // document.body.style.visibility=\"hidden\";\r\n // document.getElementById(divName).style.visibility='visible'\r\n // window.print();\r\n // document.body.style.visibility=\"visible\";\r\n // }\r\n\r\n toISOLocal(d) {\r\n var z = n => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n\r\n return z(d.getDate()) + '/'\r\n + z(d.getMonth() + 1) + '/' +\r\n d.getFullYear();\r\n }\r\n}\r\n\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'FARMER_SHARE_TO_VENDOR_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.dateofExport}}\r\n {{product?.No_of_Record}}\r\n {{product?.Sum_of_PFMS_Export}}\r\n {{product?.TargetDays}}\r\n {{product?.PendingCompletedDays}}\r\n \r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.NoOfPendingRecords}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n

File No : {{ lotNo }}

\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_MI_FARMER_SHARE' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GST_NO' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT_DEPOSITED' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Full_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.GST_NO}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Vendor_Bank_Name}}\r\n {{product.Vendor_IFSC_Code}}\r\n {{product.Vendor_Account_Number}}\r\n {{product.Vendor_Pan_Card_No}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.ChallanNo}}\r\n {{product.UTR}}\r\n {{product.CreditedOnDateTime | date:'mediumDate'}}\r\n {{product.Farmer_Share_To_Vendor}}\r\n {{product.Programme_Name}}\r\n {{product.UserType}}\r\n {{product.Applicant_type}}\r\n {{product.MIArea}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }}\r\n {{'MI_FARMER_SHARE_TO_VENDOR_LOT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'SANCTION_LETTER_HEADER'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_2022'| translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Lot no. {{ lotNo }}

\r\n

Date the lot of print generated {{ printGeneratedDate }}

\r\n
\r\n
\r\n
\r\n
\r\n

Period date {{ miCertificateData?.prevDate }} to date {{ miCertificateData?.currentDate }}

\r\n
\r\n
\r\n\r\n
Total farmer share deposited till date {{ miCertificateData?.currentDate }}\r\n total application {{ miCertificateData?.totalChallanApp}} Amount Rs. {{ miCertificateData?.totalChallanAmount }}.
\r\n
\r\n Detail this lot no. {{ lotNo }} total Application {{ miCertificateData?.totalLotApp }} Amount Rs. {{ miCertificateData?.totalLotAmount }} from date\r\n {{ miCertificateData?.prevDate }} to date {{ miCertificateData?.currentDate }}.
\r\n
\r\n Payment for Farmer share done lot numbers,\r\n {{ miCertificateData?.ImportLot == null ? '___' : miCertificateData?.ImportLot }} Amount Rs.{{ miCertificateData?.ImportAmt == null ? '___' : miCertificateData?.ImportAmt }}
\r\n\r\n\r\n
\r\n
Certificate-1
\r\n
The farmer share of {{ miCertificateData?.totalLotApp }} no. of\r\n applications for amount Rs. {{ miCertificateData?.totalLotAmount }} has been received as per the portal report. This Lot is submitted for\r\n further processing as per the next process of verification and payment approval.\r\n
\r\n
\r\n Director /MI\r\n
\r\n
\r\n\r\n
\r\n
Certificate-2
\r\n
It is certified that the farmer share of each\r\n applications has been tallied with the bank account passbook and application wise amount has been credited\r\n in the Farmer share bank account of MICADA.\r\n
\r\n
\r\n CAO / Accounts Officer\r\n
\r\n
\r\n\r\n
\r\n
Certificate-3
\r\n
The {{ miCertificateData?.totalLotApp }} no. of cases for Rs. {{ miCertificateData?.prevDate }} is\r\n submitted for approval and payment to {{ miCertificateData?.NoOfVendors == null ? '___' : miCertificateData?.NoOfVendors }} no. of vendors as per details of lot {{ lotNo }}\r\n
\r\n
\r\n CAO\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_FARMER_SHARE' | translate}} {{'VIEW_APPLICATION' |\r\n translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'jspdf-autotable';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-farmer-share-to-vendor-cao-pfms-report',\r\n templateUrl: './farmer-share-to-vendor-cao-pfms-report.component.html',\r\n styleUrls: ['./farmer-share-to-vendor-cao-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class FarmerShareToVendorCaoPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) \r\n public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public filteredDataForExport: any = [];\r\n public miCertificateData: any = null;\r\n public isPrintClicked: boolean = false;\r\n public printGeneratedDate: any;\r\n \r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService,\r\n private translateService: TranslateService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"MI Farmer Share To Vendor PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"MI Farmer Share To Vendor PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.getApplicationsForMIFarmerShareToVendorPFMSCAOReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n else{\r\n this.farmerShareToVendorPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_Record', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'NoOfPendingRecords', header: 'No of Pending Records' },\r\n { field: 'SumOfPendingRecords', header: 'Sum of Pending Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n this.miCertificateData = null;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_Record,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"Sum of Pending Records\": d.SumOfPendingRecords,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n \r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.printGeneratedDate = this.toISOLocal(new Date()).replace(/.\\d+Z$/g, \"\")\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miFarmerShareToVendorPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.miSurveyData = [];\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC)', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n\r\n this.miCertificateData = null;\r\n if(status== ''){\r\n this.caoService.getDataForLotCertificate(lotId, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.miCertificateData = data[0];\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC) Lot Certificate', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC) Lot Certificate', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'File No': this.lotNo,\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSCCode': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number ? d.Vendor_Account_Number.toString() : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'Aadhaar Number': d.Aadhar_No ? d.Aadhar_No.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy'),\r\n 'Challan Amount Deposited': d?.Farmer_Share_To_Vendor,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_type,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n\r\n let dataToSaveForCertificate = [\r\n // {\r\n // 'Lot No': this.lotNo,\r\n // 'Date the lot of print generated': this.miCertificateData?.currentDate,\r\n // 'Period': `${this.miCertificateData?.prevDate} to ${this.miCertificateData?.currentDate}`,\r\n // // 'Statement 1': `Period date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}`,\r\n // 'Statement 1': `Total farmer share deposited till date ${this.miCertificateData?.currentDate} total application ${this.miCertificateData?.totalChallanApp} Amount Rs. ${this.miCertificateData?.totalChallanAmount}.`,\r\n // 'Statement 2': `Detail this lot no. ${this.lotNo } total Application ${this.miCertificateData?.totalLotApp} Amount Rs. ${this.miCertificateData?.totalLotAmount} from date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}.`,\r\n // 'Statement 3': `Payment for Farmer share done lot numbers, ${this.miCertificateData?.ImportLot == null ? '____' : this.miCertificateData?.ImportLot} Amount Rs.${this.miCertificateData?.ImportAmt == null ? '____' : this.miCertificateData?.ImportAmt}.`,\r\n // 'Certificate 1': `The farmer share of ${this.miCertificateData?.totalLotApp} no. of applications for amount Rs. ${this.miCertificateData?.totalLotAmount} has been received as per the portal report. This Lot is submitted for further processing as per the next process of verification and payment approval.`,\r\n // 'Certificate 2': `It is certified that the farmer share of each applications has been tallied with the bank account passbook and application wise amount has been credited in the Farmer share bank account of MICADA.`,\r\n // 'Certificate 3': `The ${this.miCertificateData?.totalLotApp} no. of cases for Rs. ${this.miCertificateData?.prevDate} is submitted for approval and payment to ${this.miCertificateData?.NoOfVendors == null ? 0 : this.miCertificateData?.NoOfVendors} no. of vendors as per details of lot ${this.lotNo}.`\r\n // }\r\n\r\n {\r\n '': `Lot No: ${this.lotNo}`,\r\n },\r\n {\r\n '': `Date the lot of print generated ${this.printGeneratedDate}`,\r\n },\r\n {\r\n '': `Period: ${this.miCertificateData?.prevDate} to ${this.miCertificateData?.currentDate}`,\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n\r\n '': `Total farmer share deposited till date ${this.miCertificateData?.currentDate} total application ${this.miCertificateData?.totalChallanApp} Amount Rs. ${this.miCertificateData?.totalChallanAmount}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n \r\n {\r\n\r\n '': `Detail this lot no. ${this.lotNo } total Application ${this.miCertificateData?.totalLotApp} Amount Rs. ${this.miCertificateData?.totalLotAmount} from date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n \r\n {\r\n '': `Payment for Farmer share done lot numbers, ${this.miCertificateData?.ImportLot == null ? '____' : this.miCertificateData?.ImportLot} Amount Rs.${this.miCertificateData?.ImportAmt == null ? '____' : this.miCertificateData?.ImportAmt}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 1:`\r\n },\r\n {\r\n\r\n '': `The farmer share of ${this.miCertificateData?.totalLotApp} no. of applications for amount Rs. ${this.miCertificateData?.totalLotAmount} has been received as per the portal report.`,\r\n },\r\n {\r\n '': `This Lot is submitted for further processing as per the next process of verification and payment approval.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` Director /MI`\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 2:`\r\n },\r\n {\r\n\r\n '': `It is certified that the farmer share of each applications has been tallied with the bank account passbook`,\r\n },\r\n {\r\n '': `and application wise amount has been credited in the Farmer share bank account of MICADA.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` CAO /Accounts Officer`\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 3:`\r\n },\r\n {\r\n\r\n '': `The ${this.miCertificateData?.totalLotApp} no. of cases for Rs. ${this.miCertificateData?.prevDate} is submitted for approval and payment to ${this.miCertificateData?.NoOfVendors == null ? 0 : this.miCertificateData?.NoOfVendors} no. of vendors as per details of lot ${this.lotNo}.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` CAO`\r\n }\r\n ]\r\n\r\n const worksheet2 = xlsx.utils.json_to_sheet(dataToSaveForCertificate);\r\n\r\n const workbook = { Sheets: { data: worksheet, certificate: worksheet2 }, SheetNames: [\"data\", \"certificate\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'FTV',\r\n SubTypeLot: '',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n\r\n // onPrint(divName){\r\n // this.isPrintClicked = true;\r\n // // var printContents = document.getElementById(divName).innerHTML;\r\n // // var originalContents = document.body.innerHTML; \r\n // // document.body.innerHTML = printContents;\r\n // // window.print();\r\n // // document.body.innerHTML = originalContents;\r\n // document.body.style.visibility=\"hidden\";\r\n // document.getElementById(divName).style.visibility='visible'\r\n // window.print();\r\n // document.body.style.visibility=\"visible\";\r\n // }\r\n\r\n toISOLocal(d) {\r\n var z = n => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n\r\n return z(d.getDate()) + '/'\r\n + z(d.getMonth() + 1) + '/' +\r\n d.getFullYear();\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{\r\n 'FARMER_SHARE_TO_VENDOR_HEADER' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.dateofExport}}\r\n {{product?.No_of_Record}}\r\n {{product?.Sum_of_PFMS_Export}}\r\n {{product?.TargetDays}}\r\n {{product?.PendingCompletedDays}}\r\n \r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.NoOfPendingRecords}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'APPROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n

File No : {{ lotNo }}

\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_MI_FARMER_SHARE' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GST_NO' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT_DEPOSITED' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Full_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.GST_NO}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Vendor_Bank_Name}}\r\n {{product?.Vendor_IFSC_Code}}\r\n {{product?.Vendor_Account_Number}}\r\n {{product?.Vendor_Pan_Card_No}}\r\n {{product?.Pincode}}\r\n {{product?.Aadhar_No}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n {{product?.Farmer_Share_To_Vendor}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }}\r\n {{'MI_FARMER_SHARE_TO_VENDOR_LOT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'SANCTION_LETTER_HEADER'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_'| translate}}{{ selectedYear }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Lot no. {{ lotNo }}

\r\n

Date the lot of print generated {{ printGeneratedDate }}

\r\n
\r\n
\r\n
\r\n
\r\n

Period date {{ miCertificateData?.prevDate }} to date {{\r\n miCertificateData?.currentDate }}

\r\n
\r\n
\r\n\r\n
Total farmer share deposited till date {{\r\n miCertificateData?.currentDate }}\r\n total application {{ miCertificateData?.totalChallanApp}} Amount Rs. {{\r\n miCertificateData?.totalChallanAmount }}.
\r\n
\r\n Detail this lot no. {{ lotNo }} total Application {{\r\n miCertificateData?.totalLotApp }} Amount Rs. {{\r\n miCertificateData?.totalLotAmount }} from date\r\n {{ miCertificateData?.prevDate }} to date {{ miCertificateData?.currentDate\r\n }}.\r\n
\r\n
\r\n Payment for Farmer share done lot numbers,\r\n {{ miCertificateData?.ImportLot == null ? '___' : miCertificateData?.ImportLot }}\r\n Amount Rs.{{ miCertificateData?.ImportAmt == null ? '___' :\r\n miCertificateData?.ImportAmt }}\r\n
\r\n\r\n\r\n
\r\n
Certificate-1
\r\n
The farmer share of {{\r\n miCertificateData?.totalLotApp }} no. of\r\n applications for amount Rs. {{ miCertificateData?.totalLotAmount }} has been\r\n received as per the portal report. This Lot is submitted for\r\n further processing as per the next process of verification and payment approval.\r\n
\r\n
\r\n Director /MI\r\n
\r\n
\r\n\r\n
\r\n
Certificate-2
\r\n
It is certified that the farmer share of each\r\n applications has been tallied with the bank account passbook and application wise\r\n amount has been credited\r\n in the Farmer share bank account of MICADA.\r\n
\r\n
\r\n CAO / Accounts Officer\r\n
\r\n
\r\n\r\n
\r\n
Certificate-3
\r\n
The {{ miCertificateData?.totalLotApp\r\n }} no. of cases for Rs. {{ miCertificateData?.prevDate }} is\r\n submitted for approval and payment to {{ miCertificateData?.NoOfVendors == null ?\r\n '___' : miCertificateData?.NoOfVendors }} no. of vendors as per details of\r\n lot {{ lotNo }}\r\n
\r\n
\r\n CAO\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_FARMER_SHARE' | translate}} {{'VIEW_APPLICATION' |\r\n translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'jspdf-autotable';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-farmer-share-to-vendor-pfms-report',\r\n templateUrl: './farmer-share-to-vendor-pfms-report.component.html',\r\n styleUrls: ['./farmer-share-to-vendor-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class FarmerShareToVendorPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) \r\n public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public filteredDataForExport: any = [];\r\n public miCertificateData: any = null;\r\n public isPrintClicked: boolean = false;\r\n public printGeneratedDate: any;\r\n \r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService,\r\n private translateService: TranslateService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"MI Farmer Share To Vendor PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"MI Farmer Share To Vendor PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.miFarmerShareToVendorPFMSReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n else{\r\n this.farmerShareToVendorPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_Record', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'NoOfPendingRecords', header: 'No of Pending Records' },\r\n { field: 'SumOfPendingRecords', header: 'Sum of Pending Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n this.miCertificateData = null;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_Record,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"Sum of Pending Records\": d.SumOfPendingRecords,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n \r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.printGeneratedDate = this.toISOLocal(new Date()).replace(/.\\d+Z$/g, \"\")\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miFarmerShareToVendorPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.miSurveyData = [];\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC)', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n\r\n this.miCertificateData = null;\r\n if(status== ''){\r\n this.caoService.getDataForLotCertificate(lotId, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.miCertificateData = data[0];\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC) Lot Certificate', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share to Vendor PFMS Export (PDMC) Lot Certificate', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'File No': this.lotNo,\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSCCode': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number ? d.Vendor_Account_Number.toString() : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'Aadhaar Number': d.Aadhar_No ? d.Aadhar_No.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy'),\r\n 'Challan Amount Deposited': d?.Farmer_Share_To_Vendor,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_type,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n\r\n let dataToSaveForCertificate = [\r\n // {\r\n // 'Lot No': this.lotNo,\r\n // 'Date the lot of print generated': this.miCertificateData?.currentDate,\r\n // 'Period': `${this.miCertificateData?.prevDate} to ${this.miCertificateData?.currentDate}`,\r\n // // 'Statement 1': `Period date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}`,\r\n // 'Statement 1': `Total farmer share deposited till date ${this.miCertificateData?.currentDate} total application ${this.miCertificateData?.totalChallanApp} Amount Rs. ${this.miCertificateData?.totalChallanAmount}.`,\r\n // 'Statement 2': `Detail this lot no. ${this.lotNo } total Application ${this.miCertificateData?.totalLotApp} Amount Rs. ${this.miCertificateData?.totalLotAmount} from date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}.`,\r\n // 'Statement 3': `Payment for Farmer share done lot numbers, ${this.miCertificateData?.ImportLot == null ? '____' : this.miCertificateData?.ImportLot} Amount Rs.${this.miCertificateData?.ImportAmt == null ? '____' : this.miCertificateData?.ImportAmt}.`,\r\n // 'Certificate 1': `The farmer share of ${this.miCertificateData?.totalLotApp} no. of applications for amount Rs. ${this.miCertificateData?.totalLotAmount} has been received as per the portal report. This Lot is submitted for further processing as per the next process of verification and payment approval.`,\r\n // 'Certificate 2': `It is certified that the farmer share of each applications has been tallied with the bank account passbook and application wise amount has been credited in the Farmer share bank account of MICADA.`,\r\n // 'Certificate 3': `The ${this.miCertificateData?.totalLotApp} no. of cases for Rs. ${this.miCertificateData?.prevDate} is submitted for approval and payment to ${this.miCertificateData?.NoOfVendors == null ? 0 : this.miCertificateData?.NoOfVendors} no. of vendors as per details of lot ${this.lotNo}.`\r\n // }\r\n\r\n {\r\n '': `Lot No: ${this.lotNo}`,\r\n },\r\n {\r\n '': `Date the lot of print generated ${this.printGeneratedDate}`,\r\n },\r\n {\r\n '': `Period: ${this.miCertificateData?.prevDate} to ${this.miCertificateData?.currentDate}`,\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n\r\n '': `Total farmer share deposited till date ${this.miCertificateData?.currentDate} total application ${this.miCertificateData?.totalChallanApp} Amount Rs. ${this.miCertificateData?.totalChallanAmount}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n \r\n {\r\n\r\n '': `Detail this lot no. ${this.lotNo } total Application ${this.miCertificateData?.totalLotApp} Amount Rs. ${this.miCertificateData?.totalLotAmount} from date ${this.miCertificateData?.prevDate} to date ${this.miCertificateData?.currentDate}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n \r\n {\r\n '': `Payment for Farmer share done lot numbers, ${this.miCertificateData?.ImportLot == null ? '____' : this.miCertificateData?.ImportLot} Amount Rs.${this.miCertificateData?.ImportAmt == null ? '____' : this.miCertificateData?.ImportAmt}.`,\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 1:`\r\n },\r\n {\r\n\r\n '': `The farmer share of ${this.miCertificateData?.totalLotApp} no. of applications for amount Rs. ${this.miCertificateData?.totalLotAmount} has been received as per the portal report.`,\r\n },\r\n {\r\n '': `This Lot is submitted for further processing as per the next process of verification and payment approval.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` Director /MI`\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 2:`\r\n },\r\n {\r\n\r\n '': `It is certified that the farmer share of each applications has been tallied with the bank account passbook`,\r\n },\r\n {\r\n '': `and application wise amount has been credited in the Farmer share bank account of MICADA.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` CAO /Accounts Officer`\r\n },\r\n {\r\n '': ``\r\n },\r\n {\r\n '': `Certificate 3:`\r\n },\r\n {\r\n\r\n '': `The ${this.miCertificateData?.totalLotApp} no. of cases for Rs. ${this.miCertificateData?.prevDate} is submitted for approval and payment to ${this.miCertificateData?.NoOfVendors == null ? 0 : this.miCertificateData?.NoOfVendors} no. of vendors as per details of lot ${this.lotNo}.`\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` `\r\n },\r\n {\r\n '': ` CAO`\r\n }\r\n ]\r\n\r\n const worksheet2 = xlsx.utils.json_to_sheet(dataToSaveForCertificate);\r\n\r\n const workbook = { Sheets: { data: worksheet, certificate: worksheet2 }, SheetNames: [\"data\", \"certificate\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n \r\n let reqBody = {\r\n lotType: 'FTV',\r\n subLotType: '',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n // this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n\r\n // onPrint(divName){\r\n // this.isPrintClicked = true;\r\n // // var printContents = document.getElementById(divName).innerHTML;\r\n // // var originalContents = document.body.innerHTML; \r\n // // document.body.innerHTML = printContents;\r\n // // window.print();\r\n // // document.body.innerHTML = originalContents;\r\n // document.body.style.visibility=\"hidden\";\r\n // document.getElementById(divName).style.visibility='visible'\r\n // window.print();\r\n // document.body.style.visibility=\"visible\";\r\n // }\r\n\r\n toISOLocal(d) {\r\n var z = n => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n\r\n return z(d.getDate()) + '/'\r\n + z(d.getMonth() + 1) + '/' +\r\n d.getFullYear();\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'FARMER_SHARE_TO_VENDOR_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.dateofExport}}\r\n {{product?.No_of_Record}}\r\n {{product?.Sum_of_PFMS_Export}}\r\n {{product?.TargetDays}}\r\n {{product?.PendingCompletedDays}}\r\n \r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.NoOfPendingRecords}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n

File No : {{ lotNo }}

\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_MI_FARMER_SHARE' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GST_NO' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT_DEPOSITED' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Full_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.GST_NO}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Vendor_Bank_Name}}\r\n {{product?.Vendor_IFSC_Code}}\r\n {{product?.Vendor_Account_Number}}\r\n {{product?.Vendor_Pan_Card_No}}\r\n {{product?.Pincode}}\r\n {{product?.Aadhar_No}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n {{product?.Farmer_Share_To_Vendor}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }}\r\n {{'MI_FARMER_SHARE_TO_VENDOR_LOT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'SANCTION_LETTER_HEADER'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_'| translate}}{{ selectedYear }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Lot no. {{ lotNo }}

\r\n

Date the lot of print generated {{ printGeneratedDate }}

\r\n
\r\n
\r\n
\r\n
\r\n

Period date {{ miCertificateData?.prevDate }} to date {{ miCertificateData?.currentDate }}

\r\n
\r\n
\r\n\r\n
Total farmer share deposited till date {{ miCertificateData?.currentDate }}\r\n total application {{ miCertificateData?.totalChallanApp}} Amount Rs. {{ miCertificateData?.totalChallanAmount }}.
\r\n
\r\n Detail this lot no. {{ lotNo }} total Application {{ miCertificateData?.totalLotApp }} Amount Rs. {{ miCertificateData?.totalLotAmount }} from date\r\n {{ miCertificateData?.prevDate }} to date {{ miCertificateData?.currentDate }}.
\r\n
\r\n Payment for Farmer share done lot numbers,\r\n {{ miCertificateData?.ImportLot == null ? '___' : miCertificateData?.ImportLot }} Amount Rs.{{ miCertificateData?.ImportAmt == null ? '___' : miCertificateData?.ImportAmt }}
\r\n\r\n\r\n
\r\n
Certificate-1
\r\n
The farmer share of {{ miCertificateData?.totalLotApp }} no. of\r\n applications for amount Rs. {{ miCertificateData?.totalLotAmount }} has been received as per the portal report. This Lot is submitted for\r\n further processing as per the next process of verification and payment approval.\r\n
\r\n
\r\n Director /MI\r\n
\r\n
\r\n\r\n
\r\n
Certificate-2
\r\n
It is certified that the farmer share of each\r\n applications has been tallied with the bank account passbook and application wise amount has been credited\r\n in the Farmer share bank account of MICADA.\r\n
\r\n
\r\n CAO / Accounts Officer\r\n
\r\n
\r\n\r\n
\r\n
Certificate-3
\r\n
The {{ miCertificateData?.totalLotApp }} no. of cases for Rs. {{ miCertificateData?.prevDate }} is\r\n submitted for approval and payment to {{ miCertificateData?.NoOfVendors == null ? '___' : miCertificateData?.NoOfVendors }} no. of vendors as per details of lot {{ lotNo }}\r\n
\r\n
\r\n CAO\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_FARMER_SHARE' | translate}} {{'VIEW_APPLICATION' |\r\n translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport * as XLSX from 'xlsx';\r\n\r\n@Component({\r\n selector: 'app-import-bank-data',\r\n templateUrl: './import-bank-data.component.html',\r\n styleUrls: ['./import-bank-data.component.scss'],\r\n})\r\nexport class ImportBankDataComponent implements OnInit {\r\n xslxToJsonData: any[] = [];\r\n uploadFile: any;\r\n cols: any;\r\n showViewDocDialog: boolean = false;\r\n sheetName: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private ipService: IpAddressService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let workBook = null;\r\n let jsonData = null;\r\n const reader = new FileReader();\r\n let file = event.files[0];\r\n this.uploadFile = file;\r\n reader.onload = (event) => {\r\n const data = reader.result;\r\n workBook = XLSX.read(data, { type: 'binary' });\r\n console.log(workBook);\r\n jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n const sheet = workBook.Sheets[name];\r\n this.sheetName = workBook.SheetNames\r\n console.log('name', name)\r\n initial[name] = XLSX.utils.sheet_to_json(sheet,\r\n {raw: false,\r\n header: name ? 0 : 1,\r\n dateNF:'mm/dd/yyyy;@'}\r\n );\r\n return initial;\r\n }, {});\r\n let sheetName = this.sheetName[0];\r\n const dataString = JSON.stringify(jsonData);\r\n this.xslxToJsonData = JSON.parse(dataString)[sheetName];\r\n console.log(this.xslxToJsonData, \"aaaa\");\r\n // this.xslxToJsonData.forEach(value => {\r\n // value['Value Date'] = new Date(value['Value Date'])\r\n // })\r\n console.log(this.xslxToJsonData, \"aaaa1\");\r\n if (!this.xslxToJsonData) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!',\r\n });\r\n }\r\n };\r\n reader.readAsBinaryString(file);\r\n uploadElement.clear();\r\n }\r\n\r\n onOpenDialog() {\r\n this.cols = [];\r\n let colHeaders = Object.keys(this.xslxToJsonData[0]);\r\n colHeaders.forEach((elem) => {\r\n this.cols.push({ field: elem, header: elem });\r\n });\r\n this.showViewDocDialog = true;\r\n }\r\n\r\n clearUpload() {\r\n // this.applicationSelected = undefined;\r\n this.xslxToJsonData = [];\r\n }\r\n\r\n onCloseDialog() {\r\n this.showViewDocDialog = false;\r\n }\r\n\r\n submitApplication() {\r\n // Construct the Request Body\r\n let body = [];\r\n\r\n let jsonList = [];\r\n this.xslxToJsonData.forEach((obj) => {\r\n jsonList.push({\r\n postingDate: obj['Posting date'] ? obj['Posting date'] : 0,\r\n accountNo: obj['Account No'] ? obj['Account No'] : 0,\r\n clientCode: obj['Client code'] ? obj['Client code'] : 0,\r\n clientName: obj['Client name'] ? obj['Client name'] : 0,\r\n referenceNo: obj['Reference No.'] ? obj['Reference No.'] : 0,\r\n amount: obj['Amount'] ? obj['Amount'] : 0,\r\n remitterAccount: obj['Remitter Account'] ? obj['Remitter Account'] : 0,\r\n remitterName: obj['Remitter Name'] ? obj['Remitter Name'] : 0,\r\n remitterBank: obj['Remitter Bank'] ? obj['Remitter Bank'] : 0,\r\n remitterIFSC: obj['Remitter IFSC'] ? obj['Remitter IFSC'] : 0,\r\n challanType: obj['Challan Type'] ? obj['Challan Type'] : 1\r\n });\r\n });\r\n let reqBody = {\r\n list: jsonList,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n };\r\n body.push(reqBody);\r\n\r\n console.log('reqBody', reqBody);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ( {{'IN_TOTAL_THERE_ARE' | translate}} {{xslxToJsonData?.length}} {{'ROWS_IN_SELECTED_DOCUMENT' | translate }} )\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n {{col.header}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{rowData[col.field]}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n","import { CaoService } from 'src/app/services/cao.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport * as XLSX from 'xlsx';\r\nimport { first } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-import-pfms-data',\r\n templateUrl: './import-pfms-data.component.html',\r\n styleUrls: ['./import-pfms-data.component.scss']\r\n})\r\nexport class ImportPfmsDataComponent implements OnInit {\r\n\r\n dropDownList: { type: any, value: any }[];\r\n applicationSelected: any;\r\n xslxToJsonData: any[] = [];\r\n uploadFile: any;\r\n responseDate: any = [];\r\n showViewDocDialog: boolean = false;\r\n cols: any[];\r\n userID:any;\r\n ipAddress: any = '000.000.000';\r\n exportDataResponse: any = [];\r\n loadingExportResponse: boolean = false;\r\n\r\n constructor(\r\n private ipService: IpAddressService, \r\n private caoService: CaoService, \r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.getIP();\r\n\r\n this.activityRecordService.activityRecord(this.userID, 'Import PFMS Excel Sheets', '', new Date(), 'Success');\r\n\r\n this.dropDownList = [\r\n {\r\n type: 'Farmer Share To Vendor', value: 'FTV'\r\n },\r\n {\r\n type: 'Subsidy To Farmer', value: 'STF'\r\n },\r\n {\r\n type: 'Subsidy To Vendor', value: 'STV'\r\n },\r\n {\r\n type: 'Refund To Farmer', value: 'RTF'\r\n },\r\n {\r\n type: 'Stage 1', value: 'Stage1'\r\n },\r\n {\r\n type: 'Stage 2', value: 'Stage2'\r\n },\r\n {\r\n type: 'Stage 3', value: 'Stage3'\r\n },\r\n ]\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let workBook = null;\r\n let jsonData = null;\r\n const reader = new FileReader();\r\n let file = event.files[0];\r\n this.uploadFile = file;\r\n reader.onload = (event) => {\r\n const data = reader.result;\r\n workBook = XLSX.read(data, { type: 'binary', cellText:false, cellDates:true });\r\n jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n const sheet = workBook.Sheets[name];\r\n initial[name] = XLSX.utils.sheet_to_json(sheet, {\r\n raw: false,\r\n dateNF:'yyyy-mm-dd',\r\n });\r\n return initial;\r\n }, {});\r\n const dataString = JSON.stringify(jsonData);\r\n this.xslxToJsonData = JSON.parse(dataString).data;\r\n if (!(this.xslxToJsonData)) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!' });\r\n }\r\n }\r\n reader.readAsBinaryString(file);\r\n uploadElement.clear();\r\n }\r\n\r\n onOpenDialog() {\r\n this.cols = [];\r\n let colHeaders = Object.keys(this.xslxToJsonData[0]);\r\n colHeaders.forEach(elem => {\r\n this.cols.push({ field: elem, header: elem })\r\n });\r\n this.showViewDocDialog = true;\r\n }\r\n\r\n clearUpload() {\r\n this.applicationSelected = undefined;\r\n this.xslxToJsonData = [];\r\n }\r\n\r\n onCloseDialog() {\r\n this.showViewDocDialog = false;\r\n }\r\n\r\n onApplicationTypeSelected(event) {\r\n this.applicationSelected = event.value;\r\n }\r\n\r\n submitApplication() {\r\n\r\n // Construct the Request Body\r\n let body = [];\r\n\r\n let jsonList = [];\r\n this.xslxToJsonData.forEach(obj => {\r\n if((this.applicationSelected.value === 'Stage1') || (this.applicationSelected.value === 'Stage2') || (this.applicationSelected.value === 'Stage3')) {\r\n jsonList.push({\r\n appID: obj['Scheme Specific ID'] ? obj['Scheme Specific ID'] : 0,\r\n // amount: obj['Challan Amount Deposited'] ? obj['Challan Amount Deposited'] : 0,\r\n ABY: obj['ABY'] ? obj['ABY'] : 0,\r\n TopUp: obj['Top Up'] ? obj['Top Up'] : 0,\r\n centre_share_amt: obj['Center Share Payment Amount'] ? obj['Center Share Payment Amount'] : 0,\r\n state_share_amt: obj['State Share Payment Amount'] ? obj['State Share Payment Amount'] : 0,\r\n TopUpPFMSPaymentDate: obj['Top Up PFMS Payment Date'] ? obj['Top Up PFMS Payment Date'] : '1900-01-01',\r\n pfmsPaymentDate: obj['PFMS Payment Date'] ? obj['PFMS Payment Date'] : '1900-01-01',\r\n status: obj['status'] ? obj['status'] : 0,\r\n remarks: obj['remarks'] ? obj['remarks'] : 0,\r\n })\r\n } else if((this.applicationSelected.value === 'STV') || (this.applicationSelected.value === 'STF')) {\r\n jsonList.push({\r\n appID: obj['Scheme Specific ID'] ? obj['Scheme Specific ID'] : obj['Scheme Specific Id'] ? obj['Scheme Specific Id'] : 0,\r\n // amount: obj['Challan Amount Deposited'] ? obj['Challan Amount Deposited'] : 0,\r\n centre_share_amt: obj['Center Share Payment Amount'] ? obj['Center Share Payment Amount'] : 0,\r\n state_share_amt: obj['State Share Payment Amount'] ? obj['State Share Payment Amount'] : 0,\r\n TopUp: obj['Top Up'] ? obj['Top Up'] : 0,\r\n TopUpPFMSPaymentDate: obj['Top Up PFMS Payment Date'] ? obj['Top Up PFMS Payment Date'] : '1900-01-01',\r\n pfmsPaymentDate: obj['PFMS Payment Date'] ? obj['PFMS Payment Date'] : '1900-01-01',\r\n status: obj['status'] ? obj['status'] : 0,\r\n remarks: obj['remarks'] ? obj['remarks'] : 0,\r\n })\r\n } else {\r\n jsonList.push({\r\n appID: obj['Scheme Specific ID'] ? obj['Scheme Specific ID'] : 0,\r\n amount: obj['Challan Amount Deposited'] ? obj['Challan Amount Deposited'] : 0,\r\n // state_share_amt: obj['Center Share Payment Amount'] ? obj['Center Share Payment Amount'] : 0,\r\n // centre_share_amt: obj['State Share Payment Amount'] ? obj['State Share Payment Amount'] : 0,\r\n status: obj['status'] ? obj['status'] : 0,\r\n remarks: obj['remarks'] ? obj['remarks'] : 0,\r\n pfmsPaymentDate: obj['PFMS Payment Date'] ? obj['PFMS Payment Date'] : '1900-01-01',\r\n })\r\n }\r\n })\r\n let reqBody = {\r\n list: jsonList,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n lotType: this.applicationSelected?.value\r\n }\r\n body.push(reqBody);\r\n\r\n // Categorize and Hit the API Accordingly\r\n if ((this.applicationSelected.value === 'STF') || (this.applicationSelected.value === 'STV')) {\r\n this.importMIPFMSSubsidyToFarmer_Vendor(body);\r\n } else if ((this.applicationSelected.value === 'FTV') || (this.applicationSelected.value === 'RTF')) {\r\n this.importMIPFMSFarmerShareToVendor_RefundToFarmer(body);\r\n } else if ((this.applicationSelected.value === 'Stage1') || (this.applicationSelected.value === 'Stage2') || (this.applicationSelected.value === 'Stage3')) {\r\n this.importPondPFMSSubsidyToFarmer(body);\r\n }\r\n }\r\n\r\n importMIPFMSSubsidyToFarmer_Vendor(body: any) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.caoService.importMIPFMSSubsidyToFarmer_Vendor(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.responseDate = data;\r\n this.loader.close();\r\n let isIncorrect = false;\r\n\r\n isIncorrect = this.responseDate.forEach((val, i) => {\r\n if(val?.IsCorrect == 0){\r\n isIncorrect = true;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: this.responseDate[i].Message });\r\n return;\r\n }\r\n \r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Submitted' });\r\n });\r\n \r\n \r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n importMIPFMSFarmerShareToVendor_RefundToFarmer(body: any) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.caoService.importMIPFMSFarmerShareToVendor_RefundToFarmer(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.responseDate = data;\r\n this.loader.close();\r\n let isIncorrect = false;\r\n\r\n isIncorrect = this.responseDate.forEach((val, i) => {\r\n if(val?.IsCorrect == 0){\r\n isIncorrect = true;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: this.responseDate[i].Message });\r\n return;\r\n }\r\n \r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Submitted' });\r\n });\r\n \r\n \r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n\r\n importPondPFMSSubsidyToFarmer(body: any) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.caoService.importPondPFMSSubsidyToFarmer(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.responseDate = data;\r\n this.loader.close();\r\n let isIncorrect = false;\r\n\r\n isIncorrect = this.responseDate.forEach((val, i) => {\r\n if(val?.IsCorrect == 0){\r\n isIncorrect = true;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: this.responseDate[i].Message });\r\n return;\r\n }\r\n \r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Submitted' });\r\n });\r\n \r\n \r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n\r\n responseGridBackgroundColor(product){\r\n if (product.IsCorrect == 0) {\r\n return '#ff8080';\r\n } else return '#ffffff';\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n 0\">\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ( {{'IN_TOTAL_THERE_ARE' | translate}} {{xslxToJsonData?.length}} {{'ROWS_IN_SELECTED_DOCUMENT' |\r\n translate }} )\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n {{col.header}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{rowData[col.field]}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
0\">\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'EXPORT_DATA_RESPONSE'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'MESSAGE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{responseData.AppId}}\r\n {{responseData.Amount}}\r\n {{responseData.Status}}\r\n {{responseData.Remarks}}\r\n {{responseData.Message}} \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-mi-survey-subsidy-disbursement',\r\n templateUrl: './mi-survey-subsidy-disbursement.component.html',\r\n styleUrls: ['./mi-survey-subsidy-disbursement.component.scss']\r\n})\r\n\r\nexport class MiSurveySubsidyDisbursementComponent implements OnInit {\r\n @ViewChild('appFarmerChallanTable', { static: true })\r\n public appFarmerChallanTable: Table;\r\n\r\n public selectedApplications: any = [];\r\n public appFarmerChallanModel: any = [];\r\n public viewChallan: boolean = false;\r\n\r\n public currentDate: Date;\r\n\r\n public challanPrintData: any = [];\r\n public remarks: any;\r\n public totalFarmerShareAmount: any = 0;\r\n\r\n public appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public date: any;\r\n public selectedData: any[];\r\n\r\n public selectedLotNumber: any;\r\n public lotNumbersforDropDown: any[];\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private caoService: CaoService,\r\n private loader: AppLoaderService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadLotNumbers();\r\n\r\n this.date = new Date();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.selectedApplications,\r\n `Selected Application For MI Survey (${this.date})`\r\n );\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.selectedApplications,\r\n // `Selected Data For Bank Challan (${this.date})`\r\n // );\r\n // },\r\n // },\r\n ];\r\n }\r\n\r\n loadLotNumbers() {\r\n this.loader.start();\r\n this.caoService\r\n .getMISubsidyLotNos()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => { \r\n console.log(\"data\", data);\r\n this.lotNumbersforDropDown = data;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Lot Numbers is not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectLotNumber(){\r\n // this.loadData(this.selectedLotNumber);\r\n this.appFarmerChallanModel = [];\r\n console.log(\"selectedLotNumber\", this.selectedLotNumber);\r\n let selectedLot = this.selectedLotNumber.LotNo\r\n this.loadData(selectedLot);\r\n }\r\n\r\n loadData(lotNo) {\r\n this.loader.start();\r\n this.caoService\r\n .getMIPFMSExport(lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => { \r\n console.log(\"data\", data);\r\n this.appFarmerChallanModel = data;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Applications not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calSum();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calSum();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n calSum() {\r\n this.totalFarmerShareAmount = 0;\r\n this.selectedApplications.forEach((val) => {\r\n this.totalFarmerShareAmount += val.FarmerShare;\r\n });\r\n }\r\n\r\n // printMultipleChallanAtal(reqBody) {\r\n // this.deptDashBoardService\r\n // .printMultipleChallanAtal(reqBody)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.currentDate = new Date();\r\n // this.challanPrintData = data;\r\n // },\r\n // error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n\r\n onPrint(divName) {\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n document.body.style.visibility=\"hidden\";\r\n document.getElementById(divName).style.visibility='visible'\r\n window.print();\r\n document.body.style.visibility=\"visible\";\r\n }\r\n\r\n onBack() {\r\n this.viewChallan = false;\r\n }\r\n\r\n onSubmit() {\r\n console.log('selectedApplications', this.selectedApplications);\r\n\r\n this.selectedData = [];\r\n\r\n this.selectedApplications.forEach((row) => {\r\n this.selectedData.push({\r\n appID: row.AppId,\r\n farmerId: row.FarmerId,\r\n programID: row.ProgID,\r\n });\r\n });\r\n\r\n let reqBody = {\r\n list: this.selectedData,\r\n status: 'A',\r\n remarks: this.remarks ? this.remarks : \"\",\r\n requestType: \"ByPassBank\"\r\n };\r\n console.log('reqBody', reqBody);\r\n\r\n this.approveOtherUsersChallan(reqBody);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n \r\n { field: 'AppId', header: 'Application ID' },\r\n { field: 'Total_Billed_Amount', header: 'Total_Billed_Amount' },\r\n { field: 'Total_Cost_Verification', header: 'Total_Cost_Verification' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'FarmerShare', header: 'FarmerShare' },\r\n { field: 'lotCreateTime', header: 'lotCreateTime' },\r\n { field: 'Crop_Name', header: 'Crop_Name' },\r\n { field: 'FarmerName', header: 'FarmerName' },\r\n { field: 'PlantSpacing', header: 'PlantSpacing' },\r\n { field: 'RowSpacing', header: 'RowSpacing' },\r\n { field: 'gpsCoordinate', header: 'gpsCoordinate' },\r\n { field: 'MIArea', header: 'MIArea' },\r\n { field: 'LotRemarks', header: 'LotRemarks' },\r\n { field: 'BOQAmount', header: 'BOQAmount' },\r\n { field: 'BOQFarmerShare', header: 'BOQFarmerShare' },\r\n { field: 'PaymentType', header: 'PaymentType' },\r\n { field: 'AmountDeposited', header: 'AmountDeposited' },\r\n { field: 'Admin_FarmerShare', header: 'Admin_FarmerShare' },\r\n { field: 'Admin_SubsidyToFarmer', header: 'Admin_SubsidyToFarmer' },\r\n { field: 'Admin_SubsidyToVendor', header: 'Admin_SubsidyToVendor' },\r\n { field: 'Admin_FarmerRefund', header: 'Admin_FarmerRefund' },\r\n { field: 'Admin_ApprovalDate', header: 'Admin_ApprovalDate' },\r\n { field: 'CenterShare_Amount', header: 'CenterShare_Amount' },\r\n { field: 'StateShare_Amount', header: 'StateShare_Amount' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'AppId': d.AppId,\r\n 'Total_Billed_Amount': d.Total_Billed_Amount,\r\n 'Total_Cost_Verification': d.Total_Cost_Verification,\r\n 'District': d.District, \r\n 'Block': d.Block, \r\n 'Village': d.Village, \r\n 'FarmerShare': d.FarmerShare, \r\n 'lotCreateTime': d.lotCreateTime, \r\n 'Crop_Name': d.Crop_Name, \r\n 'FarmerName': d.FarmerName, \r\n 'PlantSpacing': d.PlantSpacing, \r\n 'RowSpacing': d.RowSpacing,\r\n 'gpsCoordinate': d.gpsCoordinate,\r\n 'MIArea': d.MIArea,\r\n 'LotRemarks': d.LotRemarks,\r\n 'BOQAmount': d.BOQAmount,\r\n 'BOQFarmerShare': d.BOQFarmerShare,\r\n 'PaymentType': d.PaymentType,\r\n 'AmountDeposited': d.AmountDeposited,\r\n 'Admin_FarmerShare': d.Admin_FarmerShare,\r\n 'Admin_SubsidyToFarmer': d.Admin_SubsidyToFarmer,\r\n 'Admin_SubsidyToVendor': d.Admin_SubsidyToVendor,\r\n 'Admin_FarmerRefund': d.Admin_FarmerRefund,\r\n 'Admin_ApprovalDate': d.Admin_ApprovalDate,\r\n 'CenterShare_Amount': d.CenterShare_Amount,\r\n 'StateShare_Amount': d.StateShare_Amount,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n approveOtherUsersChallan(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .approveOtherUsersChallan(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n
\r\n
\r\n

{{'MI_SURVEY_SUBSIDY_DISBURSEMENT' | translate}}

\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
0\">\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SURVEY' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'APP_ID' | translate}}\r\n \r\n \r\n \r\n {{'TOTAL_BILLED_AMOUNT' | translate}}\r\n \r\n \r\n \r\n {{'TOTAL_COST_VERIFICATION' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE' | translate}}\r\n \r\n \r\n \r\n {{'LOT_CREATE_TIME' | translate}}\r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME' | translate}}\r\n \r\n \r\n \r\n {{'PLANT_SPACING' | translate }}\r\n \r\n \r\n {{'ROW_SPACING' | translate}}\r\n \r\n \r\n \r\n {{'GPS_COORDINATE' | translate}}\r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n {{'LOT_REMARKS' | translate}}\r\n \r\n \r\n \r\n {{'BOQ_AMOUNT' | translate}}\r\n \r\n \r\n \r\n {{'BOQ_FARMER_SHARE' | translate}}\r\n \r\n \r\n \r\n {{'PAYMENT_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_DEPOSITED' | translate}}\r\n \r\n \r\n \r\n {{'ADMIN_FARMERSHARE' | translate}}\r\n \r\n \r\n \r\n {{'ADMIN_SUBSIDYTOFARMER' | translate}}\r\n \r\n \r\n \r\n {{'ADMIN_SUBSIDYTOVENDOR' | translate}}\r\n \r\n \r\n \r\n {{'ADMIN_FARMERREFUND' | translate}}\r\n \r\n \r\n \r\n {{'ADMIN_APPROVALDATE' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_AMOUNT' | translate}}\r\n \r\n \r\n \r\n {{'STATE_SHARE_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AppId}}\r\n {{product.Total_Billed_Amount}}\r\n {{product.Total_Cost_Verification}}\r\n {{product.District}}\r\n {{product.Block}}\r\n {{product.Village}}\r\n {{product.FarmerShare}}\r\n {{product.lotCreateTime | date:'medium'}}\r\n {{product.Crop_Name}}\r\n {{product.FarmerName}}\r\n {{product.PlantSpacing}}\r\n {{product.RowSpacing}}\r\n {{product.gpsCoordinate}}\r\n {{product.MIArea}}\r\n {{product.LotRemarks}}\r\n {{product.BOQAmount}}\r\n {{product.BOQFarmerShare}}\r\n {{product.PaymentType}}\r\n {{product.AmountDeposited}}\r\n {{product.Admin_FarmerShare}}\r\n {{product.Admin_SubsidyToFarmer}}\r\n {{product.Admin_SubsidyToVendor}}\r\n {{product.Admin_FarmerRefund}}\r\n {{product.Admin_ApprovalDate | date:'medium'}}\r\n {{product.CenterShare_Amount}}\r\n {{product.StateShare_Amount}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_SELECTED_FOR_MI_SUREVY' | translate}}: {{ selectedApplications.length }}
\r\n
\r\n
\r\n

{{'TOTAL_FARMER_SHARE_AMOUNT' | translate}}: {{ totalFarmerShareAmount }}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-refund-to-farmer-aby',\r\n templateUrl: './refund-to-farmer-aby.component.html',\r\n styleUrls: ['./refund-to-farmer-aby.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class RefundToFarmerAbyComponent implements OnInit {\r\n\r\n @ViewChild('refundToFarmerPFMSReportTable', { static: true }) public refundToFarmerPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n refundToFarmerPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.refundToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.refundToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.refundToFarmerPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.caoService.miRefundToFarmerPFMSReport(\"isAtal\")\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Report (ABY)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n // console.log(data,\"data\")\r\n this.refundToFarmerPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Report (ABY)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miRefundToFarmerPFMSExport(lotId, status, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData);\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Export (ABY)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Export (ABY)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // refundToFarmer: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString() : '',\r\n 'Aadhaar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy'),\r\n 'Refund To Farmer': d.Refund_To_Farmer,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.ApplicantType,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'RTF',\r\n SubTypeLot: 'ABY',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'REFUND_TO_FARMER_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'|\r\n translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.NoOfPendingRecords}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.NoOfSuccessfullBankRec}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{refundToFarmerPFMSReportModel ?\r\n refundToFarmerPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_REFUND_TO_FARMER_LOT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n {{product?.Refund_To_Farmer}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.ApplicantType}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData.length : 0 }}\r\n {{'MI_REFUND_TO_FARMER_LOT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_REFUND_TO_FARMER_LOT' | translate}}: {{\r\n miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-return-to-farmer-cao-pfms-report',\r\n templateUrl: './return-to-farmer-cao-pfms-report.component.html',\r\n styleUrls: ['./return-to-farmer-cao-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class ReturnToFarmerCaoPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('refundToFarmerPFMSReportTable', { static: true }) public refundToFarmerPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n refundToFarmerPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.refundToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.refundToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.refundToFarmerPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n UserType: \"\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.getApplicationsForMIRefundToFarmerPFMSCAOReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n // console.log(data,\"data\")\r\n this.refundToFarmerPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"Sum of Pending Records\": d.SumOfPendingRecords,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miRefundToFarmerPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData);\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Export (PDMC)', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // refundToFarmer: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString() : '',\r\n 'Aadhaar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy'),\r\n 'Refund To Farmer': d.Refund_To_Farmer,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.ApplicantType,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'RTF',\r\n SubTypeLot: '',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{\r\n 'REFUND_TO_FARMER_PFMS_REPORTS' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'|\r\n translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.NoOfPendingRecords}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.NoOfSuccessfullBankRec}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{refundToFarmerPFMSReportModel ?\r\n refundToFarmerPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'APPROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_REFUND_TO_FARMER_LOT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n {{product?.Refund_To_Farmer}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.ApplicantType}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData.length : 0 }}\r\n {{'MI_REFUND_TO_FARMER_LOT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_REFUND_TO_FARMER_LOT' | translate}}: {{\r\n miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-return-to-farmer-pfms-report',\r\n templateUrl: './return-to-farmer-pfms-report.component.html',\r\n styleUrls: ['./return-to-farmer-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class ReturnToFarmerPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('refundToFarmerPFMSReportTable', { static: true }) public refundToFarmerPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n refundToFarmerPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.refundToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.refundToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.refundToFarmerPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n UserType: \"\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.miRefundToFarmerPFMSReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n // console.log(data,\"data\")\r\n this.refundToFarmerPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"Sum of Pending Records\": d.SumOfPendingRecords,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miRefundToFarmerPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData);\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Return To Farmer PFMS Export (PDMC)', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // refundToFarmer: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString() : '',\r\n 'Aadhaar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy'),\r\n 'Refund To Farmer': d.Refund_To_Farmer,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.ApplicantType,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n\r\n let reqBody = {\r\n lotType: 'RTF',\r\n subLotType: '',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n // this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'REFUND_TO_FARMER_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.NoOfPendingRecords}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.NoOfSuccessfullBankRec}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{refundToFarmerPFMSReportModel ?\r\n refundToFarmerPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_REFUND_TO_FARMER_LOT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n {{product?.Refund_To_Farmer}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.ApplicantType}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_REFUND_TO_FARMER_LOT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_REFUND_TO_FARMER_LOT' | translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, Input, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-subsidy-distribution-drill-down-report',\r\n templateUrl: './subsidy-distribution-drill-down-report.component.html',\r\n styleUrls: ['./subsidy-distribution-drill-down-report.component.scss']\r\n})\r\nexport class SubsidyDistributionDrillDownReportComponent implements OnInit {\r\n\r\n @Input() drillDownReqDetails: any;\r\n\r\n public userId: any;\r\n public appVerificationItems: MenuItem[];\r\n public reportData: any;\r\n public reportName: any = '';\r\n public reportYear: any = '';\r\n public loading: boolean = false;\r\n public subjectSub: any;\r\n public subscriptions: any = [];\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // this.vendorId=sessionStorage.getItem('officeCode');\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.reportData, `${this.reportName} (Financial Year: ${this.reportYear})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.reportData, \"LOT_report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n this.reportName = this.drillDownReqDetails?.selectedRow?.Activities;\r\n \r\n let val = this.drillDownReqDetails?.selectedRow;\r\n let finyear = '';\r\n if(this.drillDownReqDetails?.formatType == 2 || this.drillDownReqDetails?.formatType == 4){\r\n finyear = val?.['F.Y.'];\r\n }else if(this.drillDownReqDetails?.formatType == 3 || this.drillDownReqDetails?.formatType == 5 || this.drillDownReqDetails?.formatType == 6){\r\n console.log(this.drillDownReqDetails);\r\n // const filteredKeys = Object.keys(val).filter(key => key !== \"Apps\" && key.endsWith(\"Apps\"));\r\n // console.log(filteredKeys);\r\n finyear = this.drillDownReqDetails?.finYear;\r\n }\r\n\r\n this.reportYear = finyear;\r\n \r\n let reqBody = {\r\n \"paymentFinYear\": finyear,\r\n \"status\": this.drillDownReqDetails?.status,\r\n \"activityName\": val?.Activities,\r\n \"formatType\": this.drillDownReqDetails?.formatType,\r\n \"casteDesc\": val?.Caste_Description ? val?.Caste_Description : '',\r\n \"programName\": val?.Program_Name ? val?.Program_Name : '',\r\n }\r\n\r\n this.loading = true;\r\n let sub = this.reportsService.getSubsidyDistributionDrillDown(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.activityRecordService.activityRecord(this.userId, `Subsidy Distribution Drill Down Report (${this.reportName})`, '', new Date(), 'Success');\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.reportData = data;\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.reportData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.reportData = [];\r\n // this.activityRecordService.activityRecord(this.userId, `Subsidy Distribution Drill Down Report (${this.reportName})`, '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Payment Fin Year': d.PaymentFinYear,\r\n 'App Id': d.AppID,\r\n 'Lot No': d.Lot_No,\r\n 'Program_Name': d.Program_Name,\r\n 'Status': d.Status,\r\n 'State_share_amt': d.State_share_amt,\r\n 'Centre_share_amt': d.Centre_share_amt,\r\n 'TopUp': d.TopUp,\r\n 'aby': d.aby,\r\n 'Refund_to_Farmer': d.Refund_to_Farmer,\r\n 'FarmerShare_to_Vendor': d.FarmerShare_to_Vendor,\r\n 'Remarks': d.Remarks,\r\n 'CAORemarks': d.CAORemarks,\r\n }\r\n })\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
{{ reportName }} ({{ 'FINANCIAL_YEAR' | translate}}: {{ reportYear }})
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'LOT_NO'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'STATE_SHARE_AMOUNT'| translate}}\r\n {{'CENTER_SHARE_AMOUNT'| translate}}\r\n {{'TOP_UP'| translate}}\r\n {{'ABY'| translate}}\r\n {{'REFUND_TO_FARMER'| translate}}\r\n {{'FARMER_SHARE_TO_VENDOR'| translate}}\r\n {{'REMARKS'| translate}}\r\n {{'CAO_REMARKS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{data.AppID}}\r\n {{data.Lot_No}}\r\n {{data.Program_Name}}\r\n {{data.Status}}\r\n {{data.State_share_amt}}\r\n {{data.Centre_share_amt}}\r\n {{data.TopUp}}\r\n {{data.aby}}\r\n {{data.Refund_to_Farmer}}\r\n {{data.FarmerShare_to_Vendor}}\r\n {{data.Remarks}}\r\n {{data.CAORemarks}}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { DatePipe } from '@angular/common';\r\n\r\ninterface SubsidyData {\r\n Activities: string;\r\n 'F.Y.': string;\r\n 'No. of Lots'?: number; // Optional, since some tables don't have this\r\n 'Success Applications': number;\r\n 'Success Amount': number;\r\n 'Error Applications': number;\r\n 'Error Amount': number;\r\n}\r\n\r\ninterface SubsidyDataFormat5 {\r\n Activities: string;\r\n Type: string; // Renamed from Caste_Description\r\n\r\n // Financial Year 2022-23\r\n 'Lots 2022-23': number;\r\n 'Success Applications 2022-23': number;\r\n 'Success Amount 2022-23': number;\r\n 'Error Applications 2022-23': number;\r\n 'Error Amount 2022-23': number;\r\n\r\n // Financial Year 2023-24\r\n 'Lots 2023-24': number;\r\n 'Success Applications 2023-24': number;\r\n 'Success Amount 2023-24': number;\r\n 'Error Applications 2023-24': number;\r\n 'Error Amount 2023-24': number;\r\n\r\n // Financial Year 2024-25\r\n 'Lots 2024-25': number;\r\n 'Success Applications 2024-25': number;\r\n 'Success Amount 2024-25': number;\r\n 'Error Applications 2024-25': number;\r\n 'Error Amount 2024-25': number;\r\n}\r\n\r\n// Interface for FormatType=6 (Table 6)\r\ninterface SubsidyDataFormat6 {\r\n Activities: string;\r\n Type: string; // Renamed from Program_Name\r\n\r\n // Financial Year 2022-23\r\n 'Lots 2022-23': number;\r\n 'Success Applications 2022-23': number;\r\n 'Success Amount 2022-23': number;\r\n 'Error Applications 2022-23': number;\r\n 'Error Amount 2022-23': number;\r\n\r\n // Financial Year 2023-24\r\n 'Lots 2023-24': number;\r\n 'Success Applications 2023-24': number;\r\n 'Success Amount 2023-24': number;\r\n 'Error Applications 2023-24': number;\r\n 'Error Amount 2023-24': number;\r\n\r\n // Financial Year 2024-25\r\n 'Lots 2024-25': number;\r\n 'Success Applications 2024-25': number;\r\n 'Success Amount 2024-25': number;\r\n 'Error Applications 2024-25': number;\r\n 'Error Amount 2024-25': number;\r\n}\r\n\r\n// New interface for FormatType=3 (Table 3)\r\ninterface SubsidyDataFormat3 {\r\n Activities: string; // Mapped from LotType\r\n\r\n 'Applications 2022-23': number;\r\n 'Amount 2022-23': number;\r\n 'Applications 2023-24': number;\r\n 'Amount 2023-24': number;\r\n 'Applications 2024-25': number;\r\n 'Amount 2024-25': number;\r\n\r\n 'Total Applications': number;\r\n 'Total Amount': number;\r\n}\r\n\r\n@Component({\r\n selector: 'app-subsidy-distribution',\r\n templateUrl: './subsidy-distribution.component.html',\r\n styleUrls: ['./subsidy-distribution.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class SubsidyDistributionComponent implements OnInit {\r\n tableItems1: MenuItem[];\r\n tableItems2: MenuItem[];\r\n tableItems3: MenuItem[];\r\n tableItems4: MenuItem[];\r\n tableItems4b: MenuItem[];\r\n tableItems5: MenuItem[];\r\n tableItems6: MenuItem[];\r\n \r\n // Properties for Non-Tank Activities (First Table)\r\n dataFormatType2_nonTank: SubsidyData[] = [];\r\n rowSpan2_nonTank: { [key: string]: number } = {};\r\n loadingTable2_nonTank: boolean = true;\r\n\r\n grandTotalSuccessApplications2_nonTank: number = 0;\r\n grandTotalSuccessAmount2_nonTank: number = 0;\r\n grandTotalErrorApplications2_nonTank: number = 0;\r\n grandTotalErrorAmount2_nonTank: number = 0;\r\n\r\n // Properties for Tank Activities (New Table)\r\n dataFormatType2_tank: SubsidyData[] = [];\r\n rowSpan2_tank: { [key: string]: number } = {};\r\n loadingTable2_tank: boolean = true;\r\n\r\n grandTotalSuccessApplications2_tank: number = 0;\r\n grandTotalSuccessAmount2_tank: number = 0;\r\n grandTotalErrorApplications2_tank: number = 0;\r\n grandTotalErrorAmount2_tank: number = 0;\r\n\r\n // Properties for Table 3 (FormatType=3)\r\n dataFormatType3: SubsidyDataFormat3[] = [];\r\n loadingTable3: boolean = true;\r\n grandTotals3: { [key: string]: number } = {}; // Grand totals for Table 3\r\n\r\n // Properties for Table 4 (FormatType=4)\r\n dataFormatType4: SubsidyData[] = [];\r\n loadingTable4: boolean = true;\r\n rowSpan4: { [key: string]: number } = {};\r\n // Grand totals for Table 4\r\n grandTotalSuccessApplications4: number = 0;\r\n grandTotalSuccessAmount4: number = 0;\r\n grandTotalErrorApplications4: number = 0;\r\n grandTotalErrorAmount4: number = 0;\r\n grandTotalNoOfLots4: number = 0; // For 'No. of Lots'\r\n\r\n // Properties for Table 5 (FormatType=5)\r\n dataFormatType5: SubsidyDataFormat5[] = [];\r\n casteWiseDataType5: any = [];\r\n loadingTable5: boolean = true;\r\n rowSpan5: { [key: string]: number } = {};\r\n grandTotals5: { [key: string]: number } = {}; // Grand totals for Table 5\r\n\r\n // Properties for Table 6 (FormatType=6)\r\n dataFormatType4b: SubsidyDataFormat6[] = [];\r\n dataFormatType6: SubsidyDataFormat6[] = [];\r\n loadingTable6: boolean = true;\r\n rowSpan6: { [key: string]: number } = {};\r\n rowSpan4b: { [key: string]: number } = {};\r\n grandTotals6: { [key: string]: number } = {}; // Grand totals for Table 6\r\n grandTotals4b: { [key: string]: number } = {}; // Grand totals for Table 6\r\n\r\n public showSubsidyToFarmer: boolean = false;\r\n public showSubsidyToVendor: boolean = false;\r\n public showRefundToFarmer: boolean = false;\r\n public showFarmerShareToVendor: boolean = false;\r\n public selectedRowVal: any;\r\n public showTanksS1: boolean = false;\r\n public showTanksS2: boolean = false;\r\n public showTanksS3: boolean = false;\r\n public showTable1Lot: boolean = false;\r\n public showTable2Lot: boolean = false;\r\n public showTable4Lot: boolean = false;\r\n \r\n public drillDownReqDetails: any;\r\n public showDrillDownReport: boolean = false;\r\n\r\n public exportColumns: any;\r\n public todayDate: any;\r\n\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.todayDate = this.datePipe.transform(new Date(), 'dd-MM-yyyy'),\r\n this.fetchDataForTable2();\r\n this.fetchDataForTable3(); // Fetch data for the new table\r\n this.fetchDataForTable4();\r\n this.fetchDataForTable5();\r\n this.fetchDataForTable6();\r\n\r\n this.tableItems1 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelT1(this.dataFormatType2_nonTank, 'Table1');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdfT1(this.dataFormatType2_nonTank, 'Table1');\r\n }\r\n },\r\n ];\r\n\r\n this.tableItems2 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelT2(this.dataFormatType2_tank, 'Table2');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdfT2(this.dataFormatType2_tank, 'Table2');\r\n }\r\n },\r\n ];\r\n\r\n this.tableItems3 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelT3(this.dataFormatType3, 'Table3');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdfT3(this.dataFormatType3, 'Table3');\r\n }\r\n },\r\n ];\r\n\r\n this.tableItems4 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelT4A(this.dataFormatType4, 'Table4(a)');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdfT4A(this.dataFormatType4, 'Table4(a)');\r\n }\r\n },\r\n ];\r\n this.tableItems4b = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelT4b(this.dataFormatType4b, 'Table4(b)');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdfT4b(this.dataFormatType4b, 'Table4(b)');\r\n }\r\n },\r\n ];\r\n this.tableItems5 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelT5(this.dataFormatType6, 'Table5');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdfT5(this.dataFormatType6, 'Table5');\r\n }\r\n },\r\n ];\r\n this.tableItems6 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelT6(this.dataFormatType5, 'Table6');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdfT6(this.dataFormatType5, 'Table6');\r\n }\r\n },\r\n ];\r\n }\r\n\r\n exportExcelT6(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n // Custom header rows based on the Excel table structure\r\n // const title = [[\"Gist of Expenditure in PDMC for installation of MI System & Construction of OFWT\"]];\r\n const downloadDate = [[`Export Date: ${this.todayDate}`]]\r\n const headerRow1 = [\"Table - 6\"];\r\n const headerRow2 = [\"\", \"\", \"\", \"\", \"\", \"F.Y -\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2022-23\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2023-24\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2024-25\", \"\", \"\"];\r\n const headerRow3 = [\"\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\"];\r\n const headerRow4 = [\r\n \"Activities\", \"Type\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to the structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'], d['Type'], '', \r\n d['Lots -'], d['Success Applications -'], d['Success Amount -'], d['Error Applications -'], d['Error Amount -'], '',\r\n d['Lots 2022-23'], d['Success Applications 2022-23'], d['Success Amount 2022-23'], d['Error Applications 2022-23'], d['Error Amount 2022-23'], '',\r\n d['Lots 2023-24'], d['Success Applications 2023-24'], d['Success Amount 2023-24'], d['Error Applications 2023-24'], d['Error Amount 2023-24'], '',\r\n d['Lots 2024-25'], d['Success Applications 2024-25'], d['Success Amount 2024-25'], d['Error Applications 2024-25'], d['Error Amount 2024-25'],\r\n ];\r\n });\r\n \r\n // Combine title, headers, and data\r\n const finalData = [\r\n // ...title,\r\n ...downloadDate,\r\n // [],\r\n headerRow1,\r\n [],\r\n headerRow2,\r\n headerRow3,\r\n headerRow4,\r\n ...dataToSave\r\n ];\r\n\r\n const worksheet = xlsx.utils.aoa_to_sheet(finalData); \r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, { bookType: \"xlsx\", type: \"array\" });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdfT6(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default({\r\n orientation: 'landscape',\r\n unit: 'mm',\r\n format: 'a4',\r\n putOnlyUsedFonts: true,\r\n floatPrecision: 16\r\n });\r\n\r\n // Title and subtitle\r\n const title = \"\";\r\n const downloadDate = `(Export Date: ${this.todayDate})`\r\n\r\n // Add title\r\n doc.setFontSize(4); // Reduced font size for the title\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n\r\n // Add download Date\r\n doc.setFontSize(6);\r\n doc.text(downloadDate, 14, 20);\r\n\r\n // Define custom headers\r\n const headerRow1 = [{ content: 'Table - 6', colSpan: 26, styles: { halign: 'center', fontStyle: 'bold' } }];\r\n const headerRow2 = [\r\n { content: '', colSpan: 5 }, // Empty cells for alignment\r\n { content: 'F.Y -', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2022-23', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2023-24', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2024-25', colSpan: 5, styles: { halign: 'center' } }\r\n ];\r\n const headerRow3 = [\r\n '', '', '', '', \r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', ''\r\n ];\r\n const headerRow4 = [\r\n \"Activities\", \"Type\", '', \r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n\r\n // Mapping model data to match the table structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'], d['Type'], '', \r\n d['Lots -'], d['Success Applications -'], d['Success Amount -'], d['Error Applications -'], d['Error Amount -'], '',\r\n d['Lots 2022-23'], d['Success Applications 2022-23'], d['Success Amount 2022-23'], d['Error Applications 2022-23'], d['Error Amount 2022-23'], '',\r\n d['Lots 2023-24'], d['Success Applications 2023-24'], d['Success Amount 2023-24'], d['Error Applications 2023-24'], d['Error Amount 2023-24'], '',\r\n d['Lots 2024-25'], d['Success Applications 2024-25'], d['Success Amount 2024-25'], d['Error Applications 2024-25'], d['Error Amount 2024-25'],\r\n ];\r\n });\r\n\r\n // Calculate grand totals for Applications and Amounts for Success and Error columns\r\n const grandTotal = {\r\n lots_: modelData.reduce((sum, d) => sum + (d['Lots 2022-23'] || 0), 0),\r\n successApplications_: modelData.reduce((sum, d) => sum + (d['Success Applications 2022-23'] || 0), 0),\r\n successAmount_: modelData.reduce((sum, d) => sum + (d['Success Amount 2022-23'] || 0), 0),\r\n errorApplications_: modelData.reduce((sum, d) => sum + (d['Error Applications 2022-23'] || 0), 0),\r\n errorAmount_: modelData.reduce((sum, d) => sum + (d['Error Amount 2022-23'] || 0), 0),\r\n \r\n lots2022_23: modelData.reduce((sum, d) => sum + (d['Lots 2022-23'] || 0), 0),\r\n successApplications2022_23: modelData.reduce((sum, d) => sum + (d['Success Applications 2022-23'] || 0), 0),\r\n successAmount2022_23: modelData.reduce((sum, d) => sum + (d['Success Amount 2022-23'] || 0), 0),\r\n errorApplications2022_23: modelData.reduce((sum, d) => sum + (d['Error Applications 2022-23'] || 0), 0),\r\n errorAmount2022_23: modelData.reduce((sum, d) => sum + (d['Error Amount 2022-23'] || 0), 0),\r\n\r\n lots2023_24: modelData.reduce((sum, d) => sum + (d['Lots 2023-24'] || 0), 0),\r\n successApplications2023_24: modelData.reduce((sum, d) => sum + (d['Success Applications 2023-24'] || 0), 0),\r\n successAmount2023_24: modelData.reduce((sum, d) => sum + (d['Success Amount 2023-24'] || 0), 0),\r\n errorApplications2023_24: modelData.reduce((sum, d) => sum + (d['Error Applications 2023-24'] || 0), 0),\r\n errorAmount2023_24: modelData.reduce((sum, d) => sum + (d['Error Amount 2023-24'] || 0), 0),\r\n\r\n lots2024_25: modelData.reduce((sum, d) => sum + (d['Lots 2024-25'] || 0), 0),\r\n successApplications2024_25: modelData.reduce((sum, d) => sum + (d['Success Applications 2024-25'] || 0), 0),\r\n successAmount2024_25: modelData.reduce((sum, d) => sum + (d['Success Amount 2024-25'] || 0), 0),\r\n errorApplications2024_25: modelData.reduce((sum, d) => sum + (d['Error Applications 2024-25'] || 0), 0),\r\n errorAmount2024_25: modelData.reduce((sum, d) => sum + (d['Error Amount 2024-25'] || 0), 0),\r\n };\r\n\r\n // Add grand total row directly into the main table data\r\n dataToSave.push([\r\n { content: 'Grand Total', colSpan: 3, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold', halign: 'center' } }, // Grand Total label\r\n grandTotal.lots_, grandTotal.successApplications_, grandTotal.successAmount_, grandTotal.errorApplications_, grandTotal.errorAmount_, '',\r\n grandTotal.lots2022_23, grandTotal.successApplications2022_23, grandTotal.successAmount2022_23, grandTotal.errorApplications2022_23, grandTotal.errorAmount2022_23, '',\r\n grandTotal.lots2023_24, grandTotal.successApplications2023_24, grandTotal.successAmount2023_24, grandTotal.errorApplications2023_24, grandTotal.errorAmount2023_24, '',\r\n grandTotal.lots2024_25, grandTotal.successApplications2024_25, grandTotal.successAmount2024_25, grandTotal.errorApplications2024_25, grandTotal.errorAmount2024_25\r\n ]);\r\n\r\n // Add table with headers and data including grand total\r\n doc.autoTable({\r\n startY: 25, // Start after the title\r\n head: [headerRow1, headerRow2, headerRow3, headerRow4],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 6 }, // Adjusted font size for the data\r\n columnStyles: {\r\n 4: { fillColor: [144, 238, 144] }, // Success Applications (-) in light green\r\n 5: { fillColor: [144, 238, 144] }, // Success Amount (-)\r\n 6: { fillColor: [255, 182, 193] }, // Error Applications (-) in light red\r\n 7: { fillColor: [255, 182, 193] }, // Error Amount (-)\r\n\r\n 10: { fillColor: [144, 238, 144] }, // Success Applications (2022-23) in light green\r\n 11: { fillColor: [144, 238, 144] }, // Success Amount (2022-23)\r\n 12: { fillColor: [255, 182, 193] }, // Error Applications (2022-23) in light red\r\n 13: { fillColor: [255, 182, 193] }, // Error Amount (2022-23)\r\n\r\n 16: { fillColor: [144, 238, 144] }, // Success Applications (2023-24)\r\n 17: { fillColor: [144, 238, 144] }, // Success Amount (2023-24)\r\n 18: { fillColor: [255, 182, 193] }, // Error Applications (2023-24)\r\n 19: { fillColor: [255, 182, 193] }, // Error Amount (2023-24)\r\n\r\n 22: { fillColor: [144, 238, 144] }, // Success Applications (2024-25)\r\n 23: { fillColor: [144, 238, 144] }, // Success Amount (2024-25)\r\n 24: { fillColor: [255, 182, 193] }, // Error Applications (2024-25)\r\n 25: { fillColor: [255, 182, 193] }, // Error Amount (2024-25)\r\n },\r\n // Customize the grand total row styles separately\r\n didParseCell: (data) => {\r\n if (data.row.index === data.table.body.length - 1) { // If it's the last row (Grand Total)\r\n data.cell.styles.fillColor = [0, 0, 0]; // Set background to black\r\n data.cell.styles.textColor = [255, 255, 255]; // Set text color to white\r\n data.cell.styles.fontStyle = 'bold'; // Set font style to bold\r\n }\r\n },\r\n footStyles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold' }, // Footer row (Grand Total) style\r\n styles: {\r\n fontSize: 6 // Reduced font size for the entire table\r\n }\r\n });\r\n\r\n // Save the PDF\r\n doc.save(filename + \".pdf\");\r\n });\r\n });\r\n }\r\n\r\n exportExcelT5(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n // Custom header rows based on the Excel table structure\r\n // const title = [[\"Gist of Expenditure in PDMC for installation of MI System & Construction of OFWT\"]];\r\n const downloadDate = [[`Export Date: ${this.todayDate}`]]\r\n const headerRow1 = [\"Table - 5\"];\r\n const headerRow2 = [\"\", \"\", \"\", \"\", \"\", \"F.Y -\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2022-23\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2023-24\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2024-25\", \"\", \"\"];\r\n const headerRow3 = [\"\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\"];\r\n const headerRow4 = [\r\n \"Activities\", \"Type\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to the structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'], d['Type'], '', \r\n d['Lots -'], d['Success Applications -'], d['Success Amount -'], d['Error Applications -'], d['Error Amount -'], '',\r\n d['Lots 2022-23'], d['Success Applications 2022-23'], d['Success Amount 2022-23'], d['Error Applications 2022-23'], d['Error Amount 2022-23'], '',\r\n d['Lots 2023-24'], d['Success Applications 2023-24'], d['Success Amount 2023-24'], d['Error Applications 2023-24'], d['Error Amount 2023-24'], '',\r\n d['Lots 2024-25'], d['Success Applications 2024-25'], d['Success Amount 2024-25'], d['Error Applications 2024-25'], d['Error Amount 2024-25'],\r\n ];\r\n });\r\n \r\n // Combine title, headers, and data\r\n const finalData = [\r\n // ...title,\r\n ...downloadDate,\r\n // [],\r\n headerRow1,\r\n [],\r\n headerRow2,\r\n headerRow3,\r\n headerRow4,\r\n ...dataToSave\r\n ];\r\n\r\n const worksheet = xlsx.utils.aoa_to_sheet(finalData); \r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, { bookType: \"xlsx\", type: \"array\" });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdfT5(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default({\r\n orientation: 'landscape',\r\n unit: 'mm',\r\n format: 'a4',\r\n putOnlyUsedFonts: true,\r\n floatPrecision: 16\r\n });\r\n\r\n // Title and subtitle\r\n const title = \"\";\r\n const downloadDate = `Export Date: ${this.todayDate}`\r\n\r\n // Add title\r\n doc.setFontSize(6); // Reduced font size for the title\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n\r\n // Add download Date\r\n doc.setFontSize(6);\r\n doc.text(downloadDate, 14, 20);\r\n\r\n // Define custom headers\r\n const headerRow1 = [{ content: 'Table - 5', colSpan: 26, styles: { halign: 'center', fontStyle: 'bold' } }];\r\n const headerRow2 = [\r\n { content: '', colSpan: 5 }, // Empty cells for alignment\r\n { content: 'F.Y -', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2022-23', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2023-24', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2024-25', colSpan: 5, styles: { halign: 'center' } }\r\n ];\r\n const headerRow3 = [\r\n '', '', '', '', \r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', ''\r\n ];\r\n const headerRow4 = [\r\n \"Activities\", \"Type\", '', \r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n\r\n // Mapping model data to match the table structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'], d['Type'], '',\r\n d['Lots -'], d['Success Applications -'], d['Success Amount -'], d['Error Applications -'], d['Error Amount -'], '',\r\n d['Lots 2022-23'], d['Success Applications 2022-23'], d['Success Amount 2022-23'], d['Error Applications 2022-23'], d['Error Amount 2022-23'], '',\r\n d['Lots 2023-24'], d['Success Applications 2023-24'], d['Success Amount 2023-24'], d['Error Applications 2023-24'], d['Error Amount 2023-24'], '',\r\n d['Lots 2024-25'], d['Success Applications 2024-25'], d['Success Amount 2024-25'], d['Error Applications 2024-25'], d['Error Amount 2024-25'],\r\n ];\r\n });\r\n\r\n // Calculate grand totals for Applications and Amounts for Success and Error columns\r\n const grandTotal = {\r\n lots_: modelData.reduce((sum, d) => sum + (d['Lots -'] || 0), 0),\r\n successApplications_: modelData.reduce((sum, d) => sum + (d['Success Applications -'] || 0), 0),\r\n successAmount_: modelData.reduce((sum, d) => sum + (d['Success Amount -'] || 0), 0),\r\n errorApplications_: modelData.reduce((sum, d) => sum + (d['Error Applications -'] || 0), 0),\r\n errorAmount_: modelData.reduce((sum, d) => sum + (d['Error Amount -'] || 0), 0),\r\n \r\n lots2022_23: modelData.reduce((sum, d) => sum + (d['Lots 2022-23'] || 0), 0),\r\n successApplications2022_23: modelData.reduce((sum, d) => sum + (d['Success Applications 2022-23'] || 0), 0),\r\n successAmount2022_23: modelData.reduce((sum, d) => sum + (d['Success Amount 2022-23'] || 0), 0),\r\n errorApplications2022_23: modelData.reduce((sum, d) => sum + (d['Error Applications 2022-23'] || 0), 0),\r\n errorAmount2022_23: modelData.reduce((sum, d) => sum + (d['Error Amount 2022-23'] || 0), 0),\r\n\r\n lots2023_24: modelData.reduce((sum, d) => sum + (d['Lots 2023-24'] || 0), 0),\r\n successApplications2023_24: modelData.reduce((sum, d) => sum + (d['Success Applications 2023-24'] || 0), 0),\r\n successAmount2023_24: modelData.reduce((sum, d) => sum + (d['Success Amount 2023-24'] || 0), 0),\r\n errorApplications2023_24: modelData.reduce((sum, d) => sum + (d['Error Applications 2023-24'] || 0), 0),\r\n errorAmount2023_24: modelData.reduce((sum, d) => sum + (d['Error Amount 2023-24'] || 0), 0),\r\n\r\n lots2024_25: modelData.reduce((sum, d) => sum + (d['Lots 2024-25'] || 0), 0),\r\n successApplications2024_25: modelData.reduce((sum, d) => sum + (d['Success Applications 2024-25'] || 0), 0),\r\n successAmount2024_25: modelData.reduce((sum, d) => sum + (d['Success Amount 2024-25'] || 0), 0),\r\n errorApplications2024_25: modelData.reduce((sum, d) => sum + (d['Error Applications 2024-25'] || 0), 0),\r\n errorAmount2024_25: modelData.reduce((sum, d) => sum + (d['Error Amount 2024-25'] || 0), 0),\r\n };\r\n\r\n // Add grand total row directly into the main table data\r\n dataToSave.push([\r\n { content: 'Grand Total', colSpan: 3, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold', halign: 'center' } }, // Grand Total label\r\n grandTotal.lots2022_23, grandTotal.successApplications_, grandTotal.successAmount_, grandTotal.errorApplications_, grandTotal.errorAmount_, '',\r\n grandTotal.lots2022_23, grandTotal.successApplications2022_23, grandTotal.successAmount2022_23, grandTotal.errorApplications2022_23, grandTotal.errorAmount2022_23, '',\r\n grandTotal.lots2023_24, grandTotal.successApplications2023_24, grandTotal.successAmount2023_24, grandTotal.errorApplications2023_24, grandTotal.errorAmount2023_24, '',\r\n grandTotal.lots2024_25, grandTotal.successApplications2024_25, grandTotal.successAmount2024_25, grandTotal.errorApplications2024_25, grandTotal.errorAmount2024_25\r\n ]);\r\n\r\n // Add table with headers and data including grand total\r\n doc.autoTable({\r\n startY: 25, // Start after the title\r\n head: [headerRow1, headerRow2, headerRow3, headerRow4],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 6 }, // Adjusted font size for the data\r\n columnStyles: {\r\n 4: { fillColor: [144, 238, 144] }, // Success Applications (-) in light green\r\n 5: { fillColor: [144, 238, 144] }, // Success Amount (-)\r\n 6: { fillColor: [255, 182, 193] }, // Error Applications (-) in light red\r\n 7: { fillColor: [255, 182, 193] }, // Error Amount (-)\r\n\r\n 10: { fillColor: [144, 238, 144] }, // Success Applications (2022-23) in light green\r\n 11: { fillColor: [144, 238, 144] }, // Success Amount (2022-23)\r\n 12: { fillColor: [255, 182, 193] }, // Error Applications (2022-23) in light red\r\n 13: { fillColor: [255, 182, 193] }, // Error Amount (2022-23)\r\n\r\n 16: { fillColor: [144, 238, 144] }, // Success Applications (2023-24)\r\n 17: { fillColor: [144, 238, 144] }, // Success Amount (2023-24)\r\n 18: { fillColor: [255, 182, 193] }, // Error Applications (2023-24)\r\n 19: { fillColor: [255, 182, 193] }, // Error Amount (2023-24)\r\n\r\n 22: { fillColor: [144, 238, 144] }, // Success Applications (2024-25)\r\n 23: { fillColor: [144, 238, 144] }, // Success Amount (2024-25)\r\n 24: { fillColor: [255, 182, 193] }, // Error Applications (2024-25)\r\n 25: { fillColor: [255, 182, 193] }, // Error Amount (2024-25)\r\n },\r\n // Customize the grand total row styles separately\r\n didParseCell: (data) => {\r\n if (data.row.index === data.table.body.length - 1) { // If it's the last row (Grand Total)\r\n data.cell.styles.fillColor = [0, 0, 0]; // Set background to black\r\n data.cell.styles.textColor = [255, 255, 255]; // Set text color to white\r\n data.cell.styles.fontStyle = 'bold'; // Set font style to bold\r\n }\r\n },\r\n footStyles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold' }, // Footer row (Grand Total) style\r\n styles: {\r\n fontSize: 5 // Reduced font size for the entire table\r\n }\r\n });\r\n\r\n // Save the PDF\r\n doc.save(filename + \".pdf\");\r\n });\r\n });\r\n }\r\n\r\n exportExcelT4b(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n // Custom header rows based on the Excel table structure\r\n const title = [[\"System Wise Bifurcation of FTV\"]];\r\n const downloadDate = [[`Export Date: ${this.todayDate}`]]\r\n const headerRow1 = [\"Table - 4 (b)\"];\r\n const headerRow2 = [\"\", \"\", \"\", \"\", \"\", \"F.Y -\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2022-23\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2023-24\", \"\", \"\", \"\", \"\", \"\", \"F.Y 2024-25\", \"\", \"\"];\r\n const headerRow3 = [\"\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\", \"\", \"\", \"Success\", \"\", \"Error\", \"\"];\r\n const headerRow4 = [\r\n \"Activities\", \"Type\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '', \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to the structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'], d['Type'], '',\r\n d['Lots -'], d['Success Applications -'], d['Success Amount -'], d['Error Applications -'], d['Error Amount -'], '', \r\n d['Lots 2022-23'], d['Success Applications 2022-23'], d['Success Amount 2022-23'], d['Error Applications 2022-23'], d['Error Amount 2022-23'], '',\r\n d['Lots 2023-24'], d['Success Applications 2023-24'], d['Success Amount 2023-24'], d['Error Applications 2023-24'], d['Error Amount 2023-24'], '',\r\n d['Lots 2024-25'], d['Success Applications 2024-25'], d['Success Amount 2024-25'], d['Error Applications 2024-25'], d['Error Amount 2024-25'],\r\n ];\r\n });\r\n \r\n // Combine title, headers, and data\r\n const finalData = [\r\n ...title,\r\n ...downloadDate,\r\n // [],\r\n headerRow1,\r\n [],\r\n headerRow2,\r\n headerRow3,\r\n headerRow4,\r\n ...dataToSave\r\n ];\r\n\r\n const worksheet = xlsx.utils.aoa_to_sheet(finalData); \r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, { bookType: \"xlsx\", type: \"array\" });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdfT4b(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default({\r\n orientation: 'landscape',\r\n unit: 'mm',\r\n format: 'a4',\r\n putOnlyUsedFonts: true,\r\n floatPrecision: 16\r\n });\r\n\r\n // Title and subtitle\r\n const title = \"System Wise Bifurcation of FTV\";\r\n const downloadDate = `Export Date: ${this.todayDate}`\r\n\r\n // Add title\r\n doc.setFontSize(6); // Reduced font size for the title\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n\r\n // Add download Date\r\n doc.setFontSize(6);\r\n doc.text(downloadDate, 14, 20);\r\n\r\n // Define custom headers\r\n const headerRow1 = [{ content: 'Table - 4(b)', colSpan: 26, styles: { halign: 'center', fontStyle: 'bold' } }];\r\n const headerRow2 = [\r\n { content: '', colSpan: 5 }, // Empty cells for alignment\r\n { content: 'F.Y -', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2022-23', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2023-24', colSpan: 5, styles: { halign: 'center' } },\r\n { content: 'F.Y 2024-25', colSpan: 5, styles: { halign: 'center' } }\r\n ];\r\n const headerRow3 = [\r\n '', '', '', '', \r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', '', '',\r\n 'Success', '', 'Error', '', ''\r\n ];\r\n const headerRow4 = [\r\n \"Activities\", \"Type\", '', \r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", '',\r\n \"Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n\r\n // Mapping model data to match the table structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'], d['Type'], '', \r\n d['Lots -'], d['Success Applications -'], d['Success Amount -'], d['Error Applications -'], d['Error Amount -'], '',\r\n d['Lots 2022-23'], d['Success Applications 2022-23'], d['Success Amount 2022-23'], d['Error Applications 2022-23'], d['Error Amount 2022-23'], '',\r\n d['Lots 2023-24'], d['Success Applications 2023-24'], d['Success Amount 2023-24'], d['Error Applications 2023-24'], d['Error Amount 2023-24'], '',\r\n d['Lots 2024-25'], d['Success Applications 2024-25'], d['Success Amount 2024-25'], d['Error Applications 2024-25'], d['Error Amount 2024-25'],\r\n ];\r\n });\r\n\r\n // Calculate grand totals for Applications and Amounts for Success and Error columns\r\n const grandTotal = {\r\n lots_: modelData.reduce((sum, d) => sum + (d['Lots -'] || 0), 0),\r\n successApplications_: modelData.reduce((sum, d) => sum + (d['Success Applications -'] || 0), 0),\r\n successAmount_: modelData.reduce((sum, d) => sum + (d['Success Amount -'] || 0), 0),\r\n errorApplications_: modelData.reduce((sum, d) => sum + (d['Error Applications -'] || 0), 0),\r\n errorAmount_: modelData.reduce((sum, d) => sum + (d['Error Amount -'] || 0), 0),\r\n \r\n lots2022_23: modelData.reduce((sum, d) => sum + (d['Lots 2022-23'] || 0), 0),\r\n successApplications2022_23: modelData.reduce((sum, d) => sum + (d['Success Applications 2022-23'] || 0), 0),\r\n successAmount2022_23: modelData.reduce((sum, d) => sum + (d['Success Amount 2022-23'] || 0), 0),\r\n errorApplications2022_23: modelData.reduce((sum, d) => sum + (d['Error Applications 2022-23'] || 0), 0),\r\n errorAmount2022_23: modelData.reduce((sum, d) => sum + (d['Error Amount 2022-23'] || 0), 0),\r\n\r\n lots2023_24: modelData.reduce((sum, d) => sum + (d['Lots 2023-24'] || 0), 0),\r\n successApplications2023_24: modelData.reduce((sum, d) => sum + (d['Success Applications 2023-24'] || 0), 0),\r\n successAmount2023_24: modelData.reduce((sum, d) => sum + (d['Success Amount 2023-24'] || 0), 0),\r\n errorApplications2023_24: modelData.reduce((sum, d) => sum + (d['Error Applications 2023-24'] || 0), 0),\r\n errorAmount2023_24: modelData.reduce((sum, d) => sum + (d['Error Amount 2023-24'] || 0), 0),\r\n\r\n lots2024_25: modelData.reduce((sum, d) => sum + (d['Lots 2024-25'] || 0), 0),\r\n successApplications2024_25: modelData.reduce((sum, d) => sum + (d['Success Applications 2024-25'] || 0), 0),\r\n successAmount2024_25: modelData.reduce((sum, d) => sum + (d['Success Amount 2024-25'] || 0), 0),\r\n errorApplications2024_25: modelData.reduce((sum, d) => sum + (d['Error Applications 2024-25'] || 0), 0),\r\n errorAmount2024_25: modelData.reduce((sum, d) => sum + (d['Error Amount 2024-25'] || 0), 0),\r\n };\r\n\r\n // Add grand total row directly into the main table data\r\n dataToSave.push([\r\n { content: 'Grand Total', colSpan: 3, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold', halign: 'center' } }, // Grand Total label\r\n grandTotal.lots_, grandTotal.successApplications_, grandTotal.successAmount_, grandTotal.errorApplications_, grandTotal.errorAmount_, '',\r\n grandTotal.lots2022_23, grandTotal.successApplications2022_23, grandTotal.successAmount2022_23, grandTotal.errorApplications2022_23, grandTotal.errorAmount2022_23, '',\r\n grandTotal.lots2023_24, grandTotal.successApplications2023_24, grandTotal.successAmount2023_24, grandTotal.errorApplications2023_24, grandTotal.errorAmount2023_24, '',\r\n grandTotal.lots2024_25, grandTotal.successApplications2024_25, grandTotal.successAmount2024_25, grandTotal.errorApplications2024_25, grandTotal.errorAmount2024_25\r\n ]);\r\n\r\n // Add table with headers and data including grand total\r\n doc.autoTable({\r\n startY: 25, // Start after the title\r\n head: [headerRow1, headerRow2, headerRow3, headerRow4],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 6 }, // Adjusted font size for the data\r\n columnStyles: {\r\n 4: { fillColor: [144, 238, 144] }, // Success Applications (-) in light green\r\n 5: { fillColor: [144, 238, 144] }, // Success Amount (-)\r\n 6: { fillColor: [255, 182, 193] }, // Error Applications (-) in light red\r\n 7: { fillColor: [255, 182, 193] }, // Error Amount (-)\r\n\r\n 10: { fillColor: [144, 238, 144] }, // Success Applications (2022-23) in light green\r\n 11: { fillColor: [144, 238, 144] }, // Success Amount (2022-23)\r\n 12: { fillColor: [255, 182, 193] }, // Error Applications (2022-23) in light red\r\n 13: { fillColor: [255, 182, 193] }, // Error Amount (2022-23)\r\n\r\n 16: { fillColor: [144, 238, 144] }, // Success Applications (2023-24)\r\n 17: { fillColor: [144, 238, 144] }, // Success Amount (2023-24)\r\n 18: { fillColor: [255, 182, 193] }, // Error Applications (2023-24)\r\n 19: { fillColor: [255, 182, 193] }, // Error Amount (2023-24)\r\n\r\n 22: { fillColor: [144, 238, 144] }, // Success Applications (2024-25)\r\n 23: { fillColor: [144, 238, 144] }, // Success Amount (2024-25)\r\n 24: { fillColor: [255, 182, 193] }, // Error Applications (2024-25)\r\n 25: { fillColor: [255, 182, 193] }, // Error Amount (2024-25)\r\n },\r\n // Customize the grand total row styles separately\r\n didParseCell: (data) => {\r\n if (data.row.index === data.table.body.length - 1) { // If it's the last row (Grand Total)\r\n data.cell.styles.fillColor = [0, 0, 0]; // Set background to black\r\n data.cell.styles.textColor = [255, 255, 255]; // Set text color to white\r\n data.cell.styles.fontStyle = 'bold'; // Set font style to bold\r\n }\r\n },\r\n footStyles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold' }, // Footer row (Grand Total) style\r\n styles: {\r\n fontSize: 5 // Reduced font size for the entire table\r\n }\r\n });\r\n\r\n // Save the PDF\r\n doc.save(filename + \".pdf\");\r\n });\r\n });\r\n }\r\n\r\n exportExcelT4A(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n // Custom header rows based on the Excel table structure\r\n const title = [[\"Gist of FTV: Year wise actual payment details to vendors as Farmer share\"]];\r\n const downloadDate = [[`Export Date: ${this.todayDate}`]]\r\n const headerRow1 = [\"Table - 4(a)\"];\r\n const headerRow2 = [\"\", \"\", \"\", \"Success\", \"\", \"Errors\"];\r\n const headerRow3 = [\r\n \"Activities\", \"F.Y.\", \"No.of Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to the structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d.Activities, d['F.Y.'], d['No. of Lots'], d['Success Applications'], d['Success Amount'],\r\n d['Error Applications'], d['Error Amount']\r\n ];\r\n });\r\n \r\n // Combine title, headers, and data\r\n const finalData = [\r\n ...title,\r\n ...downloadDate,\r\n [],\r\n headerRow1,\r\n [],\r\n headerRow2,\r\n headerRow3,\r\n ...dataToSave\r\n ];\r\n\r\n const worksheet = xlsx.utils.aoa_to_sheet(finalData); \r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, { bookType: \"xlsx\", type: \"array\" });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdfT4A(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n \r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default(0, 0);\r\n \r\n // Title and subtitle\r\n const title = \"Gist of FTV: Year wise actual payment details to vendors as Farmer share\";\r\n const downloadDate = `(Export Date: ${this.todayDate})`\r\n const subtitle = \"Table - 4(a)\";\r\n \r\n // Add title\r\n doc.setFontSize(14);\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n\r\n // Add download Date\r\n doc.setFontSize(12);\r\n doc.text(downloadDate, 14, 25);\r\n \r\n // Add subtitle\r\n doc.setFontSize(12);\r\n doc.text(subtitle, 14, 35); // Subtitle at x=14, y=25\r\n \r\n // Custom header rows\r\n const headerRow2 = [\r\n { content: '', colSpan: 3 }, // Empty cells for alignment\r\n { content: 'Success', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'Errors', colSpan: 2, styles: { halign: 'center' } }\r\n ];\r\n \r\n const headerRow3 = [\r\n \"Activities\", \"F.Y.\", \"No.of Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to match the Excel structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d.Activities, d['F.Y.'], d['No. of Lots'], d['Success Applications'], d['Success Amount'],\r\n d['Error Applications'], d['Error Amount']\r\n ];\r\n });\r\n \r\n // Calculate grand totals for Success Applications, Success Amount, Error Applications, and Error Amount\r\n const grandTotal = {\r\n activities: 'Grand Total',\r\n successApplications: modelData.reduce((sum, d) => sum + (d['Success Applications'] || 0), 0),\r\n successAmount: modelData.reduce((sum, d) => sum + (d['Success Amount'] || 0), 0),\r\n errorApplications: modelData.reduce((sum, d) => sum + (d['Error Applications'] || 0), 0),\r\n errorAmount: modelData.reduce((sum, d) => sum + (d['Error Amount'] || 0), 0)\r\n };\r\n \r\n // Add grand total row to the data\r\n // dataToSave.push([\r\n // { content: grandTotal.activities, colSpan: 3, styles: { fontStyle: 'bold' } }, // Colspan applied to the first cell\r\n // '', '', grandTotal.successApplications, grandTotal.successAmount,\r\n // grandTotal.errorApplications, grandTotal.errorAmount\r\n // ]);\r\n \r\n // Add table with headers and data\r\n doc.autoTable({\r\n startY: 45, // Start after the subtitle\r\n head: [headerRow2, headerRow3],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 10 }, // Body font size\r\n columnStyles: {\r\n 3: { fillColor: [144, 238, 144] }, // Light green for \"Success Applications\"\r\n 4: { fillColor: [144, 238, 144] }, // Light green for \"Success Amount\"\r\n 5: { fillColor: [255, 182, 193] }, // Light red for \"Error Applications\"\r\n 6: { fillColor: [255, 182, 193] } // Light red for \"Error Amount\"\r\n },\r\n foot: [[\r\n { content: grandTotal.activities, colSpan: 3, styles: { fillColor: [0, 0, 0], fontStyle: 'bold', textColor: [255, 255, 255] } },\r\n { content: grandTotal.successApplications, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.successAmount, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.errorApplications, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.errorAmount, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } }\r\n ]],\r\n footStyles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold' } // Black background for the Grand Total row\r\n });\r\n \r\n // Save the generated PDF\r\n doc.save(`${filename}_export_${new Date().getTime()}.pdf`);\r\n });\r\n });\r\n }\r\n \r\n\r\n exportExcelT3(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n // Custom header rows based on the Excel table structure\r\n const title = [[\"Gist of Expenditure in PDMC for installation of MI System & Construction of OFWT\"]];\r\n const downloadDate = [[`Export Date: ${this.todayDate}`]]\r\n const headerRow1 = [\"Table - 3\"];\r\n const headerRow2 = [\"\", \"F.Y -\", \"\", \"F.Y 2022-23\", \"\", \"F.Y 2023-24\", \"\", \"F.Y 2024-25\", \"\", \"Grand Total\"];\r\n const headerRow3 = [\r\n \"Activities\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to the structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'], d['Applications -'], d['Amount -'], d['Applications 2022-23'], d['Amount 2022-23'], d['Applications 2023-24'], d['Amount 2023-24'],\r\n d['Applications 2024-25'], d['Amount 2024-25'], d['Total Applications'], d['Total Amount']\r\n ];\r\n });\r\n \r\n // Combine title, headers, and data\r\n const finalData = [\r\n ...title,\r\n ...downloadDate,\r\n [],\r\n headerRow1,\r\n [],\r\n headerRow2,\r\n headerRow3,\r\n ...dataToSave\r\n ];\r\n\r\n const worksheet = xlsx.utils.aoa_to_sheet(finalData); \r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, { bookType: \"xlsx\", type: \"array\" });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdfT3(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default({\r\n orientation: 'landscape', // Set the PDF to landscape format\r\n unit: 'mm',\r\n format: 'a4',\r\n putOnlyUsedFonts: true,\r\n floatPrecision: 16\r\n });\r\n\r\n // Title and subtitle\r\n const title = \"Gist of Expenditure in PDMC for installation of MI System & Construction of OFWT\";\r\n const downloadDate = `Export Date: ${this.todayDate}`\r\n const subtitle = \"Table - 3\";\r\n\r\n // Add title\r\n doc.setFontSize(14);\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n\r\n // Add download Date\r\n doc.setFontSize(12);\r\n doc.text(downloadDate, 14, 25);\r\n\r\n // Add subtitle\r\n doc.setFontSize(12);\r\n doc.text(subtitle, 14, 35); // Subtitle at x=14, y=25\r\n\r\n // Custom header rows\r\n const headerRow1 = [\r\n { content: '', colSpan: 1 }, // Empty cell for alignment\r\n { content: 'F.Y -', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'F.Y 2022-23', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'F.Y 2023-24', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'F.Y 2024-25', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'Grand Total', colSpan: 2, styles: { halign: 'center' } }\r\n ];\r\n\r\n const headerRow2 = [\r\n \"Activities\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n\r\n // Mapping model data to match the Excel structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d['Activities'],\r\n d['Applications -'],\r\n d['Amount -'],\r\n d['Applications 2022-23'],\r\n d['Amount 2022-23'],\r\n d['Applications 2023-24'],\r\n d['Amount 2023-24'],\r\n d['Applications 2024-25'],\r\n d['Amount 2024-25'],\r\n d['Total Applications'],\r\n d['Total Amount']\r\n ];\r\n });\r\n\r\n // Calculate grand totals for Applications and Amounts\r\n const grandTotal = {\r\n applications_: modelData.reduce((sum, d) => sum + (d['Applications -'] || 0), 0),\r\n amount_: modelData.reduce((sum, d) => sum + (d['Amount -'] || 0), 0),\r\n applications2022_23: modelData.reduce((sum, d) => sum + (d['Applications 2022-23'] || 0), 0),\r\n amount2022_23: modelData.reduce((sum, d) => sum + (d['Amount 2022-23'] || 0), 0),\r\n applications2023_24: modelData.reduce((sum, d) => sum + (d['Applications 2023-24'] || 0), 0),\r\n amount2023_24: modelData.reduce((sum, d) => sum + (d['Amount 2023-24'] || 0), 0),\r\n applications2024_25: modelData.reduce((sum, d) => sum + (d['Applications 2024-25'] || 0), 0),\r\n amount2024_25: modelData.reduce((sum, d) => sum + (d['Amount 2024-25'] || 0), 0),\r\n totalApplications: modelData.reduce((sum, d) => sum + (d['Total Applications'] || 0), 0),\r\n totalAmount: modelData.reduce((sum, d) => sum + (d['Total Amount'] || 0), 0)\r\n };\r\n\r\n // Add grand total row directly into the main table data\r\n dataToSave.push([\r\n { content: 'Grand Total', styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold' } }, // Grand Total label\r\n { content: grandTotal.applications_, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.amount_, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.applications2022_23, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.amount2022_23, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.applications2023_24, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.amount2023_24, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.applications2024_25, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.amount2024_25, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.totalApplications, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.totalAmount, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } }\r\n ]);\r\n\r\n // Add table with headers and data including grand total\r\n doc.autoTable({\r\n startY: 45, // Start after the subtitle\r\n head: [headerRow1, headerRow2],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 10 } // Body font size\r\n });\r\n\r\n // Save the generated PDF\r\n doc.save(`${filename}_export_${new Date().getTime()}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n exportExcelT2(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n // Custom header rows based on the Excel table structure\r\n const title = [[\"Financial Progress under PDMC for MICADA Portal 2.0 (Tank)\"]];\r\n const downloadDate = [[`Export Date: ${this.todayDate}`]]\r\n const headerRow1 = [\"Table - 2\"];\r\n const headerRow2 = [\"\", \"\", \"\", \"Success\", \"\", \"Errors\"];\r\n const headerRow3 = [\r\n \"Activities\", \"F.Y.\", \"No.of Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to the structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d.Activities, d['F.Y.'], d['No. of Lots'], d['Success Applications'], d['Success Amount'],\r\n d['Error Applications'], d['Error Amount']\r\n ];\r\n });\r\n \r\n // Combine title, headers, and data\r\n const finalData = [\r\n ...title,\r\n ...downloadDate,\r\n [],\r\n headerRow1,\r\n [],\r\n headerRow2,\r\n headerRow3,\r\n ...dataToSave\r\n ];\r\n\r\n const worksheet = xlsx.utils.aoa_to_sheet(finalData); \r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, { bookType: \"xlsx\", type: \"array\" });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdfT2(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n \r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default(0, 0);\r\n \r\n // Title and subtitle\r\n const title = \"Financial Progress under PDMC for MICADA Portal 2.0 (Tank)\";\r\n const downloadDate = `(Export Date: ${this.todayDate})`\r\n const subtitle = \"Table - 2\";\r\n \r\n // Add title\r\n doc.setFontSize(14);\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n \r\n // Add download Date\r\n doc.setFontSize(12);\r\n doc.text(downloadDate, 14, 25);\r\n\r\n // Add subtitle\r\n doc.setFontSize(12);\r\n doc.text(subtitle, 14, 35); // Subtitle at x=14, y=25\r\n \r\n // Custom header rows\r\n const headerRow2 = [\r\n { content: '', colSpan: 3 }, // Empty cells for alignment\r\n { content: 'Success', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'Errors', colSpan: 2, styles: { halign: 'center' } }\r\n ];\r\n \r\n const headerRow3 = [\r\n \"Activities\", \"F.Y.\", \"No.of Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to match the Excel structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d.Activities, d['F.Y.'], d['No. of Lots'], d['Success Applications'], d['Success Amount'],\r\n d['Error Applications'], d['Error Amount']\r\n ];\r\n });\r\n \r\n // Calculate grand totals for Success Amount and Error Amount\r\n const grandTotal = {\r\n activities: 'Grand Total',\r\n successApplications: modelData.reduce((sum, d) => sum + (d['Success Applications'] || 0), 0),\r\n successAmount: modelData.reduce((sum, d) => sum + (d['Success Amount'] || 0), 0),\r\n errorApplications: modelData.reduce((sum, d) => sum + (d['Error Applications'] || 0), 0),\r\n errorAmount: modelData.reduce((sum, d) => sum + (d['Error Amount'] || 0), 0)\r\n };\r\n \r\n // Add grand total row to the data\r\n // dataToSave.push([\r\n // { content: grandTotal.activities, colSpan: 3 }, // Colspan applied to the first cell\r\n // '', '', grandTotal.successApplications, grandTotal.successAmount,\r\n // grandTotal.errorApplications, grandTotal.errorAmount\r\n // ]);\r\n \r\n // Add table with headers and data\r\n doc.autoTable({\r\n startY: 45, // Start after the subtitle\r\n head: [headerRow2, headerRow3],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 10 }, // Body font size\r\n columnStyles: {\r\n 3: { fillColor: [144, 238, 144] }, // Light green for \"Success Applications\"\r\n 4: { fillColor: [144, 238, 144] }, // Light green for \"Success Amount\"\r\n 5: { fillColor: [255, 182, 193] }, // Light red for \"Error Applications\"\r\n 6: { fillColor: [255, 182, 193] }, // Light red for \"Error Amount\"\r\n },\r\n foot: [[\r\n { content: grandTotal.activities, colSpan: 3, styles: { fillColor: [0, 0, 0], fontStyle: 'bold', textColor: [255, 255, 255] } },\r\n { content: grandTotal.successApplications, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.successAmount, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.errorApplications, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.errorAmount, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } }\r\n ]],\r\n footStyles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold' } // Black background for the Grand Total row\r\n });\r\n \r\n // Save the generated PDF\r\n doc.save(`${filename}_export_${new Date().getTime()}.pdf`);\r\n });\r\n });\r\n }\r\n \r\n\r\n exportExcelT1(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n // Custom header rows based on the Excel table structure\r\n const title = [[\"Financial Progress under PDMC for MICADA Portal 2.0 (MI)\"]];\r\n const downloadDate = [[`Export Date: ${this.todayDate}`]]\r\n const headerRow1 = [\"Table - 1\"];\r\n const headerRow2 = [\"\", \"\", \"\", \"Success\", \"\", \"Errors\"];\r\n const headerRow3 = [\r\n \"Activities\", \"F.Y.\", \"No.of Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to the structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d.Activities, d['F.Y.'], d['No. of Lots'], d['Success Applications'], d['Success Amount'],\r\n d['Error Applications'], d['Error Amount']\r\n ];\r\n });\r\n \r\n // Combine title, headers, and data\r\n const finalData = [\r\n ...title,\r\n ...downloadDate,\r\n [],\r\n headerRow1,\r\n [],\r\n headerRow2,\r\n headerRow3,\r\n ...dataToSave\r\n ];\r\n\r\n const worksheet = xlsx.utils.aoa_to_sheet(finalData); \r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, { bookType: \"xlsx\", type: \"array\" });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n \r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE = \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n saveAs(data, fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION);\r\n });\r\n }\r\n\r\n\r\n downloadSheetAsPdf1(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n \r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default(0, 0);\r\n \r\n // Title and subtitle\r\n const title = \"Financial Progress under PDMC for MICADA Portal 2.0 (MI)\";\r\n const subtitle = \"Table - 1\";\r\n \r\n // Add title\r\n doc.setFontSize(14);\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n \r\n // Add subtitle\r\n doc.setFontSize(12);\r\n doc.text(subtitle, 14, 25); // Subtitle at x=14, y=25\r\n \r\n // Custom header rows\r\n const headerRow2 = [\r\n { content: '', colSpan: 3 }, // Empty cells for alignment\r\n { content: 'Success', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'Errors', colSpan: 2, styles: { halign: 'center' } }\r\n ];\r\n \r\n const headerRow3 = [\r\n \"Activities\", \"F.Y.\", \"No.of Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to match the Excel structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d.Activities, d['F.Y.'], d['No. of Lots'], d['Success Applications'], d['Success Amount'],\r\n d['Error Applications'], d['Error Amount']\r\n ];\r\n });\r\n \r\n // Add table with headers and data\r\n doc.autoTable({\r\n startY: 35, // Start after the subtitle\r\n head: [headerRow2, headerRow3],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 10 } // Body font size\r\n });\r\n \r\n // Save the generated PDF\r\n doc.save(`${filename}_export_${new Date().getTime()}.pdf`);\r\n });\r\n });\r\n }\r\n \r\n downloadSheetAsPdfT1(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n \r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(() => {\r\n const doc = new jsPDF.default(0, 0);\r\n \r\n // Title and subtitle\r\n const title = \"Financial Progress under PDMC for MICADA Portal 2.0 (MI)\";\r\n const downloadDate = `(Export Date: ${this.todayDate})`\r\n const subtitle = \"Table - 1\";\r\n \r\n // Add title\r\n doc.setFontSize(14);\r\n doc.text(title, 14, 15); // Title at x=14, y=15\r\n \r\n // Add download Date\r\n doc.setFontSize(12);\r\n doc.text(downloadDate, 14, 25);\r\n\r\n // Add subtitle\r\n doc.setFontSize(12);\r\n doc.text(subtitle, 14, 35);\r\n \r\n // Custom header rows\r\n const headerRow2 = [\r\n { content: '', colSpan: 3 }, // Empty cells for alignment\r\n { content: 'Success', colSpan: 2, styles: { halign: 'center' } },\r\n { content: 'Errors', colSpan: 2, styles: { halign: 'center' } }\r\n ];\r\n \r\n const headerRow3 = [\r\n \"Activities\", \"F.Y.\", \"No.of Lots\", \"Applications\", \"Amount\", \"Applications\", \"Amount\"\r\n ];\r\n \r\n // Mapping model data to match the Excel structure\r\n const dataToSave = modelData.map((d: any) => {\r\n return [\r\n d.Activities, d['F.Y.'], d['No. of Lots'], d['Success Applications'], d['Success Amount'],\r\n d['Error Applications'], d['Error Amount']\r\n ];\r\n });\r\n \r\n // Calculate grand totals for Success Applications, Success Amount, Error Applications, and Error Amount\r\n const grandTotal = {\r\n activities: 'Grand Total',\r\n successApplications: modelData.reduce((sum, d) => sum + (d['Success Applications'] || 0), 0),\r\n successAmount: modelData.reduce((sum, d) => sum + (d['Success Amount'] || 0), 0),\r\n errorApplications: modelData.reduce((sum, d) => sum + (d['Error Applications'] || 0), 0),\r\n errorAmount: modelData.reduce((sum, d) => sum + (d['Error Amount'] || 0), 0)\r\n };\r\n \r\n // Add grand total row to the data\r\n // dataToSave.push([\r\n // { content: grandTotal.activities, colSpan: 3 }, // Colspan applied to the first cell\r\n // '', '', grandTotal.successApplications, grandTotal.successAmount,\r\n // grandTotal.errorApplications, grandTotal.errorAmount\r\n // ]);\r\n \r\n // Add table with headers and data\r\n doc.autoTable({\r\n startY: 45, // Start after the subtitle\r\n head: [headerRow2, headerRow3],\r\n body: dataToSave,\r\n theme: 'grid', // Grid layout for the table\r\n headStyles: { fillColor: [41, 128, 185] }, // Blue header background\r\n bodyStyles: { fontSize: 10 }, // Body font size\r\n columnStyles: {\r\n 3: { fillColor: [144, 238, 144] }, // Light green for \"Success Applications\"\r\n 4: { fillColor: [144, 238, 144] }, // Light green for \"Success Amount\"\r\n 5: { fillColor: [255, 182, 193] }, // Light red for \"Error Applications\"\r\n 6: { fillColor: [255, 182, 193] } // Light red for \"Error Amount\"\r\n },\r\n foot: [[\r\n { content: grandTotal.activities, colSpan: 3, styles: { fillColor: [0, 0, 0], fontStyle: 'bold', textColor: [255, 255, 255] } },\r\n { content: grandTotal.successApplications, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.successAmount, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.errorApplications, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } },\r\n { content: grandTotal.errorAmount, styles: { fillColor: [0, 0, 0], textColor: [255, 255, 255] } }\r\n ]],\r\n footStyles: { fillColor: [0, 0, 0], textColor: [255, 255, 255], fontStyle: 'bold' } // Black background for the Grand Total row\r\n });\r\n \r\n // Save the generated PDF\r\n doc.save(`${filename}_export_${new Date().getTime()}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n \r\n\r\n // Methods for Table 2 (Split into Non-Tank and Tank)\r\n fetchDataForTable2() {\r\n this.loadingTable2_nonTank = true;\r\n this.loadingTable2_tank = true;\r\n // this.http.get('http://203.100.79.155/api1/api/Reports/GetSubsidyDistribution', {\r\n // params: { FormatType: '2' }\r\n // })\r\n this.reportsService.getSubsidyData('2').subscribe(\r\n (data:any) => {\r\n // Split data into non-tank and tank\r\n const nonTankData = data.filter(item => !item.Activities.toLowerCase().includes('tank'));\r\n const tankData = data.filter(item => item.Activities.toLowerCase().includes('tank'));\r\n\r\n // Sort data by Activities to group them together\r\n this.dataFormatType2_nonTank = nonTankData.sort((a, b) => a.Activities.localeCompare(b.Activities));\r\n // this.dataFormatType2_tank = tankData.sort((a, b) => a.Activities.localeCompare(b.Activities));\r\n this.dataFormatType2_tank = tankData.sort((a, b) => {\r\n const activityComparison = a.Activities.localeCompare(b.Activities);\r\n if (activityComparison !== 0) {\r\n return activityComparison; // Sort by Activities if they are not equal\r\n }\r\n // If Activities are equal, sort by Financial Year\r\n return a['F.Y.'].localeCompare(b['F.Y.']);\r\n });\r\n\r\n // Calculate row spans and totals for non-tank data\r\n this.calculateRowSpan2_nonTank();\r\n this.calculateTotals2_nonTank();\r\n this.loadingTable2_nonTank = false;\r\n\r\n // Calculate row spans and totals for tank data\r\n this.calculateRowSpan2_tank();\r\n this.calculateTotals2_tank();\r\n this.loadingTable2_tank = false;\r\n },\r\n error => {\r\n this.loadingTable2_nonTank = false;\r\n this.loadingTable2_tank = false;\r\n }\r\n );\r\n }\r\n\r\n // Methods for Non-Tank Data\r\n calculateRowSpan2_nonTank() {\r\n this.rowSpan2_nonTank = {};\r\n let currentActivity = '';\r\n this.dataFormatType2_nonTank.forEach(item => {\r\n if (item.Activities !== currentActivity) {\r\n currentActivity = item.Activities;\r\n this.rowSpan2_nonTank[currentActivity] = 1;\r\n } else {\r\n this.rowSpan2_nonTank[currentActivity]++;\r\n }\r\n });\r\n }\r\n\r\n shouldShowActivities2_nonTank(rowIndex: number): boolean {\r\n if (rowIndex === 0) {\r\n return true;\r\n }\r\n const currentActivity = this.dataFormatType2_nonTank[rowIndex].Activities;\r\n const previousActivity = this.dataFormatType2_nonTank[rowIndex - 1].Activities;\r\n return currentActivity !== previousActivity;\r\n }\r\n\r\n calculateTotals2_nonTank() {\r\n this.grandTotalSuccessApplications2_nonTank = this.dataFormatType2_nonTank.reduce((sum, item) => sum + item['Success Applications'], 0);\r\n this.grandTotalSuccessAmount2_nonTank = this.dataFormatType2_nonTank.reduce((sum, item) => sum + item['Success Amount'], 0);\r\n this.grandTotalErrorApplications2_nonTank = this.dataFormatType2_nonTank.reduce((sum, item) => sum + item['Error Applications'], 0);\r\n this.grandTotalErrorAmount2_nonTank = this.dataFormatType2_nonTank.reduce((sum, item) => sum + item['Error Amount'], 0);\r\n }\r\n\r\n // Methods for Tank Data\r\n calculateRowSpan2_tank() {\r\n this.rowSpan2_tank = {};\r\n let currentActivity = '';\r\n this.dataFormatType2_tank.forEach(item => {\r\n if (item.Activities !== currentActivity) {\r\n currentActivity = item.Activities;\r\n this.rowSpan2_tank[currentActivity] = 1;\r\n } else {\r\n this.rowSpan2_tank[currentActivity]++;\r\n }\r\n });\r\n }\r\n\r\n shouldShowActivities2_tank(rowIndex: number): boolean {\r\n if (rowIndex === 0) {\r\n return true;\r\n }\r\n const currentActivity = this.dataFormatType2_tank[rowIndex].Activities;\r\n const previousActivity = this.dataFormatType2_tank[rowIndex - 1].Activities;\r\n return currentActivity !== previousActivity;\r\n }\r\n\r\n calculateTotals2_tank() {\r\n this.grandTotalSuccessApplications2_tank = this.dataFormatType2_tank.reduce((sum, item) => sum + item['Success Applications'], 0);\r\n this.grandTotalSuccessAmount2_tank = this.dataFormatType2_tank.reduce((sum, item) => sum + item['Success Amount'], 0);\r\n this.grandTotalErrorApplications2_tank = this.dataFormatType2_tank.reduce((sum, item) => sum + item['Error Applications'], 0);\r\n this.grandTotalErrorAmount2_tank = this.dataFormatType2_tank.reduce((sum, item) => sum + item['Error Amount'], 0);\r\n }\r\n\r\n // Methods for Table 3 (FormatType=3)\r\n fetchDataForTable3() {\r\n this.loadingTable3 = true;\r\n // this.http.get('http://203.100.79.155/api1/api/Reports/GetSubsidyDistribution', {\r\n // params: { FormatType: '3' }\r\n // })\r\n this.reportsService.getSubsidyData('3').subscribe(\r\n (data:any) => {\r\n // Map data to match our interface\r\n this.dataFormatType3 = data.map(item => {\r\n const applications2022 = item['2022-23Apps'] || 0;\r\n const amount2022 = item['2022-23_Success_Amount'] || 0;\r\n const applications2023 = item['2023-24Apps'] || 0;\r\n const amount2023 = item['2023-24_Success_Amount'] || 0;\r\n const applications2024 = item['2024-25Apps'] || 0;\r\n const amount2024 = item['2024-25_Success_Amount'] || 0;\r\n const applications_ = item['-Apps'] || 0;\r\n const amount_ = item['-_Success_Amount'] || 0;\r\n\r\n const totalApplications = applications2022 + applications2023 + applications2024 + applications_;\r\n const totalAmount = amount2022 + amount2023 + amount2024 + amount_;\r\n\r\n return {\r\n Activities: item.LotType || 'N/A',\r\n 'Applications -': applications_,\r\n 'Amount -': amount_,\r\n 'Applications 2022-23': applications2022,\r\n 'Amount 2022-23': amount2022,\r\n 'Applications 2023-24': applications2023,\r\n 'Amount 2023-24': amount2023,\r\n 'Applications 2024-25': applications2024,\r\n 'Amount 2024-25': amount2024,\r\n 'Total Applications': totalApplications,\r\n 'Total Amount': totalAmount\r\n };\r\n });\r\n\r\n // Calculate grand totals\r\n this.calculateTotals3();\r\n\r\n this.loadingTable3 = false;\r\n },\r\n error => {\r\n this.loadingTable3 = false;\r\n }\r\n );\r\n }\r\n\r\n calculateTotals3() {\r\n const fields = [\r\n 'Applications -', 'Amount -',\r\n 'Applications 2022-23', 'Amount 2022-23',\r\n 'Applications 2023-24', 'Amount 2023-24',\r\n 'Applications 2024-25', 'Amount 2024-25',\r\n 'Total Applications', 'Total Amount'\r\n ];\r\n\r\n // Initialize totals\r\n fields.forEach(field => this.grandTotals3[field] = 0);\r\n\r\n // Calculate totals\r\n this.dataFormatType3.forEach(item => {\r\n fields.forEach(field => {\r\n this.grandTotals3[field] += item[field];\r\n });\r\n });\r\n }\r\n\r\n // Methods for Table 4\r\n fetchDataForTable4() {\r\n this.loadingTable4 = true;\r\n // this.http.get('http://203.100.79.155/api1/api/Reports/GetSubsidyDistribution', {\r\n // params: { FormatType: '4' }\r\n // })\r\n this.reportsService.getSubsidyData('4').subscribe(\r\n (data:any) => {\r\n // Sort data by Activities to group them together\r\n this.dataFormatType4 = data.sort((a, b) => a.Activities.localeCompare(b.Activities));\r\n this.calculateRowSpan4(); // Calculate rowspans after data is sorted\r\n this.loadingTable4 = false;\r\n this.calculateTotals4();\r\n },\r\n error => {\r\n this.loadingTable4 = false;\r\n }\r\n );\r\n }\r\n\r\n calculateRowSpan4() {\r\n this.rowSpan4 = {};\r\n let currentActivity = '';\r\n this.dataFormatType4.forEach(item => {\r\n if (item.Activities !== currentActivity) {\r\n currentActivity = item.Activities;\r\n this.rowSpan4[currentActivity] = 1;\r\n } else {\r\n this.rowSpan4[currentActivity]++;\r\n }\r\n });\r\n }\r\n\r\n shouldShowActivities4(rowIndex: number): boolean {\r\n if (rowIndex === 0) {\r\n return true;\r\n }\r\n const currentActivity = this.dataFormatType4[rowIndex].Activities;\r\n const previousActivity = this.dataFormatType4[rowIndex - 1].Activities;\r\n return currentActivity !== previousActivity;\r\n }\r\n\r\n calculateTotals4() {\r\n this.grandTotalSuccessApplications4 = this.dataFormatType4.reduce((sum, item) => sum + item['Success Applications'], 0);\r\n this.grandTotalSuccessAmount4 = this.dataFormatType4.reduce((sum, item) => sum + item['Success Amount'], 0);\r\n this.grandTotalErrorApplications4 = this.dataFormatType4.reduce((sum, item) => sum + item['Error Applications'], 0);\r\n this.grandTotalErrorAmount4 = this.dataFormatType4.reduce((sum, item) => sum + item['Error Amount'], 0);\r\n this.grandTotalNoOfLots4 = this.dataFormatType4.reduce((sum, item) => sum + (item['No. of Lots'] || 0), 0);\r\n }\r\n\r\n // Methods for Table 5\r\n fetchDataForTable5() {\r\n this.loadingTable5 = true;\r\n // this.http.get('http://203.100.79.155/api1/api/Reports/GetSubsidyDistribution', {\r\n // params: { FormatType: '5' }\r\n // })\r\n this.reportsService.getSubsidyData('5').subscribe(\r\n (data:any) => {\r\n\r\n // caste wise lot count\r\n let lotCountByCaste = data.reduce((acc, item) => {\r\n const caste = item.Caste_Description || 'Unknown'; // Use 'Unknown' for null or undefined Caste_Description\r\n acc[caste] = (acc[caste] || 0) + \r\n (item[\"Lots -\"] || 0) + \r\n (item[\"Lots 2022-23\"] || 0) + \r\n (item[\"Lots 2023-24\"] || 0) + \r\n (item[\"Lots 2024-25\"] || 0);\r\n return acc;\r\n }, {});\r\n \r\n // Convert object to array of objects\r\n this.casteWiseDataType5 = Object.entries(lotCountByCaste).map(([key, value]) => ({\r\n Caste: key,\r\n Count: value\r\n }));\r\n\r\n // Display the result\r\n \r\n // Map data to match our interface\r\n this.dataFormatType5 = data.map(item => ({\r\n Activities: item.Activities,\r\n Type: item.Caste_Description || 'N/A',\r\n\r\n 'Lots -': item['Lots -'] || 0,\r\n 'Success Applications -': item['Success Applications -'] || 0,\r\n 'Success Amount -': item['Success Amount -'] || 0,\r\n 'Error Applications -': item['Error Applications -'] || 0,\r\n 'Error Amount -': item['Error Amount -'] || 0,\r\n\r\n 'Lots 2022-23': item['Lots 2022-23'] || 0,\r\n 'Success Applications 2022-23': item['Success Applications 2022-23'] || 0,\r\n 'Success Amount 2022-23': item['Success Amount 2022-23'] || 0,\r\n 'Error Applications 2022-23': item['Error Applications 2022-23'] || 0,\r\n 'Error Amount 2022-23': item['Error Amount 2022-23'] || 0,\r\n\r\n 'Lots 2023-24': item['Lots 2023-24'] || 0,\r\n 'Success Applications 2023-24': item['Success Applications 2023-24'] || 0,\r\n 'Success Amount 2023-24': item['Success Amount 2023-24'] || 0,\r\n 'Error Applications 2023-24': item['Error Applications 2023-24'] || 0,\r\n 'Error Amount 2023-24': item['Error Amount 2023-24'] || 0,\r\n\r\n 'Lots 2024-25': item['Lots 2024-25'] || 0,\r\n 'Success Applications 2024-25': item['Success Applications 2024-25'] || 0,\r\n 'Success Amount 2024-25': item['Success Amount 2024-25'] || 0,\r\n 'Error Applications 2024-25': item['Error Applications 2024-25'] || 0,\r\n 'Error Amount 2024-25': item['Error Amount 2024-25'] || 0,\r\n }));\r\n\r\n // Sort data by Activities\r\n this.dataFormatType5.sort((a, b) => a.Activities.localeCompare(b.Activities));\r\n this.calculateRowSpan5();\r\n this.calculateTotals5();\r\n this.loadingTable5 = false;\r\n },\r\n error => {\r\n this.loadingTable5 = false;\r\n }\r\n );\r\n }\r\n\r\n calculateRowSpan5() {\r\n this.rowSpan5 = {};\r\n let currentActivity = '';\r\n this.dataFormatType5.forEach(item => {\r\n if (item.Activities !== currentActivity) {\r\n currentActivity = item.Activities;\r\n this.rowSpan5[currentActivity] = 1;\r\n } else {\r\n this.rowSpan5[currentActivity]++;\r\n }\r\n });\r\n }\r\n\r\n shouldShowActivities5(rowIndex: number): boolean {\r\n if (rowIndex === 0) {\r\n return true;\r\n }\r\n const currentActivity = this.dataFormatType5[rowIndex].Activities;\r\n const previousActivity = this.dataFormatType5[rowIndex - 1].Activities;\r\n return currentActivity !== previousActivity;\r\n }\r\n\r\n calculateTotals5() {\r\n const fields = [\r\n 'Lots -', 'Success Applications -', 'Success Amount -',\r\n 'Error Applications -', 'Error Amount -',\r\n 'Lots 2022-23', 'Success Applications 2022-23', 'Success Amount 2022-23',\r\n 'Error Applications 2022-23', 'Error Amount 2022-23',\r\n 'Lots 2023-24', 'Success Applications 2023-24', 'Success Amount 2023-24',\r\n 'Error Applications 2023-24', 'Error Amount 2023-24',\r\n 'Lots 2024-25', 'Success Applications 2024-25', 'Success Amount 2024-25',\r\n 'Error Applications 2024-25', 'Error Amount 2024-25',\r\n ];\r\n\r\n // Initialize totals\r\n fields.forEach(field => this.grandTotals5[field] = 0);\r\n\r\n // Calculate totals\r\n this.dataFormatType5.forEach(item => {\r\n fields.forEach(field => {\r\n this.grandTotals5[field] += item[field];\r\n });\r\n });\r\n }\r\n\r\n // Methods for Table 6\r\n fetchDataForTable6() {\r\n this.loadingTable6 = true;\r\n // this.http.get('http://203.100.79.155/api1/api/Reports/GetSubsidyDistribution', {\r\n // params: { FormatType: '6' }\r\n // })\r\n this.reportsService.getSubsidyData('6').subscribe(\r\n (data:any) => {\r\n // Map data to match our interface\r\n let value = data.map(item => ({\r\n Activities: item.Activities,\r\n Type: item.Program_Name || 'N/A',\r\n\r\n 'Lots -': item['Lots -'] || 0,\r\n 'Success Applications -': item['Success Applications -'] || 0,\r\n 'Success Amount -': item['Success Amount -'] || 0,\r\n 'Error Applications -': item['Error Applications -'] || 0,\r\n 'Error Amount -': item['Error Amount -'] || 0,\r\n\r\n 'Lots 2022-23': item['Lots 2022-23'] || 0,\r\n 'Success Applications 2022-23': item['Success Applications 2022-23'] || 0,\r\n 'Success Amount 2022-23': item['Success Amount 2022-23'] || 0,\r\n 'Error Applications 2022-23': item['Error Applications 2022-23'] || 0,\r\n 'Error Amount 2022-23': item['Error Amount 2022-23'] || 0,\r\n\r\n 'Lots 2023-24': item['Lots 2023-24'] || 0,\r\n 'Success Applications 2023-24': item['Success Applications 2023-24'] || 0,\r\n 'Success Amount 2023-24': item['Success Amount 2023-24'] || 0,\r\n 'Error Applications 2023-24': item['Error Applications 2023-24'] || 0,\r\n 'Error Amount 2023-24': item['Error Amount 2023-24'] || 0,\r\n\r\n 'Lots 2024-25': item['Lots 2024-25'] || 0,\r\n 'Success Applications 2024-25': item['Success Applications 2024-25'] || 0,\r\n 'Success Amount 2024-25': item['Success Amount 2024-25'] || 0,\r\n 'Error Applications 2024-25': item['Error Applications 2024-25'] || 0,\r\n 'Error Amount 2024-25': item['Error Amount 2024-25'] || 0,\r\n }));\r\n\r\n\r\n this.dataFormatType4b = value.filter(\r\n item => item.Activities === \"Farmer Share To Vendors\" || item.Activities === \"Refund To Farmer\"\r\n );\r\n this.dataFormatType6 = value.filter(\r\n item => item.Activities !== \"Farmer Share To Vendors\" && item.Activities !== \"Refund To Farmer\"\r\n );\r\n\r\n // Sort data by Activities\r\n this.dataFormatType4b.sort((a, b) => a.Activities.localeCompare(b.Activities));\r\n this.dataFormatType6.sort((a, b) => a.Activities.localeCompare(b.Activities));\r\n this.calculateRowSpan6();\r\n this.calculateTotals6();\r\n this.calculateRowSpan4b();\r\n this.calculateTotals4b();\r\n this.loadingTable6 = false;\r\n },\r\n error => {\r\n this.loadingTable6 = false;\r\n }\r\n );\r\n }\r\n\r\n calculateRowSpan6() {\r\n this.rowSpan6 = {};\r\n let currentActivity = '';\r\n this.dataFormatType6.forEach(item => {\r\n if (item.Activities !== currentActivity) {\r\n currentActivity = item.Activities;\r\n this.rowSpan6[currentActivity] = 1;\r\n } else {\r\n this.rowSpan6[currentActivity]++;\r\n }\r\n });\r\n }\r\n\r\n shouldShowActivities6(rowIndex: number): boolean {\r\n if (rowIndex === 0) {\r\n return true;\r\n }\r\n const currentActivity = this.dataFormatType6[rowIndex].Activities;\r\n const previousActivity = this.dataFormatType6[rowIndex - 1].Activities;\r\n return currentActivity !== previousActivity;\r\n }\r\n\r\n calculateTotals6() {\r\n const fields = [\r\n 'Lots -', 'Success Applications -', 'Success Amount -',\r\n 'Error Applications -', 'Error Amount -',\r\n 'Lots 2022-23', 'Success Applications 2022-23', 'Success Amount 2022-23',\r\n 'Error Applications 2022-23', 'Error Amount 2022-23',\r\n 'Lots 2023-24', 'Success Applications 2023-24', 'Success Amount 2023-24',\r\n 'Error Applications 2023-24', 'Error Amount 2023-24',\r\n 'Lots 2024-25', 'Success Applications 2024-25', 'Success Amount 2024-25',\r\n 'Error Applications 2024-25', 'Error Amount 2024-25',\r\n ];\r\n\r\n // Initialize totals\r\n fields.forEach(field => this.grandTotals6[field] = 0);\r\n\r\n // Calculate totals\r\n this.dataFormatType6.forEach(item => {\r\n fields.forEach(field => {\r\n this.grandTotals6[field] += item[field];\r\n });\r\n });\r\n }\r\n\r\n calculateRowSpan4b() {\r\n this.rowSpan4b = {};\r\n let currentActivity = '';\r\n this.dataFormatType4b.forEach(item => {\r\n if (item.Activities !== currentActivity) {\r\n currentActivity = item.Activities;\r\n this.rowSpan4b[currentActivity] = 1;\r\n } else {\r\n this.rowSpan4b[currentActivity]++;\r\n }\r\n });\r\n }\r\n\r\n shouldShowActivities4b(rowIndex: number): boolean {\r\n if (rowIndex === 0) {\r\n return true;\r\n }\r\n const currentActivity = this.dataFormatType4b[rowIndex].Activities;\r\n const previousActivity = this.dataFormatType4b[rowIndex - 1].Activities;\r\n return currentActivity !== previousActivity;\r\n }\r\n\r\n calculateTotals4b() {\r\n const fields = [\r\n 'Lots -', 'Success Applications -', 'Success Amount -',\r\n 'Error Applications -', 'Error Amount -',\r\n 'Lots 2022-23', 'Success Applications 2022-23', 'Success Amount 2022-23',\r\n 'Error Applications 2022-23', 'Error Amount 2022-23',\r\n 'Lots 2023-24', 'Success Applications 2023-24', 'Success Amount 2023-24',\r\n 'Error Applications 2023-24', 'Error Amount 2023-24',\r\n 'Lots 2024-25', 'Success Applications 2024-25', 'Success Amount 2024-25',\r\n 'Error Applications 2024-25', 'Error Amount 2024-25',\r\n ];\r\n\r\n // Initialize totals\r\n fields.forEach(field => this.grandTotals4b[field] = 0);\r\n\r\n // Calculate totals\r\n this.dataFormatType4b.forEach(item => {\r\n fields.forEach(field => {\r\n this.grandTotals4b[field] += item[field];\r\n });\r\n });\r\n }\r\n\r\n onClickTable1(val){\r\n this.selectedRowVal = null;\r\n this.showTable1Lot = false;\r\n this.showSubsidyToFarmer = false;\r\n this.showSubsidyToVendor = false;\r\n\r\n if(val?.Activities.startsWith('Subsidy To Farmer')){\r\n this.selectedRowVal = val;\r\n this.showTable1Lot = true;\r\n this.showSubsidyToFarmer = true;\r\n }else if(val?.Activities.startsWith('Subsidy To Vendor')){\r\n this.selectedRowVal = val;\r\n this.showTable1Lot = true;\r\n this.showSubsidyToVendor = true;\r\n }\r\n }\r\n\r\n onClickTable2(val){\r\n this.selectedRowVal = null;\r\n this.showTable2Lot = false;\r\n this.showTanksS1 = false;\r\n this.showTanksS2 = false;\r\n this.showTanksS3 = false;\r\n\r\n if(val?.Activities.startsWith('Tank 1')){\r\n this.selectedRowVal = val;\r\n this.showTable2Lot = true;\r\n this.showTanksS1 = true;\r\n }else if(val?.Activities.startsWith('Tank 2')){\r\n this.selectedRowVal = val;\r\n this.showTable2Lot = true;\r\n this.showTanksS2 = true;\r\n }else if(val?.Activities.startsWith('Tank 3')){\r\n this.selectedRowVal = val;\r\n this.showTable2Lot = true;\r\n this.showTanksS3 = true;\r\n }\r\n }\r\n\r\n onClickTable4(val){\r\n this.selectedRowVal = null;\r\n this.showTable4Lot = false;\r\n this.showRefundToFarmer = false;\r\n this.showFarmerShareToVendor = false;\r\n\r\n if(val?.Activities.startsWith('Refund To Farmer')){\r\n this.selectedRowVal = val;\r\n this.showTable4Lot = true;\r\n this.showRefundToFarmer = true;\r\n }else if(val?.Activities.startsWith('Farmer Share To Vendors')){\r\n this.selectedRowVal = val;\r\n this.showTable4Lot = true;\r\n this.showFarmerShareToVendor = true;\r\n }\r\n }\r\n\r\n onCloseDialogT1(){\r\n this.showTable1Lot = false;\r\n this.selectedRowVal = {};\r\n this.showSubsidyToFarmer = false;\r\n this.showSubsidyToVendor = false;\r\n }\r\n\r\n onCloseDialogT2(){\r\n this.showTable2Lot = false;\r\n this.selectedRowVal = {};\r\n this.showTanksS1 = false;\r\n this.showTanksS2 = false;\r\n this.showTanksS3 = false;\r\n }\r\n\r\n onCloseDialogT4(){\r\n this.showTable4Lot = false;\r\n this.selectedRowVal = {};\r\n this.showFarmerShareToVendor = false;\r\n this.showRefundToFarmer = false;\r\n }\r\n\r\n public selectedDDRowVal: any;\r\n\r\n getDrillDownData(val, tableNo, status, count, ...finYear){\r\n if(count <= 0){\r\n this.messageService.add({severity:'info', summary:'Info', detail:'Data Not Available'});\r\n return;\r\n }\r\n if(tableNo == 6){\r\n val.Program_Name = val.Type\r\n }\r\n if(tableNo == 5){\r\n val.Caste_Description = val.Type\r\n }\r\n this.selectedDDRowVal = null; \r\n\r\n this.drillDownReqDetails = {\r\n selectedRow: val,\r\n formatType: tableNo,\r\n status: status,\r\n finYear: finYear[0]\r\n }\r\n\r\n this.showDrillDownReport = true;\r\n // if(val?.Activities.startsWith('Subsidy To Farmer')){\r\n // this.selectedDDRowVal = val;\r\n // // this.showTable1Lot = true;\r\n // // this.showSubsidyToFarmer = true;\r\n // }else if(val?.Activities.startsWith('Subsidy To Vendor')){\r\n // this.selectedDDRowVal = val;\r\n // // this.showTable1Lot = true;\r\n // // this.showSubsidyToVendor = true;\r\n // }\r\n }\r\n\r\n onCloseDDReport(){\r\n this.showDrillDownReport = false;\r\n }\r\n\r\n doNothing(){\r\n\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n

Financial Progress under PDMC for MICADA Portal 2.0( MI)

\r\n

Table 1

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Activities\r\n F.Y.\r\n No of Lots\r\n Success\r\n Error\r\n \r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ rowData.Activities }}\r\n \r\n {{ rowData['F.Y.'] }}\r\n \r\n {{ rowData['No. of Lots'] || '' }}\r\n {{ rowData['Success Applications'] }}\r\n {{ rowData['Success Amount'] | indianDecimal }}\r\n {{ rowData['Error Applications'] }}\r\n {{ rowData['Error Amount'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n Grand Total:\r\n {{ grandTotalSuccessApplications2_nonTank }}\r\n {{ grandTotalSuccessAmount2_nonTank | indianDecimal }}\r\n {{ grandTotalErrorApplications2_nonTank }}\r\n {{ grandTotalErrorAmount2_nonTank | indianDecimal }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n

Financial Progress under PDMC for MICADA Portal 2.0 (Tank)

\r\n

Table 2

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Activities\r\n F.Y.\r\n No of Lots\r\n Success\r\n Error\r\n \r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ rowData.Activities }}\r\n \r\n {{ rowData['F.Y.'] }}\r\n \r\n {{ rowData['No. of Lots'] || '' }}\r\n {{ rowData['Success Applications'] }}\r\n {{ rowData['Success Amount'] | indianDecimal }}\r\n 0 ? clickable-text : '' \">{{ rowData['Error Applications'] }}\r\n {{ rowData['Error Amount'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n Grand Total:\r\n {{ grandTotalSuccessApplications2_tank }}\r\n {{ grandTotalSuccessAmount2_tank | indianDecimal }}\r\n {{ grandTotalErrorApplications2_tank }}\r\n {{ grandTotalErrorAmount2_tank | indianDecimal }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n

Gist of Expenditure in PDMC for installation of MI System & Construction of OFWT

\r\n

Table 3

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Activities\r\n \r\n F.Y. -\r\n F.Y. 2022-23\r\n F.Y. 2023-24\r\n F.Y. 2024-25\r\n Grand Total\r\n \r\n \r\n \r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ rowData.Activities }}\r\n {{ rowData['Applications -'] }}\r\n {{ rowData['Amount -'] | indianDecimal }}\r\n {{ rowData['Applications 2022-23'] }}\r\n {{ rowData['Amount 2022-23'] | indianDecimal }}\r\n {{ rowData['Applications 2023-24'] }}\r\n {{ rowData['Amount 2023-24'] | indianDecimal }}\r\n {{ rowData['Applications 2024-25'] }}\r\n {{ rowData['Amount 2024-25'] | indianDecimal }}\r\n {{ rowData['Total Applications'] }}\r\n {{ rowData['Total Amount'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n Grand Total:\r\n {{ grandTotals3['Applications -'] }}\r\n {{ grandTotals3['Amount -'] | indianDecimal }}\r\n {{ grandTotals3['Applications 2022-23'] }}\r\n {{ grandTotals3['Amount 2022-23'] | indianDecimal }}\r\n {{ grandTotals3['Applications 2023-24'] }}\r\n {{ grandTotals3['Amount 2023-24'] | indianDecimal }}\r\n {{ grandTotals3['Applications 2024-25'] }}\r\n {{ grandTotals3['Amount 2024-25'] | indianDecimal }}\r\n {{ grandTotals3['Total Applications'] }}\r\n {{ grandTotals3['Total Amount'] | indianDecimal }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n

Gist of FTV: Year wise actual payment details to vendors as Farmer share

\r\n

Table 4(a)

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Activities\r\n F.Y.\r\n No. of Lots\r\n Success\r\n Error\r\n \r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ rowData.Activities }}\r\n \r\n {{ rowData['F.Y.'] }}\r\n \r\n {{ rowData['No. of Lots'] || '' }}\r\n {{ rowData['Success Applications'] }}\r\n {{ rowData['Success Amount'] | indianDecimal }}\r\n {{ rowData['Error Applications'] }}\r\n {{ rowData['Error Amount'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n Grand Total:\r\n {{ grandTotalSuccessApplications4 }}\r\n {{ grandTotalSuccessAmount4 | indianDecimal }}\r\n {{ grandTotalErrorApplications4 }}\r\n {{ grandTotalErrorAmount4 | indianDecimal }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n

System Wise Bifurcation of FTV

\r\n

Table 4 (b)

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n Activities\r\n Type \r\n \r\n F.Y. -\r\n F.Y. 2022-23\r\n F.Y. 2023-24\r\n F.Y. 2024-25\r\n \r\n \r\n \r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n \r\n \r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ rowData.Activities }}\r\n \r\n {{ rowData.Type }}\r\n \r\n {{ rowData['Lots -'] }}\r\n {{ rowData['Success Applications -'] }}\r\n {{ rowData['Success Amount -'] | indianDecimal }}\r\n {{ rowData['Error Applications -'] }}\r\n {{ rowData['Error Amount -'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2022-23'] }}\r\n {{ rowData['Success Applications 2022-23'] }}\r\n {{ rowData['Success Amount 2022-23'] | indianDecimal }}\r\n {{ rowData['Error Applications 2022-23'] }}\r\n {{ rowData['Error Amount 2022-23'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2023-24'] }}\r\n {{ rowData['Success Applications 2023-24'] }}\r\n {{ rowData['Success Amount 2023-24'] | indianDecimal }}\r\n {{ rowData['Error Applications 2023-24'] }}\r\n {{ rowData['Error Amount 2023-24'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2024-25'] }}\r\n {{ rowData['Success Applications 2024-25'] }}\r\n {{ rowData['Success Amount 2024-25'] | indianDecimal }}\r\n {{ rowData['Error Applications 2024-25'] }}\r\n {{ rowData['Error Amount 2024-25'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n Grand Total:\r\n \r\n {{ grandTotals4b['Lots -'] }}\r\n {{ grandTotals4b['Success Applications -'] }}\r\n {{ grandTotals4b['Success Amount -'] | indianDecimal }}\r\n {{ grandTotals4b['Error Applications -'] }}\r\n {{ grandTotals4b['Error Amount -'] | indianDecimal }}\r\n \r\n {{ grandTotals4b['Lots 2022-23'] }}\r\n {{ grandTotals4b['Success Applications 2022-23'] }}\r\n {{ grandTotals4b['Success Amount 2022-23'] | indianDecimal }}\r\n {{ grandTotals4b['Error Applications 2022-23'] }}\r\n {{ grandTotals4b['Error Amount 2022-23'] | indianDecimal }}\r\n \r\n {{ grandTotals4b['Lots 2023-24'] }}\r\n {{ grandTotals4b['Success Applications 2023-24'] }}\r\n {{ grandTotals4b['Success Amount 2023-24'] | indianDecimal }}\r\n {{ grandTotals4b['Error Applications 2023-24'] }}\r\n {{ grandTotals4b['Error Amount 2023-24'] | indianDecimal }}\r\n \r\n {{ grandTotals4b['Lots 2024-25'] }}\r\n {{ grandTotals4b['Success Applications 2024-25'] }}\r\n {{ grandTotals4b['Success Amount 2024-25'] | indianDecimal }}\r\n {{ grandTotals4b['Error Applications 2024-25'] }}\r\n {{ grandTotals4b['Error Amount 2024-25'] | indianDecimal }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n

Table 5

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n Activities\r\n Type \r\n \r\n F.Y. -\r\n F.Y. 2022-23\r\n F.Y. 2023-24\r\n F.Y. 2024-25\r\n \r\n \r\n \r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n \r\n \r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ rowData.Activities }}\r\n \r\n {{ rowData.Type }}\r\n \r\n {{ rowData['Lots -'] }}\r\n {{ rowData['Success Applications -'] }}\r\n {{ rowData['Success Amount -'] | indianDecimal }}\r\n {{ rowData['Error Applications -'] }}\r\n {{ rowData['Error Amount -'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2022-23'] }}\r\n {{ rowData['Success Applications 2022-23'] }}\r\n {{ rowData['Success Amount 2022-23'] | indianDecimal }}\r\n {{ rowData['Error Applications 2022-23'] }}\r\n {{ rowData['Error Amount 2022-23'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2023-24'] }}\r\n {{ rowData['Success Applications 2023-24'] }}\r\n {{ rowData['Success Amount 2023-24'] | indianDecimal }}\r\n {{ rowData['Error Applications 2023-24'] }}\r\n {{ rowData['Error Amount 2023-24'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2024-25'] }}\r\n {{ rowData['Success Applications 2024-25'] }}\r\n {{ rowData['Success Amount 2024-25'] | indianDecimal }}\r\n {{ rowData['Error Applications 2024-25'] }}\r\n {{ rowData['Error Amount 2024-25'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n Grand Total:\r\n \r\n {{ grandTotals6['Lots -'] }}\r\n {{ grandTotals6['Success Applications -'] }}\r\n {{ grandTotals6['Success Amount -'] | indianDecimal }}\r\n {{ grandTotals6['Error Applications -'] }}\r\n {{ grandTotals6['Error Amount -'] | indianDecimal }}\r\n \r\n {{ grandTotals6['Lots 2022-23'] }}\r\n {{ grandTotals6['Success Applications 2022-23'] }}\r\n {{ grandTotals6['Success Amount 2022-23'] | indianDecimal }}\r\n {{ grandTotals6['Error Applications 2022-23'] }}\r\n {{ grandTotals6['Error Amount 2022-23'] | indianDecimal }}\r\n \r\n {{ grandTotals6['Lots 2023-24'] }}\r\n {{ grandTotals6['Success Applications 2023-24'] }}\r\n {{ grandTotals6['Success Amount 2023-24'] | indianDecimal }}\r\n {{ grandTotals6['Error Applications 2023-24'] }}\r\n {{ grandTotals6['Error Amount 2023-24'] | indianDecimal }}\r\n \r\n {{ grandTotals6['Lots 2024-25'] }}\r\n {{ grandTotals6['Success Applications 2024-25'] }}\r\n {{ grandTotals6['Success Amount 2024-25'] | indianDecimal }}\r\n {{ grandTotals6['Error Applications 2024-25'] }}\r\n {{ grandTotals6['Error Amount 2024-25'] | indianDecimal }}\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n

Table 6

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n Activities\r\n Type\r\n \r\n F.Y. -\r\n F.Y. 2022-23\r\n F.Y. 2023-24\r\n F.Y. 2024-25\r\n \r\n \r\n \r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n Lots\r\n Success\r\n Error\r\n \r\n \r\n \r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n Applications\r\n Amount\r\n Applications\r\n Amount\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ rowData.Activities }}\r\n \r\n {{ rowData.Type }}\r\n \r\n {{ rowData['Lots -'] }}\r\n {{ rowData['Success Applications -'] }}\r\n {{ rowData['Success Amount -'] | indianDecimal }}\r\n {{ rowData['Error Applications -'] }}\r\n {{ rowData['Error Amount -'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2022-23'] }}\r\n {{ rowData['Success Applications 2022-23'] }}\r\n {{ rowData['Success Amount 2022-23'] | indianDecimal }}\r\n {{ rowData['Error Applications 2022-23'] }}\r\n {{ rowData['Error Amount 2022-23'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2023-24'] }}\r\n {{ rowData['Success Applications 2023-24'] }}\r\n {{ rowData['Success Amount 2023-24'] | indianDecimal }}\r\n {{ rowData['Error Applications 2023-24'] }}\r\n {{ rowData['Error Amount 2023-24'] | indianDecimal }}\r\n \r\n {{ rowData['Lots 2024-25'] }}\r\n {{ rowData['Success Applications 2024-25'] }}\r\n {{ rowData['Success Amount 2024-25'] | indianDecimal }}\r\n {{ rowData['Error Applications 2024-25'] }}\r\n {{ rowData['Error Amount 2024-25'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n Grand Total:\r\n \r\n {{ grandTotals5['Lots -'] }}\r\n {{ grandTotals5['Success Applications -'] }}\r\n {{ grandTotals5['Success Amount -'] | indianDecimal }}\r\n {{ grandTotals5['Error Applications -'] }}\r\n {{ grandTotals5['Error Amount -'] | indianDecimal }}\r\n \r\n {{ grandTotals5['Lots 2022-23'] }}\r\n {{ grandTotals5['Success Applications 2022-23'] }}\r\n {{ grandTotals5['Success Amount 2022-23'] | indianDecimal }}\r\n {{ grandTotals5['Error Applications 2022-23'] }}\r\n {{ grandTotals5['Error Amount 2022-23'] | indianDecimal }}\r\n \r\n {{ grandTotals5['Lots 2023-24'] }}\r\n {{ grandTotals5['Success Applications 2023-24'] }}\r\n {{ grandTotals5['Success Amount 2023-24'] | indianDecimal }}\r\n {{ grandTotals5['Error Applications 2023-24'] }}\r\n {{ grandTotals5['Error Amount 2023-24'] | indianDecimal }}\r\n \r\n {{ grandTotals5['Lots 2024-25'] }}\r\n {{ grandTotals5['Success Applications 2024-25'] }}\r\n {{ grandTotals5['Success Amount 2024-25'] | indianDecimal }}\r\n {{ grandTotals5['Error Applications 2024-25'] }}\r\n {{ grandTotals5['Error Amount 2024-25'] | indianDecimal }}\r\n \r\n \r\n\r\n \r\n
0\" class=\"caste-count-container\">\r\n

Caste wise total lot count

\r\n
    \r\n
  • \r\n {{ item.Caste }} - {{ item.Count }}\r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n \r\n\r\n\r\n\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-farmer-aby-pfms-report',\r\n templateUrl: './subsidy-to-farmer-aby-pfms-report.component.html',\r\n styleUrls: ['./subsidy-to-farmer-aby-pfms-report.component.scss']\r\n})\r\nexport class SubsidyToFarmerAbyPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('subsidyToFarmerPFMSReportTable', { static: true }) public subsidyToFarmerPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n subsidyToFarmerPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n \r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.subsidyToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.subsidyToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n // }\r\n // },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.miSurveyData, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.subsidyToFarmerPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n UserType: \"isAtal\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub= this.caoService.miSubsidyToFarmerPFMSReport(reqBody)\r\n // let sub= this.caoService.getApplicationsForMISubsidyToFarmerPFMSReportABY(\"isAtal\")\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Report (ABY)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.subsidyToFarmerPFMSReportModel = data;\r\n }\r\n else{\r\n this.subsidyToFarmerPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Report (ABY)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share_AllRec', header: 'Sum of Centre Share' },\r\n { field: 'Sum_of_State_Share_AllRec', header: 'Sum of State Share' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'NoOfPendingRecords', header: 'No of Pending Records' },\r\n { field: 'SumOfPendingRecords', header: 'Sum of Pending Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'NoOfSuccessfullBankRec', header: 'Sum of Bank Transfer Successfull Records' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot No': d.Lot_No,\r\n 'Caste': d.Caste,\r\n 'No of All Records': d.No_of_AllRecords,\r\n 'Sum of All Records': d.Sum_of_AllRecords,\r\n 'No of Successfull Records': d.No_of_Successfull_Records,\r\n 'Sum of Successfull Records': d.Sum_of_Successfull_Records,\r\n 'No Of Pending Records': d.NoOfPendingRecords,\r\n 'Sum of Pending Records': d.SumOfPendingRecords,\r\n 'No of Failed Records': d.NoOfFailedRecords,\r\n 'Sum of Failed Records': d.Sum_of_Failed_Records,\r\n 'No of Times Exported': d.NoOfTimesExported,\r\n 'Sum of PFMS Export': d.Sum_of_PFMS_Export,\r\n 'No of Bank Transfer Successfull Records': d.No_of_Bank_Transfer_Successfull_Records,\r\n 'Sum of Bank Transfer Successfull Records': d.Sum_of_Bank_Transfer_Successfull_Records,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Target Days': d.TargetDays,\r\n 'Created Date': d.createdDate,\r\n 'Date of Export': d.dateofExport,\r\n 'Financial Year': d.FinYear\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miSubsidyToFarmerPFMSExport(lotId, status, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData);\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Export (ABY)', lotId, new Date(), 'Success');\r\n }\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Export (ABY)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // subsidyToFarmer: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number ?d.Farmer_Account_Number.toString() : '',\r\n 'Aadhaar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': d?.CreditDateTime,\r\n // 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n // 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n // 'Top Up': d.TopUp,\r\n 'ABY Amount': d.ABY,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_Type,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAOReamrks,\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'STF',\r\n subLotType: 'ABY',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n // this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'FARMER_SHARE_TO_FARMER_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Caste}}\r\n {{product?.No_of_AllRecords}}\r\n {{product?.Sum_of_AllRecords}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.NoOfPendingRecords}}\r\n \r\n {{product?.NoOfFailedRecords}}\r\n \r\n {{product?.NoOfTimesExported}}\r\n {{product?.Sum_of_PFMS_Export}}\r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product?.PendingCompletedDays}}\r\n {{product?.TargetDays}}\r\n {{product?.createdDate | date:'mediumDate'}}\r\n {{product?.dateofExport }}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{subsidyToFarmerPFMSReportModel ?\r\n subsidyToFarmerPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_FARMER_LOT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditDateTime}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.ABY}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_Type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_SUBSIDY_TO_FARMER_LOT_APPLICATIONS_ADDED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_FARMER_LOT'| translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-farmer-cao-pfms-report',\r\n templateUrl: './subsidy-to-farmer-cao-pfms-report.component.html',\r\n styleUrls: ['./subsidy-to-farmer-cao-pfms-report.component.scss']\r\n})\r\nexport class SubsidyToFarmerCaoPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n\r\n @ViewChild('subsidyToFarmerPFMSReportTable', { static: true }) public subsidyToFarmerPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n subsidyToFarmerPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public isCAOLogin: boolean = false;\r\n \r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n \r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {};\r\n \r\n if(tokenData && (tokenData.role == 'CAO')){\r\n this.isCAOLogin = true;\r\n }\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.subsidyToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.subsidyToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.miSurveyData, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.subsidyToFarmerPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n \r\n this.loading = true;\r\n let sub= this.caoService.miSubsidyToFarmerCAOPFMSReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.subsidyToFarmerPFMSReportModel = data;\r\n }\r\n else{\r\n this.subsidyToFarmerPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'Caste', header: 'Caste' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Total_Sum', header: 'Total Sum' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share_AllRec', header: 'Sum of Centre Share All' },\r\n { field: 'Sum_of_State_Share_AllRec', header: 'Sum of State Share All' },\r\n { field: 'TopUp_All', header: 'Sum of Top Up All' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'NoOfPendingRecords', header: 'No of Pending Records' },\r\n { field: 'NoOfFailedRecords', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'Sum_of_Pending_Records', header: 'Sum of Pending Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"Caste\": d.Caste,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Total Sum\": d.Total_Sum,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Centre Share (All records)\": d.Sum_of_Centre_Share_AllRec,\r\n \"Sum of State Share (All records)\": d.Sum_of_State_Share_AllRec,\r\n \"Sum of Top Up (All records)\": d.TopUp_All,\r\n // \"Sum of Centre Share (Successful records)\": d.Sum_of_Centre_Share_SuccessfullRec,\r\n // \"Sum of Centre Share (Pending records)\": d.Sum_of_Centre_Share_PenRec,\r\n // \"Sum of Centre Share (Failed records)\": d.Sum_of_Centre_Share_FailedRec,\r\n // \"Sum of State Share (Successful records)\": d.Sum_of_State_Share_SuccessfullRec,\r\n // \"Sum of State Share (Pending records)\": d.Sum_of_State_Share_PenRec,\r\n // \"Sum of State Share (Failed records)\": d.Sum_of_State_Share_FailedRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"No of Failed Records\": d.NoOfFailedRecords,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Pending Records\": d.Sum_of_Pending_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miSubsidyToFarmerPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData);\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n\r\n }\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // subsidyToFarmer: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number ?d.Farmer_Account_Number.toString() : '',\r\n 'Aadhaar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': d?.CreditDateTime,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'Top Up': d.TopUp,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_Type,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks\r\n \r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'STF',\r\n SubTypeLot: 'PDMC',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{\r\n 'SUBISDY_TO_FARMER_PFMS_REPORTS' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_SUM'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n\r\n {{'SUM_OF_CENTRE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n {{'SUM_OF_CENTRE_SHARE_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(SUCCESSFUL_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n \r\n {{'SUM_OF_CENTRE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(PENDING_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(FAILED_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(FAILED_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'|\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.Caste}}\r\n {{product.Total_Sum}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n\r\n {{product.Sum_of_Centre_Share_AllRec}}\r\n {{product.Sum_of_State_Share_AllRec}}\r\n {{product?.TopUp_All}}\r\n\r\n {{product.Sum_of_Centre_Share_SuccessfullRec}}\r\n {{product.Sum_of_State_Share_SuccessfullRec}}\r\n {{product.TopUp_Success}}\r\n\r\n {{product.Sum_of_Centre_Share_PenRec}}\r\n {{product.Sum_of_State_Share_PenRec}}\r\n {{product.TopUp_Pend}}\r\n\r\n {{product.Sum_of_Centre_Share_FailedRec}}\r\n {{product.Sum_of_State_Share_FailedRec}}\r\n {{product.TopUp_Failed}}\r\n\r\n {{product.No_of_AllRecords}}\r\n {{product?.No_of_Successfull_Records}}\r\n {{product?.NoOfPendingRecords}}\r\n {{product?.NoOfFailedRecords}}\r\n\r\n \r\n \r\n \r\n \r\n\r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{subsidyToFarmerPFMSReportModel ?\r\n subsidyToFarmerPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'APPROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_FARMER_LOT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditDateTime}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_Type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }}\r\n {{'MI_SUBSIDY_TO_FARMER_LOT_APPLICATIONS_ADDED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_FARMER_LOT'| translate}}: {{\r\n miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-farmer-pfms-report',\r\n templateUrl: './subsidy-to-farmer-pfms-report.component.html',\r\n styleUrls: ['./subsidy-to-farmer-pfms-report.component.scss']\r\n})\r\nexport class SubsidyToFarmerPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n\r\n @ViewChild('subsidyToFarmerPFMSReportTable', { static: true }) public subsidyToFarmerPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n subsidyToFarmerPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public isCAOLogin: boolean = false;\r\n \r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n if(tokenData && (tokenData.role == 'CAO')){\r\n this.isCAOLogin = true;\r\n }\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.subsidyToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.subsidyToFarmerPFMSReportModel, \"MI Subsidy To Farmer PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.miSurveyData, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.subsidyToFarmerPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n \r\n this.loading = true;\r\n let sub= this.caoService.miSubsidyToFarmerPFMSReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.subsidyToFarmerPFMSReportModel = data;\r\n }\r\n else{\r\n this.subsidyToFarmerPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Total_Sum', header: 'Total Sum' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share_AllRec', header: 'Sum of Centre Share All' },\r\n { field: 'Sum_of_State_Share_AllRec', header: 'Sum of State Share All' },\r\n { field: 'TopUp_All', header: 'Sum of Top Up All' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'NoOfPendingRecords', header: 'No of Pending Records' },\r\n { field: 'NoOfFailedRecords', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'Sum_of_Pending_Records', header: 'Sum of Pending Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Total Sum\": d.Total_Sum,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Centre Share (All records)\": d.Sum_of_Centre_Share_AllRec,\r\n \"Sum of State Share (All records)\": d.Sum_of_State_Share_AllRec,\r\n \"Sum of Top Up (All records)\": d.TopUp_All,\r\n // \"Sum of Centre Share (Successful records)\": d.Sum_of_Centre_Share_SuccessfullRec,\r\n // \"Sum of Centre Share (Pending records)\": d.Sum_of_Centre_Share_PenRec,\r\n // \"Sum of Centre Share (Failed records)\": d.Sum_of_Centre_Share_FailedRec,\r\n // \"Sum of State Share (Successful records)\": d.Sum_of_State_Share_SuccessfullRec,\r\n // \"Sum of State Share (Pending records)\": d.Sum_of_State_Share_PenRec,\r\n // \"Sum of State Share (Failed records)\": d.Sum_of_State_Share_FailedRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"No of Failed Records\": d.NoOfFailedRecords,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Pending Records\": d.Sum_of_Pending_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miSubsidyToFarmerPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData);\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n\r\n }\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Farmer PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // subsidyToFarmer: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number ?d.Farmer_Account_Number.toString() : '',\r\n 'Aadhaar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': d?.CreditDateTime,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'Top Up': d.TopUp,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_Type,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'STF',\r\n subLotType: 'PDMC',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n // this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'SUBISDY_TO_FARMER_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_SUM'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n\r\n {{'SUM_OF_CENTRE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.Total_Sum}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n\r\n {{product.Sum_of_Centre_Share_AllRec}}\r\n {{product.Sum_of_State_Share_AllRec}}\r\n {{product?.TopUp_All}}\r\n\r\n {{product.Sum_of_Centre_Share_SuccessfullRec}}\r\n {{product.Sum_of_State_Share_SuccessfullRec}}\r\n {{product.TopUp_Success}}\r\n\r\n {{product.Sum_of_Centre_Share_PenRec}}\r\n {{product.Sum_of_State_Share_PenRec}}\r\n {{product.TopUp_Pend}}\r\n\r\n {{product.Sum_of_Centre_Share_FailedRec}}\r\n {{product.Sum_of_State_Share_FailedRec}}\r\n {{product.TopUp_Failed}}\r\n\r\n {{product.No_of_AllRecords}}\r\n {{product?.No_of_Successfull_Records}}\r\n {{product?.NoOfPendingRecords}}\r\n {{product?.NoOfFailedRecords}}\r\n \r\n \r\n \r\n \r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{subsidyToFarmerPFMSReportModel ?\r\n subsidyToFarmerPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_FARMER_LOT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditDateTime}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_Type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_SUBSIDY_TO_FARMER_LOT_APPLICATIONS_ADDED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_FARMER_LOT'| translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-vendor-aby-pfms-report',\r\n templateUrl: './subsidy-to-vendor-aby-pfms-report.component.html',\r\n styleUrls: ['./subsidy-to-vendor-aby-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class SubsidyToVendorAbyPfmsReportComponent implements OnInit {\r\n\r\n @ViewChild('subsidyToVendorPFMSReportTable', { static: true }) public subsidyToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n subsidyToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n \r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.subsidyToVendorPFMSReportModel, \"MI Subsidy To Vendor PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.subsidyToVendorPFMSReportModel, \"MI Subsidy To Vendor PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.subsidyToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n \r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n \r\n let sub=this.caoService.miSubsidyToVendorPFMSReport(\"isatal\")\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"hello##3\")\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Report (ABY)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.subsidyToVendorPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Report (ABY)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_Record', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share_AllRec', header: 'Sum of Centre Share' },\r\n { field: 'Sum_of_State_Share_AllRec', header: 'Sum of State Share' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_Record,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Centre Share (All records)\": d.Sum_of_Centre_Share_AllRec,\r\n // \"Sum of Centre Share (Successful records)\": d.Sum_of_Centre_Share_SuccessfullRec,\r\n // \"Sum of Centre Share (Pending records)\": d.Sum_of_Centre_Share_PenRec,\r\n // \"Sum of Centre Share (Failed records)\": d.Sum_of_Centre_Share_FailedRec,\r\n \"Sum of State Share (All records)\": d.Sum_of_State_Share_AllRec,\r\n // \"Sum of State Share (Successful records)\": d.Sum_of_State_Share_SuccessfullRec,\r\n // \"Sum of State Share (Pending records)\": d.Sum_of_State_Share_PenRec,\r\n // \"Sum of State Share (Failed records)\": d.Sum_of_State_Share_FailedRec,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n \r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miSubsidyToVendorPFMSExport(lotId, status, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Export (ABY)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Export (ABY)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // subsidyToVendor: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'GST NO': d.GST_NO,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSCCode': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number ?d.Vendor_Account_Number.toString() : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': d?.CreditedOnDateTime ? this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy') : '',\r\n 'MI Type': d.Programme_Name,\r\n 'Center Share Payment Amount' : d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'Top Up' : d.TopUp,\r\n 'Programme Name': d?.Programme_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_type,\r\n 'MI Area': d?.MIArea,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'STV',\r\n SubTypeLot: 'ABY',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'SUBSIDY_TO_VENDOR_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_Record}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product.Sum_of_Centre_Share_AllRec}}\r\n {{product.SumOfCenterShare_Success}}\r\n {{product.Sum_of_Centre_Share_PenRec}}\r\n {{product.Sum_of_Centre_Share_FailedRec}}\r\n {{product.Sum_of_State_Share_AllRec}}\r\n {{product.SumOfStateShare_Success}}\r\n {{product.Sum_of_State_Share_PenRec}}\r\n {{product.Sum_of_State_Share_FailedRec}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{subsidyToVendorPFMSReportModel ?\r\n subsidyToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_VENDOR_LOT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'GST_NO' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n {{'MI_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Full_Name_In_English}}\r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.GST_NO}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.Vendor_Bank_Name}}\r\n {{product?.Vendor_IFSC_Code}}\r\n {{product?.Vendor_Account_Number}}\r\n {{product?.Vendor_Pan_Card_No}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n {{product?.Programme_Name}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.Programme_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_type}}\r\n {{product?.MIArea}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_FARMER_SHARE_TO_VENDOR_LOT_APPLICATIONS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_VENDOR_LOT' | translate}}: {{\r\n miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-vendor-cao-pfms-report',\r\n templateUrl: './subsidy-to-vendor-cao-pfms-report.component.html',\r\n styleUrls: ['./subsidy-to-vendor-cao-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class SubsidyToVendorCaoPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('subsidyToVendorPFMSReportTable', { static: true }) public subsidyToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n subsidyToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n public isCAOLogin: boolean = false;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n \r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n if(tokenData && (tokenData.role == 'CAO')){\r\n this.isCAOLogin = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.subsidyToVendorPFMSReportModel, \"MI Subsidy To Vendor PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.subsidyToVendorPFMSReportModel, \"MI Subsidy To Vendor PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.subsidyToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n \r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n\r\n this.loading = true;\r\n let reqBody = {\r\n UserType: \"\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n \r\n // let sub=this.caoService.miSubsidyToVendorPFMSReport(\"Farmer,7500\")\r\n let sub=this.caoService.miSubsidyToVendorCAOPFMSReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"hello##3\")\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.subsidyToVendorPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'Total_Sum', header: 'Total Sum' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n\r\n { field: 'Sum_of_Centre_Share_AllRec', header: 'Sum of Centre Share' },\r\n { field: 'Sum_of_State_Share_AllRec', header: 'Sum of State Share' },\r\n { field: 'TopUp_All', header: 'Sum Of Topup All' },\r\n\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n\r\n { field: 'No_of_Record', header: 'No of Record' },\r\n { field: 'NoOfPendingRecords', header: 'No of Pending Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n\r\n { field: 'SumOfPendingRecords', header: 'Sum of Pending Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n\r\n { field: 'NoOfSuccessfullBankRec', header: 'Sum of Bank Transfer Successfull Records' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_Record,\r\n \"Total Sum\": d.Total_Sum,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Centre Share (All records)\": d.Sum_of_Centre_Share_AllRec,\r\n \"Sum of State Share (All records)\": d.Sum_of_State_Share_AllRec,\r\n \"Sum of Top Up (All records)\": d.TopUp_All,\r\n\r\n // \"Sum of Centre Share (Successful records)\": d.Sum_of_Centre_Share_SuccessfullRec,\r\n // \"Sum of Centre Share (Pending records)\": d.Sum_of_Centre_Share_PenRec,\r\n // \"Sum of Centre Share (Failed records)\": d.Sum_of_Centre_Share_FailedRec,\r\n // \"Sum of State Share (Successful records)\": d.Sum_of_State_Share_SuccessfullRec,\r\n // \"Sum of State Share (Pending records)\": d.Sum_of_State_Share_PenRec,\r\n // \"Sum of State Share (Failed records)\": d.Sum_of_State_Share_FailedRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Pending Records\": d.SumOfPendingRecords,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.NoOfSuccessfullBankRec,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n \r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miSubsidyToVendorPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // subsidyToVendor: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSCCode': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number ?d.Vendor_Account_Number.toString() : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'Pincode': d.Pincode,\r\n 'Aadhaar Number': d.Aadhar_No ? d.Aadhar_No.toString() : '',\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy'),\r\n 'MI Type': d.Programme_Name,\r\n 'Center Share Payment Amount' : d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'Top Up' : d.TopUp,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_type,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'STV',\r\n SubTypeLot: '',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{\r\n 'SUBSIDY_TO_VENDOR_PFMS_REPORTS' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'TOTAL_SUM'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n\r\n {{'SUM_OF_CENTRE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(SUCCESSFUL_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(SUCCESSFUL_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n \r\n {{'SUM_OF_CENTRE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(PENDING_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(FAILED_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(FAILED_RECORDS)'|\r\n translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'|\r\n translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.Total_Sum}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n\r\n {{product.Sum_of_Centre_Share_AllRec}}\r\n {{product.Sum_of_State_Share_AllRec}}\r\n {{product?.TopUp_All}}\r\n\r\n {{product.SumOfCenterShare_Success}}\r\n {{product.SumOfStateShare_Success}}\r\n {{product.TopUp_Success}}\r\n\r\n {{product.Sum_of_Centre_Share_PenRec}}\r\n {{product.Sum_of_State_Share_PenRec}}\r\n {{product.TopUp_Pend}}\r\n\r\n {{product.Sum_of_Centre_Share_FailedRec}}\r\n {{product.Sum_of_State_Share_FailedRec}}\r\n {{product.TopUp_Failed}}\r\n\r\n {{product.No_of_Record}}\r\n {{product?.No_of_Successfull_Records}}\r\n {{product?.NoOfPendingRecords}}\r\n {{product?.No_of_Failed_Records}}\r\n\r\n \r\n \r\n \r\n\r\n {{product?.NoOfSuccessfullBankRec}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{subsidyToVendorPFMSReportModel ?\r\n subsidyToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'APPROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_VENDOR_LOT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GST_NO' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO' | translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Full_Name_In_English}}\r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Caste_Description}}\r\n {{product?.GST_NO}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Vendor_Bank_Name}}\r\n {{product?.Vendor_IFSC_Code}}\r\n {{product?.Vendor_Account_Number}}\r\n {{product?.Vendor_Pan_Card_No}}\r\n {{product?.Aadhar_No}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n \r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }}\r\n {{'MI_FARMER_SHARE_TO_VENDOR_LOT_APPLICATIONS_ADDED' | translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY' | translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_VENDOR_LOT' | translate}}: {{\r\n miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n \r\n \r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-vendor-pfms-report',\r\n templateUrl: './subsidy-to-vendor-pfms-report.component.html',\r\n styleUrls: ['./subsidy-to-vendor-pfms-report.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class SubsidyToVendorPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('subsidyToVendorPFMSReportTable', { static: true }) public subsidyToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n subsidyToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n public isCAOLogin: boolean = false;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n \r\n ngOnInit() {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n if(tokenData && (tokenData.role == 'CAO')){\r\n this.isCAOLogin = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.subsidyToVendorPFMSReportModel, \"MI Subsidy To Vendor PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.subsidyToVendorPFMSReportModel, \"MI Subsidy To Vendor PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n // let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.deptDashBoardService\r\n // .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.subsidyToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n \r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n\r\n this.loading = true;\r\n let reqBody = {\r\n UserType: \"\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n \r\n // let sub=this.caoService.miSubsidyToVendorPFMSReport(\"Farmer,7500\")\r\n let sub=this.caoService.miSubsidyToVendorPFMSReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"hello##3\")\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.subsidyToVendorPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr no' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'Total_Sum', header: 'Total Sum' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n\r\n { field: 'Sum_of_Centre_Share_AllRec', header: 'Sum of Centre Share' },\r\n { field: 'Sum_of_State_Share_AllRec', header: 'Sum of State Share' },\r\n { field: 'TopUp_All', header: 'Sum Of Topup All' },\r\n\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n\r\n { field: 'No_of_Record', header: 'No of Record' },\r\n { field: 'NoOfPendingRecords', header: 'No of Pending Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n\r\n { field: 'SumOfPendingRecords', header: 'Sum of Pending Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n\r\n { field: 'NoOfSuccessfullBankRec', header: 'Sum of Bank Transfer Successfull Records' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n this.miSurveyData = [];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr no\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_Record,\r\n \"Total Sum\": d.Total_Sum,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Centre Share (All records)\": d.Sum_of_Centre_Share_AllRec,\r\n \"Sum of State Share (All records)\": d.Sum_of_State_Share_AllRec,\r\n \"Sum of Top Up (All records)\": d.TopUp_All,\r\n\r\n // \"Sum of Centre Share (Successful records)\": d.Sum_of_Centre_Share_SuccessfullRec,\r\n // \"Sum of Centre Share (Pending records)\": d.Sum_of_Centre_Share_PenRec,\r\n // \"Sum of Centre Share (Failed records)\": d.Sum_of_Centre_Share_FailedRec,\r\n // \"Sum of State Share (Successful records)\": d.Sum_of_State_Share_SuccessfullRec,\r\n // \"Sum of State Share (Pending records)\": d.Sum_of_State_Share_PenRec,\r\n // \"Sum of State Share (Failed records)\": d.Sum_of_State_Share_FailedRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"No of Pending Records\": d.NoOfPendingRecords,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Pending Records\": d.SumOfPendingRecords,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.NoOfSuccessfullBankRec,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // handleClick() {\r\n // let newFilteredData = this.filteredData.map(row => ({\r\n // ...row,\r\n // status: this.selectedStatus.flag,\r\n // remarks: this.remarks ? this.remarks : 'undefined',\r\n // }))\r\n\r\n // let reqBody = {\r\n // listLotData: newFilteredData,\r\n // userID: this.userID,\r\n // network_Id: this.ipAddress,\r\n // terminal_Id: this.ipAddress,\r\n // subSidyType: 'FTV',\r\n // }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n // this.insertMISubsidyLot(reqBody);\r\n // }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n \r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.caoService.miSubsidyToVendorPFMSExport(lotId, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.miSurveyData = [];\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Subsidy To Vendor PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n // onRowSelect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // onRowUnselect(event) {\r\n // // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n\r\n // calculation() {\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n\r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id,\r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n // subsidyToVendor: val.Farmer_Share_To_Vendor,\r\n // state_share_amt: val.State_Share_Payment_Amount,\r\n // centre_share_amt: val.Center_Share_Payment_Amount,\r\n // })\r\n // })\r\n // }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSCCode': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number ?d.Vendor_Account_Number.toString() : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'Pincode': d.Pincode,\r\n 'Aadhaar Number': d.Aadhar_No ? d.Aadhar_No.toString() : '',\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Challan No': d.ChallanNo,\r\n 'UTR': d?.UTR,\r\n 'Credited Date': d?.CreditedOnDateTime ? this.datePipe.transform(new Date(d?.CreditedOnDateTime), 'dd-MM-yyyy') : '',\r\n 'MI Type': d.Programme_Name,\r\n 'Center Share Payment Amount' : d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'Top Up' : d.TopUp,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d?.UserType,\r\n 'Application Type': d?.Applicant_type,\r\n 'MI Area': d?.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'Remarks': d?.Remarks,\r\n 'CAO Remarks': d?.CAORemarks,\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'STV',\r\n subLotType: '',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n // this.loading = true;\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n \r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n // this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -3) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1 || row.PendingCompletedDays == -2) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'SUBSIDY_TO_VENDOR_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'TOTAL_SUM'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n\r\n {{'SUM_OF_CENTRE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(ALL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(SUCCESSFUL_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(PENDING_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'SUM_OF_CENTRE_SHARE_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOP_UP_(FAILED_RECORDS)'| translate}}\r\n \r\n \r\n \r\n\r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.Total_Sum}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n\r\n {{product.Sum_of_Centre_Share_AllRec}}\r\n {{product.Sum_of_State_Share_AllRec}}\r\n {{product?.TopUp_All}}\r\n\r\n {{product.SumOfCenterShare_Success}}\r\n {{product.SumOfStateShare_Success}}\r\n {{product.TopUp_Success}}\r\n\r\n {{product.Sum_of_Centre_Share_PenRec}}\r\n {{product.Sum_of_State_Share_PenRec}}\r\n {{product.TopUp_Pend}}\r\n\r\n {{product.Sum_of_Centre_Share_FailedRec}}\r\n {{product.Sum_of_State_Share_FailedRec}}\r\n {{product.TopUp_Failed}}\r\n\r\n {{product.No_of_Record}}\r\n {{product?.No_of_Successfull_Records}}\r\n {{product?.NoOfPendingRecords}}\r\n {{product?.No_of_Failed_Records}}\r\n\r\n \r\n \r\n \r\n \r\n {{product?.NoOfSuccessfullBankRec}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{subsidyToVendorPFMSReportModel ?\r\n subsidyToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_THREE_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_OR_TWO_DAYS' | translate}}
\r\n
{{'APPROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_VENDOR_LOT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GST_NO' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO' | translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_NO' | translate}}\r\n \r\n \r\n \r\n {{'UTR' | translate}}\r\n \r\n \r\n \r\n {{'CREDITED_DATE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'MIAREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Full_Name_In_English}}\r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Caste_Description}}\r\n {{product?.GST_NO}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Vendor_Bank_Name}}\r\n {{product?.Vendor_IFSC_Code}}\r\n {{product?.Vendor_Account_Number}}\r\n {{product?.Vendor_Pan_Card_No}}\r\n {{product?.Aadhar_No}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.ChallanNo}}\r\n {{product?.UTR}}\r\n {{product?.CreditedOnDateTime | date:'mediumDate'}}\r\n \r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.Applicant_type}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.Remarks}}\r\n {{product?.CAORemarks}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_FARMER_SHARE_TO_VENDOR_LOT_APPLICATIONS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_VENDOR_LOT' | translate}}: {{\r\n miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-tank-stage-pfms-import',\r\n templateUrl: './tank-stage-pfms-import.component.html',\r\n styleUrls: ['./tank-stage-pfms-import.component.scss']\r\n})\r\nexport class TankStagePfmsImportComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

tank-stage-pfms-import works!

\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage1-aby-pfms-report',\r\n templateUrl: './tank-stage1-aby-pfms-report.component.html',\r\n styleUrls: ['./tank-stage1-aby-pfms-report.component.scss']\r\n})\r\nexport class TankStage1AbyPfmsReportComponent implements OnInit {\r\n\r\n @ViewChild('pondSubsidyPFMSReportTable', { static: true }) public pondSubsidyPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n pondSubsidyPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.pondSubsidyPFMSReportModel, \"Pond Survey Tank Stage 1 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.pondSubsidyPFMSReportModel, \"Pond Survey Tank Stage 1 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.pondSubsidyPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n \r\n let reqBody = {\r\n Stage: 1,\r\n UserType: \"isAtal\",\r\n FinYear: ''\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub= this.caoService.getApplicatonsForPondSubsidyPFMSReportsByStageId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Report (ABY)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.pondSubsidyPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Report (ABY)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amounth' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 1;\r\n this.loading1 = true;\r\n this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Export (ABY)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Export (ABY)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n this.loader.start();\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks': d.CAORemarks,\r\n // 'Subsidy Amount': d.Subsidy_Amt,\r\n // 'ApprovalDate': d.ApprovalDate\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'TS1',\r\n subLotType: 'ABY',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_SURVEY_TANK_STAGE1_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{pondSubsidyPFMSReportModel ?\r\n pondSubsidyPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK1_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n \r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }} {{'POND_SURVEY_TANK1_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_APPLICATIONS_FILTERED_POND_TANK1_PFMS_REPORTS' | translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage1-cao-pfms-report',\r\n templateUrl: './tank-stage1-cao-pfms-report.component.html',\r\n styleUrls: ['./tank-stage1-cao-pfms-report.component.scss']\r\n})\r\nexport class TankStage1CaoPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('pondSubsidyPFMSReportTable', { static: true }) public pondSubsidyPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n pondSubsidyPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.pondSubsidyPFMSReportModel, \"Pond Survey Tank Stage 1 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.pondSubsidyPFMSReportModel, \"Pond Survey Tank Stage 1 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.pondSubsidyPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n let reqBody = {\r\n Stage: 1,\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n Stage: 1,\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub= this.caoService.getApplicationsForPondSubsidyToFarmerPFMSCAOReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.pondSubsidyPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amounth' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 1;\r\n this.loading1 = true;\r\n this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'farmer,7500' )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n this.loader.start();\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks': d.CAORemarks\r\n // 'Subsidy Amount': d.Subsidy_Amt,\r\n // 'ApprovalDate': d.ApprovalDate\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'TS1',\r\n SubTypeLot: 'PDMC',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
{{\r\n 'POND_SURVEY_TANK_STAGE1_PFMS_REPORTS' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{pondSubsidyPFMSReportModel ?\r\n pondSubsidyPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY' | translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK1_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }}\r\n {{'POND_SURVEY_TANK1_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_APPLICATIONS_FILTERED_POND_TANK1_PFMS_REPORTS' | translate}}: {{ miSurveyData?.length\r\n }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage1-pfms-report',\r\n templateUrl: './tank-stage1-pfms-report.component.html',\r\n styleUrls: ['./tank-stage1-pfms-report.component.scss']\r\n})\r\nexport class TankStage1PfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('pondSubsidyPFMSReportTable', { static: true }) public pondSubsidyPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n pondSubsidyPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.pondSubsidyPFMSReportModel, \"Pond Survey Tank Stage 1 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.pondSubsidyPFMSReportModel, \"Pond Survey Tank Stage 1 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.pondSubsidyPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n let reqBody = {\r\n Stage: 1,\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n Stage: 1,\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub= this.caoService.getApplicatonsForPondSubsidyPFMSReportsByStageId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.pondSubsidyPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amounth' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 1;\r\n this.loading1 = true;\r\n this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'farmer,7500' )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n else{\r\n this.miSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-1 PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n this.loader.start();\r\n this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks': d.CAORemarks,\r\n // 'Subsidy Amount': d.Subsidy_Amt,\r\n // 'ApprovalDate': d.ApprovalDate\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n\r\n let reqBody = {\r\n lotType: 'TS1',\r\n subLotType: 'PDMC',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_SURVEY_TANK_STAGE1_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{pondSubsidyPFMSReportModel ?\r\n pondSubsidyPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK1_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }} {{'POND_SURVEY_TANK1_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_APPLICATIONS_FILTERED_POND_TANK1_PFMS_REPORTS' | translate}}: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage2-aby-pfms-report',\r\n templateUrl: './tank-stage2-aby-pfms-report.component.html',\r\n styleUrls: ['./tank-stage2-aby-pfms-report.component.scss']\r\n})\r\nexport class TankStage2AbyPfmsReportComponent implements OnInit {\r\n\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router,\r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 2 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 2 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n let reqBody = {\r\n Stage: 2,\r\n UserType: \"isAtal\",\r\n FinYear: ''\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.getApplicatonsForPondSubsidyPFMSReportsByStageId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Report (ABY)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Report (ABY)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amounth' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub= this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 2;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub=this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Export (ABY)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Export (ABY)', lotId, new Date(), err);\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks' : d.CAORemarks,\r\n // 'Subsidy Amount': d.Subsidy_Amt,\r\n // 'ApprovalDate': d.ApprovalDate\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'TS2',\r\n subLotType: 'ABY',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_SURVEY_TANK_STAGE2_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK2_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n \r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }} {{'POND_SURVEY_TANK2_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Total No. of Applications Filtered For Pond Survey Tank Stage 2 PFMS Reports: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage2-cao-pfms-report',\r\n templateUrl: './tank-stage2-cao-pfms-report.component.html',\r\n styleUrls: ['./tank-stage2-cao-pfms-report.component.scss']\r\n})\r\nexport class TankStage2CaoPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router,\r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 2 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 2 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n this.loading = true;\r\n let reqBody = {\r\n Stage: 2,\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n Stage: 2,\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.caoService.getApplicationsForPondSubsidyToFarmerPFMSCAOReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amounth' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub= this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 2;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub=this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks' : d.CAORemarks\r\n // 'Subsidy Amount': d.Subsidy_Amt,\r\n // 'ApprovalDate': d.ApprovalDate\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'TS2',\r\n SubTypeLot: 'PDMC',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{\r\n 'POND_SURVEY_TANK_STAGE2_PFMS_REPORTS' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY' | translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK2_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }}\r\n {{'POND_SURVEY_TANK2_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Total No. of Applications Filtered For Pond Survey Tank Stage 2 PFMS Reports: {{\r\n miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage2-pfms-report',\r\n templateUrl: './tank-stage2-pfms-report.component.html',\r\n styleUrls: ['./tank-stage2-pfms-report.component.scss']\r\n})\r\nexport class TankStage2PfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router,\r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 2 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 2 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n this.loading = true;\r\n let reqBody = {\r\n Stage: 2,\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n Stage: 2,\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.caoService.getApplicatonsForPondSubsidyPFMSReportsByStageId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amounth' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub= this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 2;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub=this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-2 PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount' : d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks' : d.CAORemarks,\r\n // 'Subsidy Amount': d.Subsidy_Amt,\r\n // 'ApprovalDate': d.ApprovalDate\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'TS2',\r\n subLotType: 'PDMC',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_SURVEY_TANK_STAGE2_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK2_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }} {{'POND_SURVEY_TANK2_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Total No. of Applications Filtered For Pond Survey Tank Stage 2 PFMS Reports: {{ miSurveyData?.length }}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage3-aby-pfms-report',\r\n templateUrl: './tank-stage3-aby-pfms-report.component.html',\r\n styleUrls: ['./tank-stage3-aby-pfms-report.component.scss']\r\n})\r\nexport class TankStage3AbyPfmsReportComponent implements OnInit {\r\n\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 3 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 3 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n\r\n let reqBody = {\r\n Stage: 3,\r\n UserType: \"isAtal\",\r\n FinYear: ''\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.getApplicatonsForPondSubsidyPFMSReportsByStageId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Report (ABY)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n else{\r\n this.farmerShareToVendorPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Report (ABY)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amount' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 3;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub=this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'isAtal')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Export (ABY)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Export (ABY)', lotId, new Date(), err);\r\n\r\n }\r\n });\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount':d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks': d.CAORemarks,\r\n // 'Subsidy Amt':d.Subsidy_Amt,\r\n // 'ApprovalDate':d.ApprovalDate,\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'TS3',\r\n subLotType: 'ABY',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.subscriptions.push(sub);\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_SURVEY_TANK_STAGE3_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK3_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }} {{'POND_SURVEY_TANK3_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_APPLICATIONS_FILTERED_POND_TANK3_PFMS_REPORTS' | translate}}: {{ miSurveyData?.length }}\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage3-cao-pfms-report',\r\n templateUrl: './tank-stage3-cao-pfms-report.component.html',\r\n styleUrls: ['./tank-stage3-cao-pfms-report.component.scss']\r\n})\r\nexport class TankStage3CaoPfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 3 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 3 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let reqBody = {\r\n Stage: 3,\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n Stage: 3,\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.getApplicationsForPondSubsidyToFarmerPFMSCAOReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n else{\r\n this.farmerShareToVendorPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amount' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 3;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub=this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount':d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks': d.CAORemarks\r\n // 'Subsidy Amt':d.Subsidy_Amt,\r\n // 'ApprovalDate':d.ApprovalDate,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n LotType: 'TS3',\r\n SubTypeLot: 'PDMC',\r\n LotNo: this.lotNo,\r\n UserId: this.userID,\r\n Network_Id: this.ipAddress,\r\n Terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.subscriptions.push(sub);\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n\r\n","\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{\r\n 'POND_SURVEY_TANK_STAGE3_PFMS_REPORTS' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY' | translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK3_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' |\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }}\r\n {{'POND_SURVEY_TANK3_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_APPLICATIONS_FILTERED_POND_TANK3_PFMS_REPORTS' | translate}}: {{ miSurveyData?.length\r\n }}\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage3-pfms-report',\r\n templateUrl: './tank-stage3-pfms-report.component.html',\r\n styleUrls: ['./tank-stage3-pfms-report.component.scss']\r\n})\r\nexport class TankStage3PfmsReportComponent implements OnInit {\r\n @Input() lotDetails: string;\r\n @ViewChild('farmerShareToVendorPFMSReportTable', { static: true }) public farmerShareToVendorPFMSReportTable: any;\r\n\r\n selectedBankAccounts: any[];\r\n\r\n submitted: boolean;\r\n menuItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerShareToVendorPFMSReportModel: any[];\r\n addDialog: boolean;\r\n\r\n lotNo: number;\r\n public filteredData: any = [];\r\n selectedStatus: any;\r\n remarks: String;\r\n date: any;\r\n public userID: any;\r\n miSurveyData: any[];\r\n items: any[];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private caoService: CaoService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.date = new Date();\r\n\r\n this.getIP();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 3 PFMS Report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerShareToVendorPFMSReportModel, \"Pond Survey Tank Stage 3 PFMS Report\");\r\n }\r\n },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.pfmsExportExcel(this.miSurveyData, `${this.lotNo}_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n \r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n if(this.lotDetails){\r\n this.loadData();\r\n }else{\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.farmerShareToVendorPFMSReportTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let reqBody = {\r\n Stage: 3,\r\n UserType: \"Farmer,7500\",\r\n FinYear: ''\r\n }\r\n if(this.lotDetails != undefined){\r\n reqBody = {\r\n Stage: 3,\r\n UserType: '',\r\n FinYear: this.lotDetails?.['F.Y.']\r\n }\r\n }\r\n\r\n this.loading = true;\r\n let sub=this.caoService.getApplicatonsForPondSubsidyPFMSReportsByStageId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data = data.map(val => ({ \r\n ...val,\r\n lotNoForSorting: parseInt(val?.Lot_No.slice(7))\r\n }))\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Report (PDMC)', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.farmerShareToVendorPFMSReportModel = data;\r\n }\r\n else{\r\n this.farmerShareToVendorPFMSReportModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Report (PDMC)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! not loaded.' });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Srno', header: 'Sr No' },\r\n { field: 'Lot_No', header: 'File No' },\r\n { field: 'dateofExport', header: 'Date of Export' },\r\n { field: 'No_of_AllRecords', header: 'No of Record' },\r\n { field: 'Sum_of_PFMS_Export', header: 'Sum of PFMS Export' },\r\n { field: 'Sum_of_Centre_Share', header: 'Sum of Center Share Amount' },\r\n { field: 'Sum_of_State_Share', header: 'Sum of State Share Amount' },\r\n { field: 'SumOfTopUp_AllRec', header: 'Sum of TopUp Amount' },\r\n { field: 'SumOfABY_AllRec', header: 'Sum of ABY Amount' },\r\n { field: 'No_of_Successfull_Records', header: 'No of Successfull Records' },\r\n { field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records' },\r\n { field: 'No_of_Failed_Records', header: 'No of Failed Records' },\r\n { field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records' },\r\n { field: 'Sum_of_Bank_Transfer_Successfull_Records', header: 'Sum of Bank Transfer Successfull Records' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n hideDialog() {\r\n this.addDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Sr No\": d.Srno,\r\n \"File No\": d.Lot_No,\r\n \"Date of Export\": d.dateofExport,\r\n \"No of Record\": d.No_of_AllRecords,\r\n \"Sum of PFMS Export\": d.Sum_of_PFMS_Export,\r\n \"Sum of Center Share Amount\": d.Sum_of_Centre_Share,\r\n \"Sum of State Share Amount\": d.Sum_of_State_Share,\r\n \"Sum of TopUp Amount\": d.SumOfTopUp_AllRec,\r\n \"Sum of ABY Amount\": d.SumOfABY_AllRec,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"Sum of Bank Transfer Successfull Records\": d.Sum_of_Bank_Transfer_Successfull_Records,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.pmfsExport(reqBody.Lot_No, '');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n pmfsExport(lotId, status) {\r\n this.addDialog = true;\r\n this.lotNo = lotId;\r\n let tankStage = 3;\r\n // this.loader.start();\r\n this.loading1 = true;\r\n let sub=this.caoService.getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, tankStage, status, 'Farmer,7500')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n // console.log(\"RTFdata\", this.miSurveyData)\r\n }\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Export (PDMC)', lotId, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Stage-3 PFMS Export (PDMC)', lotId, new Date(), err);\r\n }\r\n });\r\n }\r\n\r\n refreshTable(){\r\n this.loadData();\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.Scheme_Specific_Id){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.dashboard\r\n .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n window.open(link, '_blank');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n pfmsExportExcel(modelData, filename) {\r\n this.countNoOfTimesExported();\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste Description': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSCCode': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString(): '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific ID': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount':d.State_Share_Payment_Amount,\r\n 'ABY' : d.ABY,\r\n 'Top Up' : d.TopUp,\r\n 'Application Type' : d.Applicant_type,\r\n 'User Type' : d.userType,\r\n 'Coverage Area' : d.Coverage_Area,\r\n 'Remarks' : d.Remarks,\r\n 'CAO Remarks': d.CAORemarks,\r\n // 'Subsidy Amt':d.Subsidy_Amt,\r\n // 'ApprovalDate':d.ApprovalDate,\r\n //user need to enter\r\n 'status': '',\r\n 'remarks': '',\r\n 'PFMS Payment Date': '',\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n countNoOfTimesExported(){\r\n let reqBody = {\r\n lotType: 'TS3',\r\n subLotType: 'PDMC',\r\n lotNo: this.lotNo,\r\n userId: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress \r\n }\r\n\r\n this.postCountExportDataFrequency(reqBody);\r\n }\r\n\r\n postCountExportDataFrequency(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.deptDashBoardService\r\n .postCountExportDataFrequency(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if(data.Result == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data.Result,\r\n });\r\n }else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data.Result,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.subscriptions.push(sub);\r\n },\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.PendingCompletedDays <= -2) {\r\n //red\r\n return '#ff8080';\r\n }else if (row.PendingCompletedDays == -1) {\r\n //orange\r\n return '#ffc966';\r\n }else if (row.PendingCompletedDays == 0) {\r\n //light green\r\n return '#99e699'\r\n }else return '#ffffff'; \r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_SURVEY_TANK_STAGE3_PFMS_REPORTS' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'FILE_NO'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_PFMS_EXPORT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_CENTRE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_STATE_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_TOPUP_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_ABY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_TIMES_EXPORTED' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_PENDING_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUM_OF_BANK_TRANSFER_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.dateofExport}}\r\n {{product.No_of_AllRecords}}\r\n {{product.Sum_of_PFMS_Export}}\r\n {{product.Sum_of_Centre_Share}}\r\n {{product.Sum_of_State_Share}}\r\n {{product.SumOfTopUp_AllRec}}\r\n {{product.SumOfABY_AllRec}}\r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.NoOfTimesExported}}\r\n {{product?.No_of_Successfull_Records}}\r\n \r\n {{product?.No_of_Pending_Records}}\r\n \r\n {{product?.No_of_Failed_Records}}\r\n \r\n {{product?.No_of_Bank_Transfer_Successfull_Records}}\r\n {{product.Sum_of_Bank_Transfer_Successfull_Records}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{farmerShareToVendorPFMSReportModel ?\r\n farmerShareToVendorPFMSReportModel.length : 0 }} {{'RECORDS_ADDED' | translate}}\r\n

\r\n
\r\n
{{'PENDING_TWO_OR_MORE_DAYS' | translate}}
\r\n
{{'PENDING_BY_ONE_DAY' | translate}}
\r\n
{{'APROVED_ON_TIME' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_POND_TANK3_PFMS_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'FULL_NAME_IN_ENGLISH' | translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_IN_RECOGNIZED_OFFICIAL_LANGUAGE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'GENDER' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE1' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE2' | translate}}\r\n \r\n \r\n \r\n {{'ADDRESSLINE3' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n {{'STATE' | translate}}\r\n \r\n \r\n \r\n {{'COUNTRY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSCCODE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_ACCOUNT_NUMBER' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID' | translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT_AMOUNT' | translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'CAO_REMARKS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP_PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n {{product.Applicant_type}}\r\n {{product.userType}}\r\n {{product.Coverage_Area}}\r\n {{product.Remarks}}\r\n {{product.CAORemarks}}\r\n {{product?.TopUpPFMSPaymentDate}}\r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE' | translate}} {{miSurveyData ? miSurveyData?.length : 0 }} {{'POND_SURVEY_TANK3_PFMS_REPORT_APPLICATIONS_ADDED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_APPLICATIONS_FILTERED_POND_TANK3_PFMS_REPORTS' | translate}}: {{ miSurveyData?.length }}\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { first } from 'rxjs';\r\nimport { ChallanService } from '../../../../services/challan-services.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-share',\r\n templateUrl: './farmer-share.component.html',\r\n styleUrls: ['./farmer-share.component.scss']\r\n})\r\nexport class FarmerShareComponent implements OnInit {\r\n\r\n public appId:any;\r\n public programId:any;\r\n public challanPrintData:any;\r\n\r\n public currentDate: Date;\r\n\r\n constructor(\r\n private challanMIService: ChallanService,\r\n private tokenService: TokenService,\r\n private messageService: MessageService,\r\n private route: ActivatedRoute,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.appId = this.route.snapshot.params.id;\r\n this.programId = this.route.snapshot.params.pId;\r\n this.getDataToPrintChallan();\r\n }\r\n\r\n getDataToPrintChallan() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n\r\n this.loader.start();\r\n this.challanMIService\r\n .getDataToPrintChallan(this.appId, this.programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(mobile, 'Farmer Share Challan', this.appId, new Date(), 'Success');\r\n\r\n console.log('Response Data', data);\r\n this.challanPrintData = data;\r\n this.loader.close();\r\n this.currentDate = new Date();\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'Farmer Share Challan', this.appId, new Date(), err);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onPrint(divName){\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML; \r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n document.body.style.visibility=\"hidden\";\r\n document.getElementById(divName).style.visibility='visible'\r\n document.getElementById('space_generator_for_print').style.marginTop='1000px'\r\n window.print();\r\n document.getElementById('space_generator_for_print').style.marginTop='0px'\r\n document.body.style.visibility=\"visible\";\r\n}\r\n\r\n}\r\n","
\r\n\r\n
\r\n
\r\n

{{'FARMER_SHARE_CHALLAN'| translate}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n
{{ currentDate | date : 'medium'}}
\r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'MICADA_HEADING'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_2022'| translate}}\r\n \r\n
\r\n
\r\n
\r\n

{{'CHALLAN_FOR_PAYMENT_OF_DUE_DATE'| translate}}

\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'MODE_OF_PAYMENT'| translate}}

\r\n
\r\n

{{ challanPrintData?.PaymentMode }}

\r\n
\r\n

{{'NAME_OF_APPLICANT'| translate}}

\r\n
\r\n

{{ challanPrintData?.ApplicantName | uppercase }}

\r\n
\r\n

{{'CHALLAN_DATE'| translate}}

\r\n
\r\n

{{ challanPrintData?.ChallanDate | date:'medium' }}

\r\n
\r\n

{{'APPLICATION_NUMBER'| translate}}

\r\n
\r\n

{{ challanPrintData?.AppId }}

\r\n
\r\n

{{'BENEFICIARY_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryName }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'PAYMENT_DETAILS'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'BENEFICIARY_ACCOUNT_NO'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryAccountNo }}

\r\n
\r\n

{{'BANK_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BankName }}

\r\n
\r\n

{{'BRANCH_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BranchName }}

\r\n
\r\n

{{'IFSC_CODE'| translate}}

\r\n
\r\n

{{ challanPrintData?.IFSCCODE }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDeposted }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED_IN_WORDS'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDepostedInWords }}

\r\n
\r\n
\r\n
{{'DEPOSIT_DATE'| translate}}
\r\n
{{'SIGN_OF_DEPOSITOR'| translate}}
\r\n
\r\n
{{'BANK_RECEIVING_STAMP'| translate}}
\r\n\r\n
\r\n
\r\n\r\n \r\n
\r\n
{{'NOTE'| translate}}{{'PLEASE_DONT_MAKE_A_COPY_OF_CHALLAN'| translate}}
\r\n
{{'YOU_CAN_PAY_AT_ANY_BRANCH'| translate}}\r\n
\r\n
{{'CHALLAN_PAYMENT_NOTE'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ currentDate | date : 'medium'}}
\r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'MICADA_HEADING'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_2022'| translate}}\r\n \r\n
\r\n
\r\n
\r\n

{{'CHALLAN_PAYMENT_DUE_AMOUNT_CUSTOMER_COPY'| translate}}

\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'MODE_OF_PAYMENT'| translate}}

\r\n
\r\n

{{ challanPrintData?.PaymentMode }}

\r\n
\r\n

{{'NAME_OF_APPLICANT'| translate}}

\r\n
\r\n

{{ challanPrintData?.ApplicantName | uppercase }}

\r\n
\r\n

{{'CHALLAN_DATE'| translate}}

\r\n
\r\n

{{ challanPrintData?.ChallanDate | date:'medium' }}

\r\n
\r\n

{{'APPLICATION_NUMBER'| translate}}

\r\n
\r\n

{{ challanPrintData?.AppId }}

\r\n
\r\n

{{'BENEFICIARY_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryName }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'PAYMENT_DETAILS'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'BENEFICIARY_ACCOUNT_NO'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryAccountNo }}

\r\n
\r\n

{{'BANK_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BankName }}

\r\n
\r\n

{{'BRANCH_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BranchName }}

\r\n
\r\n

{{'IFSC_CODE'| translate}}

\r\n
\r\n

{{ challanPrintData?.IFSCCODE }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDeposted }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED_IN_WORDS'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDepostedInWords }}

\r\n
\r\n
\r\n
{{'DEPOSIT_DATE'| translate}}
\r\n
{{'SIGN_OF_DEPOSITOR'| translate}}
\r\n
\r\n
{{'BANK_RECEIVING_STAMP'| translate}}
\r\n\r\n
\r\n
\r\n\r\n \r\n
\r\n
{{'NOTE'| translate}}{{'PLEASE_DONT_MAKE_A_COPY_OF_CHALLAN'| translate}}\r\n
\r\n
{{'YOU_CAN_PAY_AT_ANY_BRANCH'| translate}}\r\n
\r\n
{{'CHALLAN_PAYMENT_NOTE'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { first } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ChallanService } from '../../../../services/challan-services.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-full-payment',\r\n templateUrl: './full-payment.component.html',\r\n styleUrls: ['./full-payment.component.scss']\r\n})\r\nexport class FullPaymentComponent implements OnInit {\r\n\r\n public fullPaymentForm: FormGroup;\r\n public isSubmitted: boolean = false;\r\n filteredProgramme: any = [];\r\n filteredModeOfPayment: any = [];\r\n programmeData: any;\r\n paymentDate: any;\r\n modeOfPaymentData: any;\r\n amount: any;\r\n referenceNo: any;\r\n accountNo: any;\r\n paymentCheckBox: any;\r\n public isReference: boolean = true;\r\n\r\n\r\n public appId: any;\r\n public programId: any;\r\n\r\n public todayDate: Date;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private challanMIService: ChallanService,\r\n private messageService: MessageService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.appId = this.route.snapshot.params.id;\r\n this.programId = this.route.snapshot.params.pId;\r\n console.log('iddd', this.route.snapshot.params.id);\r\n\r\n this.fullPaymentForm = this.fb.group({\r\n paymentDate: ['', Validators.required],\r\n modeOfPayment: ['', Validators.required],\r\n amount: ['', Validators.required],\r\n referenceNumber: [''],\r\n accountNumber: ['', Validators.required],\r\n })\r\n this.todayDate = new Date();\r\n console.log(this.todayDate, 'todayDate')\r\n }\r\n\r\n get f() {\r\n return this.fullPaymentForm.controls;\r\n }\r\n\r\n\r\n modeOfPayment: any = [\r\n {\r\n mode: \"Cash\",\r\n id: 1\r\n },\r\n {\r\n mode: \"Online\",\r\n id: 2\r\n },\r\n {\r\n mode: \"RTGS\",\r\n id: 3\r\n },\r\n {\r\n mode: \"NEFT\",\r\n id: 4\r\n }\r\n ]\r\n\r\n // filterProgramme(event: any) {\r\n // const filtered: any[] = [];\r\n // const query = event.query;\r\n // for (let i = 0; i < this.selectProgramme.length; i++) {\r\n // const selectProgramme = this.selectProgramme[i];\r\n // if (selectProgramme.program.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n // filtered.push(selectProgramme);\r\n // }\r\n // }\r\n // this.filteredProgramme = filtered;\r\n // }\r\n\r\n filterModeOfPayment(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.modeOfPayment.length; i++) {\r\n const modeOfPayment = this.modeOfPayment[i];\r\n if (modeOfPayment.mode.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(modeOfPayment);\r\n }\r\n }\r\n this.filteredModeOfPayment = filtered;\r\n }\r\n\r\n change(){\r\n if(this.modeOfPaymentData?.mode == \"Cash\"){\r\n this.isReference = false;\r\n // this.fullPaymentForm.get('referenceNumber').clearAsyncValidators();\r\n // this.fullPaymentForm.get('referenceNumber').updateValueAndValidity;\r\n }else{\r\n this.isReference = true;\r\n // this.fullPaymentForm.get('referenceNumber').setValidators([Validators.required]);\r\n // this.fullPaymentForm.get('referenceNumber').updateValueAndValidity;\r\n }\r\n }\r\n\r\n submitPaymentDetails() {\r\n console.log(this.paymentCheckBox, \"paymentCheckBox\");\r\n console.log(this.fullPaymentForm.value, \"form value\");\r\n if(this.fullPaymentForm.valid && this.paymentCheckBox){\r\n console.log(this.fullPaymentForm.value, \"form value\");\r\n let val = this.fullPaymentForm.value;\r\n\r\n const finalData = {\r\n appId: this.appId,\r\n virtualID: this.isReference == true ? val?.referenceNumber : 'Cash',\r\n // virtualID: val?.referenceNumber,\r\n amountPaid: val.amount,\r\n paymentMode: val.modeOfPayment.mode,\r\n accountNo: JSON.stringify(val.accountNumber),\r\n paymentDate: val.paymentDate,\r\n progId: parseInt(this.programId)\r\n }\r\n\r\n const reqBody = finalData;\r\n this.insertChallanData(reqBody);\r\n }\r\n else{\r\n this.isSubmitted = true;\r\n console.log(\"Invalid Form\");\r\n }\r\n }\r\n\r\n insertChallanData(reqBody){\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n this.loader.start();\r\n this.challanMIService\r\n .insertChallanData(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n \r\n this.activityRecordService.activityRecord(mobile, 'Full Payment Challan Data Inserted', reqBody?.appId, new Date(), 'Success');\r\n this.loader.close();\r\n if(data.startsWith(\"S\")){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n\r\n this.fullPaymentForm.reset();\r\n this.router.navigateByUrl('farmer/challan/mi-challan');\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'Full Payment Challan Data Inserted', reqBody?.appId, new Date(), err);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Added',\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Added Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n\r\n
{{'PAYMENT_DETAILS'| translate}}
\r\n\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
{{'PAYMENT_DATE_REQ'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MODE_OF_PAYMENT_REQ'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AMOUNT_REQ'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'REFERENCE_REQ'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'ACCOUNT_NO_REQ'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'CLICK_THE_CHECKBOX'| translate}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { ChallanService } from 'src/app/services/challan-services.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-mi-challan',\r\n templateUrl: './mi-challan.component.html',\r\n styleUrls: ['./mi-challan.component.scss']\r\n})\r\nexport class MiChallanComponent implements OnInit {\r\n\r\n public filteredAppId: any;\r\n public farmerMobile: any;\r\n public farmerId: any;\r\n public farmerAppDetails: any;\r\n public selectedAppId: any;\r\n public selectedFarmerDeatils: any;\r\n public famerAppDetailsforDropDown: any = [];\r\n \r\n constructor(\r\n public router: Router,\r\n public dashboard: DashboardService,\r\n public productService: BankDetailService, \r\n public challanMIService: ChallanService,\r\n private messageService: MessageService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n this.farmerMobile = farmerConfData.get('farmerPh');\r\n \r\n let farmerData = farmerConfData.get('farmerDetails');\r\n let farmerId = farmerData?.['Farmer_ID'];\r\n\r\n this.getApplicationIdsForChallan(farmerId)\r\n }\r\n\r\n getApplicationIdsForChallan(farmerId) {\r\n let mobile = this.farmerMobile\r\n this.loader.start();\r\n this.challanMIService\r\n .getApplicationIdsForChallan(farmerId,'Challan')\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.activityRecordService.activityRecord(mobile, 'MI Challan', farmerId, new Date(), 'Success');\r\n \r\n this.farmerAppDetails = res;\r\n this.loader.close();\r\n // this.farmerAppDetails.map(val => {\r\n // this.famerAppDetailsforDropDown.push({ \r\n // AppId: val.AppId.concat(\" (\" ,val.ProgramId, \")\"),\r\n // ProgramId: val.ProgramId,\r\n // ChallanStatus: val.ChallanStatus\r\n // })\r\n // })\r\n if (this.farmerAppDetails.length > 0) {\r\n this.famerAppDetailsforDropDown = this.farmerAppDetails.map(res => {\r\n return {\r\n appIdToDisplay: res.AppId + ' ('+ res.ProgrammeName + ')',\r\n ...res\r\n }\r\n })\r\n }\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'MI Challan', farmerId, new Date(), err);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onFarmerShareClick(){\r\n this.router.navigate([`farmer/challan/farmer-share/${this.selectedAppId.AppId}/${this.selectedAppId.ProgID}`]);\r\n }\r\n\r\n onFullPaymentClick(){\r\n this.router.navigate([`farmer/challan/full-payment/${this.selectedAppId.AppId}/${this.selectedAppId.ProgID}`]);\r\n }\r\n\r\n onSanctionLetterClick(){\r\n this.router.navigate([`farmer/challan/sanction-letter/${this.selectedAppId.AppId}/${this.selectedAppId.ProgID}`]);\r\n }\r\n\r\n onSelectAppId(){\r\n this.selectedAppId = this.selectedFarmerDeatils;\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n

{{'MI_CHALLAN'| translate}}

\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ChallanService } from 'src/app/services/challan-services.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-sanction-letter',\r\n templateUrl: './sanction-letter.component.html',\r\n styleUrls: ['./sanction-letter.component.scss']\r\n})\r\nexport class SanctionLetterComponent implements OnInit {\r\n\r\n public sanctionLetterData: any;\r\n public appId: any;\r\n public progID: any;\r\n public sanctionLetterDataForTable: any[];\r\n\r\n public isPrintClicked: boolean = false;\r\n \r\n constructor(\r\n private challanMIService: ChallanService,\r\n private messageService: MessageService,\r\n private route : ActivatedRoute,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.appId = this.route.snapshot.params.id;\r\n this.progID = this.route.snapshot.params.programId;\r\n this.getSanctionLetterData(this.appId, this.progID);\r\n }\r\n\r\n getSanctionLetterData(appId, progID) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n this.loader.start();\r\n this.challanMIService\r\n .getSanctionLetterData(appId, progID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.activityRecordService.activityRecord(mobile, 'Sanction Letter', appId, new Date(), 'Success');\r\n\r\n this.sanctionLetterDataForTable = [res];\r\n this.sanctionLetterData = res;\r\n this.loader.close();\r\n console.log(\"sanctionLetterData\", this.sanctionLetterData);\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'Sanction Letter', appId, new Date(), err);\r\n this.loader.close();\r\n console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n \r\n onPrint(divName){\r\n this.isPrintClicked = true;\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML; \r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n document.body.style.visibility=\"hidden\";\r\n document.getElementById(divName).style.visibility='visible'\r\n window.print();\r\n document.body.style.visibility=\"visible\";\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'SANCTION_LETTER_HEADER'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_2022'| translate}}\r\n \r\n
\r\n
\r\n\r\n
{{'SANCTION_LETTER_CONTENT'| translate}}\r\n {{ sanctionLetterData?.FarmerName }} {{'S/O'| translate}}{{\r\n sanctionLetterData?.FatherName }}{{'VILLAGE'| translate}} {{ sanctionLetterData?.Village }} {{'DISTRICT'| translate}}\r\n {{ sanctionLetterData?.District }} {{'SANCTION_IS_HEREBY_ACCORDED_WITH_FOLLOWING_DETAILS'| translate}}\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'APPLICATION_ID'| translate}}

\r\n

{{ product?.AppID}}

\r\n
\r\n

{{'AREA_IN_ACRE'| translate}}

\r\n

{{ product?.Area}}

\r\n
\r\n

{{'KHASRA_NO'| translate}}

\r\n

{{ product?.KhasraAndKillaNo}}

\r\n
\r\n

{{'CROP'| translate}}

\r\n

{{ product?.CropName}}

\r\n
\r\n

{{'SPACING'| translate}}

\r\n

{{ product?.Spacing}}

\r\n
\r\n

{{'TYPE_OF_MIS'| translate}}

\r\n

{{ product?.TypeOfMIS}}

\r\n
\r\n

{{'ESTIMATED_COST_OF_SYSTEMS'| translate}}

\r\n

{{ product?.EstimatedCost}}

\r\n
\r\n

{{'ESTIMATED_FARMER_SHARE'| translate}}

\r\n

{{ product?.EstimatedFarmerShare}}

\r\n
\r\n

{{'SUBSIDY_SHARE_AS_PER_SCHEME'| translate}}

\r\n

{{ product?.SubsidyShare}}

\r\n
\r\n

{{'FARMER_TYPE'| translate}}

\r\n

{{ product?.FarmerType}}

\r\n
\r\n

{{'CATEGORY'| translate}}

\r\n

{{ product?.Category}}

\r\n
\r\n

{{'AMOUNT_OF_FARMER_SHARE'| translate}}: {{ sanctionLetterData?.EstimatedFarmerShare }}

\r\n
\r\n
\r\n\r\n\r\n
\r\n
{{'BANK_ACCOUNT_DETAILS'| translate}}
\r\n\r\n
\r\n

{{'NAME_OF_FARMER_AS_IN_BANK_ACCOUNT'| translate}}: {{ sanctionLetterData?.NameOfFarmerAsOnBankAcc }}

\r\n

{{'NAME_OF_BANK'| translate}}: {{ sanctionLetterData?.NameOfBank }}

\r\n

{{'IFSC_CODE'| translate}}: {{ sanctionLetterData?.IFSCCode }}

\r\n

{{'ACCOUNT_NUMBER'| translate}}: {{ sanctionLetterData?.AccountNo }}

\r\n

{{'BRANCH_NAME'| translate}}: {{ sanctionLetterData?.BranchName }}

\r\n
\r\n\r\n
\r\n

To

\r\n
\r\n

{{'SRI/SMT'| translate}}, {{ sanctionLetterData?.FarmerName }}{{'S/O'| translate}} {{ sanctionLetterData?.FatherName\r\n }}{{'VILLAGE'| translate}} {{ sanctionLetterData?.Village }}{{'DISTRICT'| translate}} {{\r\n sanctionLetterData?.District }}

\r\n

{{'REGISTERED_MANUFACTURER/SUPPLIER.M/S'| translate}} {{ sanctionLetterData?.VendorName }}

\r\n

{{'DISTRICT_OFFICER_INCHARGE_OF_MI'| translate}} {{ sanctionLetterData?.XENName }}(XEN {{ sanctionLetterData?.XENDistrict }})

\r\n
\r\n
\r\n
\r\n
\r\n

{{'SANCTION_LETTER_NOTE_PART1'| translate}}
\r\n                  \r\n {{'SANCTION_LETTER_NOTE_PART2'| translate}} \r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { ChallanService } from 'src/app/services/challan-services.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-sanction-letter-component',\r\n templateUrl: './sanction-letter-component.component.html',\r\n styleUrls: ['./sanction-letter-component.component.scss']\r\n})\r\nexport class SanctionLetterComponentComponent implements OnInit {\r\n public filteredAppId: any;\r\n public farmerMobile: any;\r\n public farmerId: any;\r\n public farmerAppDetails: any;\r\n public selectedAppId: any;\r\n public selectedFarmerDeatils: any;\r\n public famerAppDetailsforDropDown: any = [];\r\n \r\n constructor(\r\n public router: Router,\r\n public dashboard: DashboardService,\r\n public productService: BankDetailService, \r\n public challanMIService: ChallanService,\r\n private messageService: MessageService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n this.farmerMobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n let farmerId = farmerData?.['Farmer_ID'];\r\n\r\n this.getApplicationIdsForChallan(farmerId)\r\n }\r\n getApplicationIdsForChallan(farmerId) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : '';\r\n\r\n this.loader.start();\r\n this.challanMIService\r\n .getApplicationIdsForChallan(farmerId,'SanctionLetter')\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.activityRecordService.activityRecord(mobile, 'MI Challan', farmerId, new Date(), 'Success');\r\n \r\n this.farmerAppDetails = res;\r\n this.loader.close();\r\n // this.farmerAppDetails.map(val => {\r\n // this.famerAppDetailsforDropDown.push({ \r\n // AppId: val.AppId.concat(\" (\" ,val.ProgramId, \")\"),\r\n // ProgramId: val.ProgramId,\r\n // ChallanStatus: val.ChallanStatus\r\n // })\r\n // })\r\n if (this.farmerAppDetails.length > 0) {\r\n this.famerAppDetailsforDropDown = this.farmerAppDetails.map(res => {\r\n return {\r\n appIdToDisplay: res.AppId + ' ('+ res.ProgrammeName + ')',\r\n ...res\r\n }\r\n })\r\n }\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'MI Challan', farmerId, new Date(), err);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onFarmerShareClick(){\r\n this.router.navigate([`farmer/challan/farmer-share/${this.selectedAppId.AppId}/${this.selectedAppId.ProgID}`]);\r\n }\r\n\r\n onFullPaymentClick(){\r\n this.router.navigate([`farmer/challan/full-payment/${this.selectedAppId.AppId}/${this.selectedAppId.ProgID}`]);\r\n }\r\n\r\n onSanctionLetterClick(){\r\n this.router.navigate([`farmer/sanction/sanction-letter/${this.selectedAppId.AppId}/${this.selectedAppId.ProgID}`]);\r\n }\r\n\r\n onSelectAppId(){\r\n this.selectedAppId = this.selectedFarmerDeatils;\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n

{{'SANCTION_LETTER_'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { ChallanService } from 'src/app/services/challan-services.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\n\r\n@Component({\r\n selector: 'app-solar-challan',\r\n templateUrl: './solar-challan.component.html',\r\n styleUrls: ['./solar-challan.component.scss']\r\n})\r\nexport class SolarChallanComponent implements OnInit {\r\n public farmerId: any;\r\n public farmerMobile: any;\r\n public farmerAppDetails: any;\r\n public selectedFarmerDeatils: any;\r\n public selectedAppId: any;\r\n\r\n public filteredAppId: any;\r\n public dataRecieved: boolean = false;\r\n public challanData: any;\r\n\r\n public currentDate: Date;\r\n public solarApplicatonForm: FormGroup;\r\n\r\n public pumpCapacityList: any;\r\n public solarMasterData: any = [];\r\n public primarySolarVendorList = [];\r\n public selectedPrimarySolarVendor: any;\r\n public selectedSecondarySolarVendor: any;\r\n public selectedSecondarySolarVendorId: any;\r\n public secondarySolarVendorList = [];\r\n\r\n public isSubmittedWaterCourseFrom: boolean = false;\r\n public isSubmittedPondApplicatonForm: boolean = false;\r\n public isSubmittedSolarApplicatonFrom: boolean = false;\r\n\r\n public landIDList: any;\r\n public solarPumpDetail: any = null;\r\n\r\n public isUpdateButtonDisabled = false;\r\n\r\n\r\n\r\n constructor(\r\n public dashboard: DashboardService,\r\n public productService: BankDetailService,\r\n private challanMIService: ChallanService,\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private _fb: FormBuilder,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n this.farmerMobile = farmerConfData.get('farmerPh');\r\n\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n\r\n this.getApplicationIdsForSolarChallan(this.farmerId);\r\n\r\n this.solarApplicatonForm = this._fb.group({\r\n controlType: ['', Validators.required],\r\n pump: ['', Validators.required],\r\n pumpType: ['', Validators.required],\r\n pumpCapacity: ['', Validators.required],\r\n primaryVendor: ['', Validators.required],\r\n secondaryVendor: [''],\r\n farmerShare: [''],\r\n solarId: ['', Validators.required],\r\n landId: ['', Validators.required],\r\n });\r\n\r\n this.getSolarMaster();\r\n }\r\n\r\n get solarApplicatonFormControls() {\r\n return this.solarApplicatonForm.controls;\r\n }\r\n\r\n onSolarLandIdSelected(event) { }\r\n\r\n onVendorSelect(event) { }\r\n\r\n validateAndGetSolarVendors() {\r\n if (\r\n this.solarApplicatonForm.controls.controlType.value &&\r\n this.solarApplicatonForm.controls.pump.value &&\r\n this.solarApplicatonForm.controls.pumpType.value\r\n ) {\r\n this.getPumpCapacityList(this.solarApplicatonForm.controls.controlType.value, this.solarApplicatonForm.controls.pumpType.value,\r\n this.solarApplicatonForm.controls.pump.value);\r\n }\r\n\r\n if (\r\n this.solarApplicatonForm.controls.controlType.value &&\r\n this.solarApplicatonForm.controls.pump.value &&\r\n this.solarApplicatonForm.controls.pumpType.value &&\r\n this.solarApplicatonForm.controls.pumpCapacity.value\r\n ) {\r\n this.getPrimarySolarVendors();\r\n }\r\n }\r\n\r\n getPumpCapacityList(PumpContType, PumpCategory, PumpType) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getPumpCapacityList(PumpContType, PumpCategory, PumpType)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.pumpCapacityList = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n },\r\n });\r\n }\r\n\r\n getPrimarySolarVendors() {\r\n this.primarySolarVendorList = [];\r\n\r\n let solarMasteredFilteredData = this.getFarmerShare();\r\n if (solarMasteredFilteredData) {\r\n this.solarApplicatonForm.patchValue({\r\n farmerShare: solarMasteredFilteredData.Farmers_Share,\r\n });\r\n this.solarApplicatonForm.patchValue({\r\n solarId: solarMasteredFilteredData.Solar_ID,\r\n });\r\n\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getPrimarySolarVendors(solarMasteredFilteredData.Solar_ID)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.primarySolarVendorList = data;\r\n if (this.selectedAppId) {\r\n this.onPrimarySolarVendorChange({\r\n value: this.selectedPrimarySolarVendor,\r\n });\r\n }\r\n\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n },\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Solar ID Not Found For selected Combination',\r\n });\r\n }\r\n }\r\n\r\n onPrimarySolarVendorChange(event) {\r\n this.selectedPrimarySolarVendor = event.value;\r\n let solarMasteredFilteredData = this.getFarmerShare();\r\n let selectedPrimaryVendor = this.primarySolarVendorList.filter(vendor => {\r\n return vendor.Primary_Vendor === event.value\r\n })\r\n this.secondarySolarVendorList = [];\r\n this.selectedSecondarySolarVendor = null;\r\n if (selectedPrimaryVendor.length) {\r\n this.getSecondarySolarVendors(selectedPrimaryVendor[0].pid);\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'PID value is unknown for Selcted Primary Vendor, Hence Secondary Vendor is not known',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n getSecondarySolarVendors(solarId: any) {\r\n this.loader.start();\r\n this.farmerAppSer.getSecondarySolarVendors(solarId).subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.secondarySolarVendorList = data;\r\n this.selectedSecondarySolarVendor = this.solarPumpDetail?.Secondary_Vendor;\r\n this.selectedSecondarySolarVendorId = this.solarPumpDetail?.Solar_Vendor_Secondry_ID;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n },\r\n });\r\n }\r\n\r\n onCapacityOfPumpSelected(event) {\r\n if (!this.solarApplicatonForm.controls.controlType.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - controlType Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pump.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pump Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pumpType.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pumpType Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pumpCapacity.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pumpCapacity Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.landId.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - landId Cant be Empty',\r\n });\r\n }\r\n\r\n this.validateAndGetSolarVendors();\r\n }\r\n\r\n\r\n onSecondarySolarVendorChange(event) {\r\n this.selectedSecondarySolarVendor = event.value;\r\n let selectedSolarVendor = this.secondarySolarVendorList.filter((x) => {\r\n return x.Secondary_Vendor === this.selectedSecondarySolarVendor;\r\n });\r\n this.selectedSecondarySolarVendorId = selectedSolarVendor[0].sid;\r\n }\r\n\r\n getSolarMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getSolarMaster().subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.solarMasterData = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n },\r\n });\r\n }\r\n\r\n\r\n getFarmerShare() {\r\n return this.solarMasterData.filter(\r\n (d: any) =>\r\n d.Pump_Controler_Type ===\r\n this.solarApplicatonForm.value['controlType'] &&\r\n d.Pump_Capacity === this.solarApplicatonForm.value['pumpCapacity'] &&\r\n d.Pump_Category === this.solarApplicatonForm.value['pumpType'] &&\r\n d.Pump_Type === this.solarApplicatonForm.value['pump']\r\n )[0];\r\n }\r\n\r\n getApplicationIdsForSolarChallan(farmerId) {\r\n let mobile = this.farmerMobile;\r\n this.loader.start();\r\n this.challanMIService\r\n .getApplicationIdsForSolarChallan(farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.activityRecordService.activityRecord(mobile, 'Solar Challan', farmerId, new Date(), 'Success');\r\n\r\n this.farmerAppDetails = res;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'Solar Challan', farmerId, new Date(), err);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectAppId() {\r\n this.isUpdateButtonDisabled = false;\r\n this.selectedAppId = this.selectedFarmerDeatils;\r\n\r\n this.getSolarChallan(this.selectedAppId);\r\n this.getFarmerSolarDetails(this.selectedAppId);\r\n }\r\n\r\n getSolarChallan(id) {\r\n let mobile = this.farmerMobile;\r\n this.loader.start();\r\n this.challanMIService\r\n .getSolarChallan(id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(mobile, 'Solar Challan Details', id, new Date(), 'Success');\r\n\r\n this.challanData = data;\r\n this.loader.close();\r\n this.currentDate = new Date();\r\n this.dataRecieved = true;\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'Solar Challan Details', id, new Date(), err);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Challan not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getFarmerSolarDetails(id) {\r\n let mobile = this.farmerMobile;\r\n this.loader.start();\r\n this.challanMIService\r\n .getFarmerSolarDetails(id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(mobile, 'Farmer Solar Details', id, new Date(), 'Success');\r\n this.loader.close();\r\n this.solarPumpDetail = data?.Table[0];\r\n if (this.solarPumpDetail) {\r\n let val = this.solarPumpDetail;\r\n this.landIDList = [val?.LandDetails]\r\n this.solarApplicatonForm.controls.landId.setValue(val?.LandDetails);\r\n this.solarApplicatonForm.controls.controlType.setValue(val?.Pump_Controler_Type);\r\n this.solarApplicatonForm.controls.pump.setValue(val?.Pump_Type);\r\n this.solarApplicatonForm.controls.pumpType.setValue(val?.Pump_Category);\r\n this.solarApplicatonForm.controls.pumpCapacity.setValue(val?.Pump_Capacity);\r\n this.validateAndGetSolarVendors();\r\n\r\n this.selectedPrimarySolarVendor = val?.Primary_Vendor;\r\n this.selectedSecondarySolarVendor = val?.Secondary_Vendor;\r\n\r\n this.solarApplicatonForm.controls.farmerShare.setValue(val?.Farmers_Share);\r\n }\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(mobile, 'Farmer Solar Details', id, new Date(), err);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Solar Details.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSolarFormUpdate(){\r\n if(this.solarApplicatonForm.valid){\r\n if(this.selectedPrimarySolarVendor == undefined || this.selectedSecondarySolarVendor == undefined){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Fill the Vendor Details properly',\r\n });\r\n return;\r\n }\r\n let selectedPrimarySolarVendor = this.primarySolarVendorList.filter(\r\n (x) => {\r\n return x.Primary_Vendor === this.selectedPrimarySolarVendor;\r\n }\r\n );\r\n let selectedSecondarySolarVendor = this.secondarySolarVendorList.filter(\r\n (x) => {\r\n return x.Secondary_Vendor === this.selectedSecondarySolarVendor;\r\n }\r\n );\r\n let selectedSolarId = this.pumpCapacityList.filter(\r\n (x) => {\r\n return x.Pump_Capacity === this.solarApplicatonForm.value.pumpCapacity;\r\n }\r\n );\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress') ? farmerConfData.get('ipAddress') : ''\r\n \r\n let reqBody = {\r\n appId: this.solarPumpDetail?.APP_ID,\r\n solarId: selectedSolarId[0]?.Solar_ID,\r\n solarVendorId: selectedPrimarySolarVendor[0]?.pid,\r\n solarVendorSecId: selectedSecondarySolarVendor[0]?.sid,\r\n netWork_Id: ipAddress,\r\n terminal_Id: ipAddress\r\n }\r\n this.updateFarmerSolarDetails(reqBody);\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Fill the deatils properly',\r\n });\r\n }\r\n\r\n \r\n }\r\n\r\n updateFarmerSolarDetails(reqBody) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .updateFarmerSolarDetails(reqBody)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.getSolarChallan(this.selectedAppId);\r\n this.isUpdateButtonDisabled = true;\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Farmer Solar Details Updated Successfully',\r\n });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onPrint(divName) {\r\n document.body.style.visibility = \"hidden\";\r\n document.getElementById(divName).style.visibility = 'visible'\r\n document.getElementById('select_app_solor_card').style.display = 'none'\r\n window.print();\r\n document.getElementById('select_app_solor_card').style.display = 'block'\r\n document.body.style.visibility = \"visible\";\r\n }\r\n}\r\n","\r\n
\r\n
\r\n

As instructed by HAREDA department generation of challans has been stopped till further notification.

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'SOLAR_CHALLAN'| translate}}

\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
{{'SOLAR_PUMP_DETAIL'| translate}}
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LAND_ID_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
{{ currentDate | date : 'medium'}}
\r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'MICADA'| translate}}\r\n
\r\n \r\n {{'HARYANA'| translate}}
\r\n\r\n \r\n {{'FINANCIAL_YEAR_2022-23'| translate}}\r\n \r\n
\r\n
\r\n
\r\n

{{'CHALLAN_FOR_PAYMENT_OF_DUE_DATE'| translate}}

\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n

{{'DEPARTMENT_NAME'| translate}}:

\r\n
\r\n

{{ challanData?.DepartmentName }}

\r\n
\r\n

{{'SERVICE_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.ServiceName }}

\r\n
\r\n

{{'APPLICANT_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.Name }}

\r\n
\r\n

{{'MICADA_APPLICATION_ID'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.AppID }}

\r\n
\r\n

{{'APPLICATION_SARAIL_ID'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.ApplicantSarailId }}

\r\n
\r\n

{{'APPLICANT_FATHER_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.FatherName }}

\r\n
\r\n

{{'APPLICANT_ADDRESS'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.Address }}

\r\n
\r\n

{{'APPLICANT_MOBILE_NO'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.Address }}

\r\n
\r\n

{{'DISTRICT_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.District }}

\r\n
\r\n

{{'TYPE_OF_PUMP'| translate}}\r\n

\r\n
\r\n

{{ challanData?.PumpType }}

\r\n
\r\n

{{'PRIMARY_VENDOR'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.PrimaryVendor }}

\r\n
\r\n

{{'SECONDARY_VENDOR'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.SecondaryVendor }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED'| translate}}:\r\n\r\n

\r\n
\r\n

{{ challanData?.FarmerShare }}

\r\n
\r\n

{{'IDBI_ACCOUNT_NUMBER'| translate}}:\r\n\r\n

\r\n
\r\n

{{ challanData?.IDBIBankAccNo }}

\r\n
\r\n

{{'IFSC_CODE_FOR_NEFT/RTGS_TRANSFER'| translate}}:\r\n\r\n\r\n

\r\n
\r\n

{{ challanData?.IFCSForTransfer }}

\r\n
\r\n

{{'ACCOUNT_HOLDER_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.AccHolderName }}

\r\n
\r\n

{{'DATE_OF_CHALLAN'| translate}}:\r\n\r\n

\r\n
\r\n

{{ challanData?.DateOfChallan }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'FOR_BANK_USE'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'TRANSACTION_NUMBER'| translate}}\r\n\r\n

\r\n
\r\n

\r\n
\r\n

{{'TRANSACTION_DATE_SIGN_STAMP'| translate}}\r\n

\r\n
\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'INSTRUCTIONS_FOR_FARMER'| translate}}

\r\n
\r\n
    \r\n
  1. {{'INSTRUCTION_FOR_FARMER_DATA'| translate}}\r\n
  2. \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
{{ currentDate | date : 'medium'}}
\r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'MICADA'| translate}}\r\n
\r\n \r\n {{'HARYANA'| translate}}
\r\n\r\n \r\n {{'FINANCIAL_YEAR_2022-23'| translate}}3\r\n \r\n
\r\n
\r\n
\r\n

{{'CHALLAN_PAYMENT_DUE_AMOUNT_CUSTOMER_COPY'| translate}}

\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n

{{'DEPARTMENT_NAME'| translate}}:

\r\n
\r\n

{{ challanData?.DepartmentName }}

\r\n
\r\n

{{'SERVICE_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.ServiceName }}

\r\n
\r\n

{{'APPLICANT_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.Name }}

\r\n
\r\n

{{'MICADA_APPLICATION_ID'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.AppID }}

\r\n
\r\n

{{'APPLICATION_SARAIL_ID'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.ApplicantSarailId }}

\r\n
\r\n

{{'APPLICANT_FATHER_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.FatherName }}

\r\n
\r\n

{{'APPLICANT_ADDRESS'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.Address }}

\r\n
\r\n

{{'APPLICANT_MOBILE_NO'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.Address }}

\r\n
\r\n

{{'DISTRICT_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.District }}

\r\n
\r\n

{{'TYPE_OF_PUMP'| translate}}\r\n

\r\n
\r\n

{{ challanData?.PumpType }}

\r\n
\r\n

{{'PRIMARY_VENDOR'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.PrimaryVendor }}

\r\n
\r\n

{{'SECONDARY_VENDOR'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.SecondaryVendor }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED'| translate}}:\r\n\r\n

\r\n
\r\n

{{ challanData?.FarmerShare }}

\r\n
\r\n

{{'IDBI_ACCOUNT_NUMBER'| translate}}:\r\n\r\n

\r\n
\r\n

{{ challanData?.IDBIBankAccNo }}

\r\n
\r\n

{{'IFSC_CODE_FOR_NEFT/RTGS_TRANSFER'| translate}}:\r\n\r\n\r\n

\r\n
\r\n

{{ challanData?.IFCSForTransfer }}

\r\n
\r\n

{{'ACCOUNT_HOLDER_NAME'| translate}}:\r\n

\r\n
\r\n

{{ challanData?.AccHolderName }}

\r\n
\r\n

{{'DATE_OF_CHALLAN'| translate}}:\r\n\r\n

\r\n
\r\n

{{ challanData?.DateOfChallan }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'FOR_BANK_USE'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'TRANSACTION_NUMBER'| translate}}\r\n\r\n

\r\n
\r\n

\r\n
\r\n

{{'TRANSACTION_DATE_SIGN_STAMP'| translate}}\r\n

\r\n
\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'INSTRUCTIONS_FOR_FARMER'| translate}}

\r\n
\r\n
    \r\n
  1. {{'INSTRUCTION_FOR_FARMER_DATA'| translate}}\r\n
  2. \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { forkJoin } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-contractor-dashboard',\r\n templateUrl: './contractor-dashboard.component.html',\r\n styleUrls: ['./contractor-dashboard.component.scss'],\r\n})\r\nexport class ContractorDashboardComponent implements OnInit {\r\n // Data and options for Total Applied Area Chart\r\n public totalAreaChartData: any;\r\n public totalAreaChartOptions: any;\r\n\r\n // Data and options for Count of Applications Chart\r\n public countAppsChartData: any;\r\n public countAppsChartOptions: any;\r\n\r\n public miDistrictWiseData: any = [];\r\n public epcTableData: any = [];\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadAllData();\r\n }\r\n\r\n /**\r\n * Loads both MI District Wise Data and EPC Table Data simultaneously.\r\n */\r\n loadAllData() {\r\n this.loader.start();\r\n\r\n forkJoin({\r\n miData: this.reportsService.GetEPCReports(),\r\n epcData: this.reportsService.getEpcFullData(),\r\n }).subscribe({\r\n next: ({ miData, epcData }) => {\r\n this.loader.close();\r\n\r\n // Process MI District Wise Data\r\n if (miData?.length > 0) {\r\n this.miDistrictWiseData = miData;\r\n this.prepareTotalAreaChartData();\r\n } else {\r\n this.miDistrictWiseData = [];\r\n this.prepareTotalAreaChartData();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'No Data',\r\n detail: 'MI District Wise Data Not Available',\r\n });\r\n }\r\n\r\n // Process EPC Table Data\r\n if (Array.isArray(epcData)) {\r\n this.epcTableData = epcData;\r\n console.log('EPC Table Data:', this.epcTableData);\r\n } else {\r\n console.error('Expected an array but received:', epcData);\r\n this.epcTableData = [];\r\n }\r\n\r\n // Prepare Count of Applications Chart\r\n this.prepareCountAppsChartData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miDistrictWiseData = [];\r\n this.epcTableData = [];\r\n this.prepareTotalAreaChartData();\r\n this.prepareCountAppsChartData();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Failed to load data.',\r\n });\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Prepares data and options for the Total Applied Area Chart.\r\n */\r\n prepareTotalAreaChartData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n // Mapping districts and total area applied (null values handled explicitly)\r\n const districts = this.miDistrictWiseData.map((item) => item.DistrictName || item.Outlets);\r\n const totalAreaApplied = this.miDistrictWiseData.map((item) => item.Total_Area_Applied !== null ? item.Total_Area_Applied : 0); // Explicitly handle null values\r\n\r\n this.totalAreaChartData = {\r\n labels: districts,\r\n datasets: [\r\n {\r\n label: 'Total Area Applied',\r\n backgroundColor: '#42A5F5',\r\n data: totalAreaApplied, // Use the mapped total area data\r\n }\r\n ]\r\n };\r\n\r\n // this.totalAreaChartOptions = {\r\n // maintainAspectRatio: false,\r\n // aspectRatio: 0.8,\r\n // plugins: {\r\n // datalabels: {\r\n // anchor: 'end',\r\n // align: 'end',\r\n // color: 'black',\r\n // offset: -7,\r\n // font: {\r\n // weight: 'bold',\r\n // size: '10px'\r\n // },\r\n // },\r\n // legend: {\r\n // display: false // Hide the legend\r\n // },\r\n // tooltip: {\r\n // callbacks: {\r\n // label: function (tooltipItem) {\r\n // const index = tooltipItem.dataIndex;\r\n // return `${tooltipItem.dataset.label}: ${tooltipItem.raw}`;\r\n // }\r\n // }\r\n // }\r\n // },\r\n // scales: {\r\n // x: {\r\n // ticks: {\r\n // color: 'black',\r\n // font: {\r\n // weight: 'bold'\r\n // },\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // },\r\n // y: {\r\n // type: 'linear', // Use linear scale\r\n // ticks: {\r\n // min: 0,\r\n // // stepSize: 10,\r\n // color: textColor,\r\n // font: {\r\n // weight: 'bold',\r\n // color: 'black'\r\n // },\r\n // beginAtZero: true\r\n // },\r\n // grid: {\r\n // display: false,\r\n // }\r\n // },\r\n // }\r\n // };\r\n\r\n this.totalAreaChartOptions = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n legend: {\r\n display: true,\r\n labels: {\r\n color: textColor\r\n }\r\n },\r\n tooltip: {\r\n callbacks: {\r\n label: function (tooltipItem: any) {\r\n return `${tooltipItem.dataset.label}: ${tooltipItem.raw}`;\r\n }\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: textColor,\r\n font: {\r\n weight: 'bold'\r\n }\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // font: {\r\n // weight: 'bold'\r\n // },\r\n // beginAtZero: true // Ensure y-axis starts from 0\r\n // },\r\n // grid: {\r\n // color: surfaceBorder\r\n // }\r\n // }\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n min: 0,\r\n // stepSize: 10,\r\n color: textColor,\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n beginAtZero: true\r\n },\r\n grid: {\r\n display: false,\r\n }\r\n },\r\n }\r\n };\r\n }\r\n\r\n /**\r\n * Prepares data and options for the Count of Applications Chart.\r\n */\r\n prepareCountAppsChartData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n const districts = this.miDistrictWiseData.map((item) => item.DistrictName || item.Outlets);\r\n\r\n // Calculate count of applications per district\r\n const countApps = districts.map((district) => {\r\n return this.epcTableData.filter((app: any) => app.DistrictName === district).length;\r\n });\r\n\r\n this.countAppsChartData = {\r\n labels: districts,\r\n datasets: [\r\n {\r\n label: 'Count of Applications',\r\n backgroundColor: '#FF6384',\r\n data: countApps,\r\n }\r\n ]\r\n };\r\n\r\n\r\n this.countAppsChartOptions = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n legend: {\r\n display: true,\r\n labels: {\r\n color: textColor\r\n }\r\n },\r\n tooltip: {\r\n callbacks: {\r\n label: function (tooltipItem: any) {\r\n return `${tooltipItem.dataset.label}: ${tooltipItem.raw}`;\r\n }\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: textColor,\r\n font: {\r\n weight: 'bold'\r\n }\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // font: {\r\n // weight: 'bold'\r\n // },\r\n // beginAtZero: true // Ensure y-axis starts from 0\r\n // },\r\n // grid: {\r\n // color: surfaceBorder\r\n // }\r\n // }\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n min: 0,\r\n // stepSize: 10,\r\n color: textColor,\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n beginAtZero: true\r\n },\r\n grid: {\r\n display: false,\r\n }\r\n },\r\n }\r\n };\r\n\r\n // this.countAppsChartOptions = {\r\n // maintainAspectRatio: false,\r\n // aspectRatio: 0.8,\r\n // plugins: {\r\n // legend: {\r\n // display: true,\r\n // labels: {\r\n // color: textColor\r\n // }\r\n // },\r\n // tooltip: {\r\n // callbacks: {\r\n // label: function (tooltipItem: any) {\r\n // return `${tooltipItem.dataset.label}: ${tooltipItem.raw}`;\r\n // }\r\n // }\r\n // }\r\n // },\r\n // scales: {\r\n // x: {\r\n // ticks: {\r\n // color: textColor,\r\n // font: {\r\n // weight: 'bold'\r\n // }\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // font: {\r\n // weight: 'bold'\r\n // },\r\n // beginAtZero: true\r\n // },\r\n // grid: {\r\n // color: surfaceBorder\r\n // }\r\n // }\r\n // }\r\n // };\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
0\" class=\"card dashboardTable\" style=\"margin: 5px;\">\r\n \r\n \r\n \r\n {{ 'S_NO' | translate }}\r\n \r\n {{ 'APP_ID' | translate }}\r\n {{ 'NAME' | translate }}\r\n {{ 'FATHER_NAME' | translate }}\r\n {{ 'MOBILE_NO' | translate }}\r\n {{ 'MFMB_NO' | translate }}\r\n {{ 'PROGRAM_NAME' | translate }}\r\n {{ 'TOTAL_AREA' | translate }}\r\n {{ 'FARMER_CATEGORY' | translate }}\r\n {{ 'VILLAGE' | translate }}\r\n {{ 'SURVEY_STATUS' | translate }}\r\n {{ 'APPROVAL_STATUS' | translate }}\r\n \r\n \r\n \r\n \r\n {{ rowIndex + 1 }}\r\n {{ product.APP_ID }}\r\n {{ product.Name }}\r\n {{ product.Father_name }}\r\n {{ product.Mobile }}\r\n {{ product.MFMBNo }}\r\n {{ product.ProposedSystem }}\r\n {{ product.TotalArea }}\r\n {{ product.FarmerCategory1 }}\r\n {{ product.Village }}\r\n \r\n {{ product.SurveyStatus === 1 ? 'Approved' : 'Pending' }}\r\n \r\n \r\n {{ product.ApprovalStatus === 1 ? 'Approved' : 'Pending' }}\r\n \r\n \r\n \r\n \r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, HostListener, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { crop_Datas } from 'src/app/models/farmer-land.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport * as XLSX from 'xlsx';\r\n\r\ninterface UploadEvent {\r\n originalEvent: Event;\r\n files: File[];\r\n}\r\n\r\n@Component({\r\n selector: 'app-new-work',\r\n templateUrl: './new-work.component.html',\r\n styleUrls: ['./new-work.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class NewWorkComponent implements OnInit {\r\n public outletMasterData: any;\r\n\r\n public selectedOutlet: any = null;\r\n public selectedOutletToGetData: any = null;\r\n public selectedBenefitedArea: any = null;\r\n public selectedBenefitedAreaToGetData: any = null;\r\n public agreementNo: any = null;\r\n public agreementNoToGetData: any = null;\r\n\r\n public ipAddress: any;\r\n public isSubmitted: boolean = false;\r\n public userId: any;\r\n public contractorId: any;\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n\r\n public xslxToJsonDataPersonal: any[] = [];\r\n public xslxToJsonDataLand: any[] = [];\r\n public xslxToJsonDataBank: any[] = [];\r\n public uploadFile: any;\r\n public personalDetailsCols: any[];\r\n public landDetailsCols: any[];\r\n public bankDetailsCols: any[];\r\n public showViewDocDialog: boolean = false;\r\n\r\n public personalDetailsForm: FormGroup;\r\n public updatePersonalDetailsForm: FormGroup;\r\n public addedPersonalData: any[] = [];\r\n public todayDate: Date;\r\n\r\n public filteredVillage: any[];\r\n public villageList: any;\r\n\r\n public isCasteCertificteOptional: boolean = false;\r\n public isCasteCertificateMandatory: boolean = false;\r\n\r\n public farmerLandForm: FormGroup;\r\n public cropMergeList: any;\r\n public nodes2: any[];\r\n public cropTypeList: any[];\r\n public submitted: boolean = false;\r\n public valRadio: boolean = false;\r\n selectedNodes1: any[] = [];\r\n selectedCorpModelList: any;\r\n selectedCorpModel: crop_Datas;\r\n blockSpace: RegExp = /^[^\\s,]([^,]*[^\\s,])?$/;\r\n\r\n public addedLandData: any = [];\r\n\r\n public landDocArray: any = [];\r\n\r\n public uploadedlandFiles: any[] = [];\r\n public uploadedAadharFiles: any[] = [];\r\n public selectedcompMaster: any;\r\n // public selectedFarmerCategory: any;\r\n\r\n public contractorOutletList = [];\r\n public componentMasterList = [];\r\n public componentMasterListForEstimation = [];\r\n public farmerCategoryList = [];\r\n\r\n // public filteredComponentMaster: any[];\r\n\r\n public departmentList = [\r\n { name: 'Agriculture', code: 'Agriculture' },\r\n { name: 'Horticulture', code: 'Horticulture' },\r\n { name: 'MICADA 1.0', code: 'MICADA' },\r\n ];\r\n\r\n public yearArray: any = [];\r\n\r\n public innerWidth: number;\r\n public showSubsidyArea: boolean = false;\r\n public minDate: Date;\r\n public maxDate: Date;\r\n\r\n public addedFarmerData: any = [];\r\n\r\n public estimationDetailsForm: FormGroup;\r\n public filteredmiVendorList: any = [];\r\n public miVendorList: any = [];\r\n public category: any;\r\n public component: any;\r\n public sizePrice: any;\r\n // public enteredQuantity: any;\r\n public estimationTableData: any = [];\r\n\r\n expandedRows: any = {};\r\n\r\n public hideGetDataButton: boolean = false;\r\n public farmerPastSubsidyList: any = [];\r\n\r\n public totalPortableAreaCount: any = 0;\r\n public totalPortableCount: any = 0;\r\n public totalMiniAreaCount: any = 0;\r\n public totalMiniCount: any = 0;\r\n public totalDripAreaCount: any = 0;\r\n public totalDripCount: any = 0;\r\n\r\n public programWiseData: any = [];\r\n public agreementNoList: any = [];\r\n\r\n public showErrMsgOfInvArea: boolean = false;\r\n public invAreaMsg: any;\r\n\r\n public showUpdatePersonalDialog: boolean = false;\r\n\r\n public selectedApplicationNo: any;\r\n public selectedFarmerId: any;\r\n public loadedEstimateDatafromServer: any = [];\r\n\r\n public chunkList: any = [];\r\n public chunkIdToGetData: any;\r\n\r\n public selectedFarmerForEstimation: any = [];\r\n public consentCheckBox: any = [];\r\n\r\n public grandTotalCost: any = 0;\r\n public grandTotalQuantity: any = 0;\r\n\r\n constructor(\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private datePipe: DatePipe,\r\n private ipService: IpAddressService,\r\n private fb: FormBuilder,\r\n private flService: FarmerLandDetailService,\r\n private fApplicationService: FarmersApplicationService,\r\n private vendorService: VendorDashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event) {\r\n this.innerWidth = window.innerWidth;\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.todayDate = new Date();\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n this.contractorId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.getContractorOutletList(this.contractorId, 0, '');\r\n this.getIP();\r\n this.getCorpType();\r\n this.getFarmerCategoryList();\r\n this.getYearList();\r\n this.loadComponentMaster();\r\n\r\n this._personalDetalSer.getVillageMatserData().subscribe((res) => {\r\n // this.loader.close();\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList];\r\n\r\n // if (this.farmerData?.Village_Code) {\r\n // let village = this.villageList?.filter(val => val?.Code === this.farmerData?.Village_Code)[0]\r\n // this.farmersFormControls.village.setValue(village?.Name);\r\n // this.selectedVillage = village;\r\n // }\r\n\r\n if (!window.localStorage.getItem('villageMaster')) {\r\n window.localStorage.setItem('villageMaster', JSON.stringify(res));\r\n }\r\n });\r\n\r\n this.personalDetailsForm = this.fb.group({\r\n name: ['', Validators.required],\r\n // farmerPhoto: ['', Validators.required],\r\n // gender: ['', Validators.required],\r\n\r\n fatherName: ['', Validators.required],\r\n // motherName: ['', Validators.required],\r\n // dob: ['', Validators.required],\r\n\r\n // emailId: ['', Validators.compose([Validators.required, Validators.email])],\r\n mobileNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(10),\r\n Validators.maxLength(10),\r\n ],\r\n ],\r\n casteCode: ['', Validators.required],\r\n // casteCertificate: ['', Validators.required],\r\n\r\n // address: ['', Validators.required],\r\n villageCode: ['', Validators.required],\r\n // pinCode: ['', Validators.required],\r\n\r\n mfmbNo: [\r\n '',\r\n [Validators.required, Validators.minLength(8), Validators.maxLength(8)],\r\n ],\r\n aadharNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(12),\r\n Validators.maxLength(12),\r\n ],\r\n ],\r\n componentMaster: ['', Validators.required],\r\n farmerCategory: ['', Validators.required],\r\n aadharPhotoPath: ['', Validators.required],\r\n\r\n pppId: [\r\n '',\r\n [Validators.required, Validators.minLength(8), Validators.maxLength(8)],\r\n ],\r\n // pppPhotoPath: ['', Validators.required],\r\n // pppPhotoPath: ['', Validators.required],\r\n\r\n isSubsidyAvailabe: ['', Validators.required],\r\n installedSystem: ['', Validators.required],\r\n yearSubsudy: ['', Validators.required],\r\n onCostSubsidyBased: [0, Validators.required],\r\n departmentSubsidy: ['', Validators.required],\r\n });\r\n\r\n this.updatePersonalDetailsForm = this.fb.group({\r\n name: ['', Validators.required],\r\n fatherName: ['', Validators.required],\r\n mobileNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(10),\r\n Validators.maxLength(10),\r\n ],\r\n ],\r\n casteCode: ['', Validators.required],\r\n villageCode: ['', Validators.required],\r\n mfmbNo: [\r\n '',\r\n [Validators.required, Validators.minLength(8), Validators.maxLength(8)],\r\n ],\r\n aadharNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(12),\r\n Validators.maxLength(12),\r\n ],\r\n ],\r\n componentMaster: ['', Validators.required],\r\n farmerCategory: ['', Validators.required],\r\n aadharPhotoPath: ['', Validators.required],\r\n\r\n pppId: [\r\n '',\r\n [Validators.required, Validators.minLength(8), Validators.maxLength(8)],\r\n ],\r\n\r\n isSubsidyAvailabe: ['', Validators.required],\r\n installedSystem: ['', Validators.required],\r\n yearSubsudy: ['', Validators.required],\r\n onCostSubsidyBased: [0, Validators.required],\r\n departmentSubsidy: ['', Validators.required],\r\n });\r\n\r\n this.farmerLandForm = this.fb.group({\r\n morabbaNumber: [, [Validators.required]],\r\n killaNumber: [, [Validators.required]],\r\n totalArea: ['', [Validators.required]],\r\n kanals: [\r\n '',\r\n Validators.compose([Validators.required, Validators.max(8)]),\r\n ],\r\n marlas: [\r\n '',\r\n Validators.compose([Validators.required, Validators.max(20)]),\r\n ],\r\n villageCode: ['', [Validators.required]],\r\n cropType: ['', [Validators.required]],\r\n // crop: ['', [Validators.required]],\r\n // IsSubsidyAvailabe: ['', [Validators.required]],\r\n // IsSubsidyAvailabe: [''],\r\n landdoc_Path: ['', [Validators.required]],\r\n });\r\n\r\n this.estimationDetailsForm = this.fb.group({\r\n programmeName: ['', [Validators.required]],\r\n // vendor: ['', [Validators.required]],\r\n category: ['', [Validators.required]],\r\n component: ['', [Validators.required]],\r\n sizePrice: ['', [Validators.required]],\r\n enteredQuantity: ['', [Validators.required, Validators.min(0)]],\r\n perUnitCost: ['', [Validators.required, Validators.min(0)]],\r\n // conPrice: ['', [Validators.required, Validators.min(0)]],\r\n coveredArea: ['', [Validators.required, Validators.min(0)]],\r\n });\r\n\r\n // this.getOutletRD();\r\n }\r\n\r\n get f() {\r\n return this.farmerLandForm.controls;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n getYearList() {\r\n let today = new Date();\r\n let month = today.getMonth();\r\n let year = today.getFullYear();\r\n let prevMonth = month === 0 ? 11 : month - 1;\r\n let prevYear = prevMonth === 11 ? year - 8 : year - 7;\r\n let nextMonth = month === 11 ? 0 : month + 1;\r\n let nextYear = nextMonth === 0 ? year : year;\r\n this.minDate = new Date();\r\n this.minDate.setMonth(prevMonth);\r\n this.minDate.setFullYear(prevYear);\r\n this.maxDate = new Date();\r\n this.maxDate.setMonth(nextMonth);\r\n this.maxDate.setFullYear(nextYear);\r\n this.innerWidth = window.innerWidth;\r\n\r\n for (\r\n let i = this.minDate.getFullYear();\r\n i <= this.maxDate.getFullYear();\r\n i++\r\n ) {\r\n this.yearArray.push({ name: i.toString(), code: i.toString() });\r\n }\r\n }\r\n\r\n onSelectOutlet() {\r\n this.selectedBenefitedArea = this.selectedOutlet?.CCA_A;\r\n }\r\n\r\n onSelectOutletToGetData() {\r\n this.agreementNoToGetData = null;\r\n this.agreementNoList = [];\r\n this.chunkList = [];\r\n\r\n this.agreementNoToGetData = null;\r\n this.chunkIdToGetData = null;\r\n\r\n this.selectedBenefitedAreaToGetData = this.selectedOutletToGetData?.CCA_A;\r\n\r\n let conId = this.selectedOutletToGetData?.ContractorCode;\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n this.getAgreementNumberList(conId, outletId, this.userId, '');\r\n }\r\n\r\n getAgreementNumberList(contractorId, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getAgreementByContractor(contractorId, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.agreementNoList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.agreementNoList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectBenefitedArea() {\r\n }\r\n\r\n checkAadharNumber(event: any) {\r\n const aadharNumber = event.target.value;\r\n if (aadharNumber.length === 12) {\r\n this.checkFarmerPastSubsidy(aadharNumber);\r\n }\r\n }\r\n\r\n checkFarmerPastSubsidy(aadharNo) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getFarmerPastSubsidyByAadharNo(aadharNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n\r\n if (res.length > 0) {\r\n this.farmerPastSubsidyList = res;\r\n } else {\r\n this.farmerPastSubsidyList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.farmerPastSubsidyList = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getContractorOutletList(contractorId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getOutletByContractor(contractorId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.contractorOutletList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.contractorOutletList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getFarmerCategoryList() {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getFarmerCategory()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.farmerCategoryList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.farmerCategoryList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n // setTimeout(() => {\r\n // this.farmerCategoryList = [\r\n // {\r\n // AutoID: 1,\r\n // Type: 'Big',\r\n // },\r\n // {\r\n // AutoID: 3,\r\n // Type: 'Small',\r\n // },\r\n // {\r\n // AutoID: 2,\r\n // Type: 'Marginal',\r\n // }\r\n // ];\r\n // }, 100);\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n // getOutletRD() {\r\n // this.loader.start();\r\n // let sub = this.deptDashBoardService\r\n // .getOutletMasterForCanal()\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.loader.close();\r\n // // this.activityRecordService.activityRecord(this.userId, 'Outlet Master For Canal', '', new Date(), 'Success');\r\n\r\n\r\n // if (data.length > 0) {\r\n // // this.outletMasterData = data;\r\n // }\r\n // else {\r\n // // this.outletMasterData = [];\r\n // this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // // this.outletMasterData = [];\r\n // this.activityRecordService.activityRecord(this.userId, 'Outlet Master For Canal', '', new Date(), err);\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n\r\n // this.subscriptions.push(sub);\r\n // }\r\n\r\n loadComponentMaster() {\r\n // this.fApplicationService.getComponentMaster().subscribe(res => {\r\n // this.componentMasterList = res;\r\n // this.filteredComponentMaster = [...this.componentMasterList]\r\n\r\n // })\r\n\r\n setTimeout(() => {\r\n (this.componentMasterList = [\r\n {\r\n Program_Id: 1,\r\n Program_Name: 'Portable Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 2,\r\n Program_Name: 'Mini Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 3,\r\n Program_Name: 'Drip',\r\n Active: true,\r\n },\r\n ])\r\n // (this.filteredComponentMaster = [...this.componentMasterList]);\r\n }, 100);\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n\r\n // onUploadPersonalDetails(event, formcontrol, uploadElement) {\r\n // this.uploadFile = [];\r\n // let workBook = null;\r\n // let jsonData = null;\r\n // let sheetName = null\r\n // const reader = new FileReader();\r\n // let file = event.files[0];\r\n // this.uploadFile = file;\r\n // reader.onload = (event) => {\r\n // const data = reader.result;\r\n // workBook = XLSX.read(data, { type: 'binary', cellText:false, cellDates:true });\r\n // jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n // sheetName = name;\r\n // const sheet = workBook.Sheets[name];\r\n // initial[name] = XLSX.utils.sheet_to_json(sheet, {\r\n // raw: true,\r\n // dateNF:'yyyy-mm-dd',\r\n // });\r\n // return initial;\r\n // }, {});\r\n // const dataString = JSON.stringify(jsonData);\r\n // let personalData = JSON.parse(dataString)[sheetName];\r\n // // this.xslxToJsonDataPersonal = JSON.parse(dataString)[sheetName];\r\n // // if (!(this.xslxToJsonDataPersonal)) {\r\n // if (!(personalData)) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!' });\r\n // // }else if(this.xslxToJsonDataPersonal.length == 0){\r\n // }else if(personalData.length == 0){\r\n // this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'The Uploaded file is empty!' });\r\n // }else{\r\n // // this.onOpenPersonalDialog();\r\n // // this.uploadPersonalDeatilsTableData(this.xslxToJsonDataPersonal);\r\n\r\n // this.uploadPersonalDeatilsTableData(personalData);\r\n // }\r\n // }\r\n // reader.readAsBinaryString(file);\r\n // uploadElement.clear();\r\n // }\r\n\r\n // onCasteChange(event, ...value){\r\n // // this.isCasteCertificateMandatory = false;\r\n // // let val = 0;\r\n // // if(value.length > 0){\r\n // // val = value[0];\r\n // // }else{\r\n // // val = this.personalDetailsForm.value['casteCode'];\r\n // // }\r\n // // if(val == 1){\r\n // // this.isCasteCertificteOptional = false;\r\n // // this.isCasteCertificateMandatory = false;\r\n // // this.personalDetailsForm.controls['casteCertificate'].clearValidators();\r\n // // this.personalDetailsForm.controls['casteCertificate'].updateValueAndValidity();\r\n // // this.personalDetailsForm.controls['casteCertificate'].setValue('');\r\n // // }else if(val == 2){\r\n // // this.isCasteCertificteOptional = true;\r\n // // this.isCasteCertificateMandatory = false;\r\n // // this.personalDetailsForm.controls['casteCertificate'].clearValidators();\r\n // // this.personalDetailsForm.controls['casteCertificate'].updateValueAndValidity();\r\n // // this.personalDetailsForm.controls['casteCertificate'].setValue('');\r\n // // }else{\r\n // // this.isCasteCertificteOptional = false;\r\n // // this.isCasteCertificateMandatory = true;\r\n // // this.personalDetailsForm.controls['casteCertificate'].setValidators(Validators.required);\r\n // // this.personalDetailsForm.controls['casteCertificate'].updateValueAndValidity();\r\n // // }\r\n // }\r\n\r\n // onUploadLandDetails(event, formcontrol, uploadElement) {\r\n // this.uploadFile = [];\r\n // let workBook = null;\r\n // let jsonData = null;\r\n // let sheetName = null\r\n // const reader = new FileReader();\r\n // let file = event.files[0];\r\n // this.uploadFile = file;\r\n // reader.onload = (event) => {\r\n // const data = reader.result;\r\n // workBook = XLSX.read(data, { type: 'binary', cellText:false, cellDates:true });\r\n // jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n // sheetName = name;\r\n // const sheet = workBook.Sheets[name];\r\n // initial[name] = XLSX.utils.sheet_to_json(sheet, {\r\n // raw: true,\r\n // dateNF:'yyyy-mm-dd',\r\n // });\r\n // return initial;\r\n // }, {});\r\n // const dataString = JSON.stringify(jsonData);\r\n // let landData = JSON.parse(dataString)[sheetName];\r\n // if (!(landData)) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!' });\r\n // }else if(landData.length == 0){\r\n // this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'The Uploaded file is empty!' });\r\n // }else{\r\n // this.uploadLandDeatilsTableData(landData);\r\n // }\r\n // }\r\n // reader.readAsBinaryString(file);\r\n // uploadElement.clear();\r\n // }\r\n\r\n // onUploadBankDetails(event, formcontrol, uploadElement) {\r\n // this.uploadFile = [];\r\n // let workBook = null;\r\n // let jsonData = null;\r\n // let sheetName = null\r\n // const reader = new FileReader();\r\n // let file = event.files[0];\r\n // this.uploadFile = file;\r\n // reader.onload = (event) => {\r\n // const data = reader.result;\r\n // workBook = XLSX.read(data, { type: 'binary', cellText:false, cellDates:true });\r\n // jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n // sheetName = name;\r\n // const sheet = workBook.Sheets[name];\r\n // initial[name] = XLSX.utils.sheet_to_json(sheet, {\r\n // raw: true,\r\n // dateNF:'yyyy-mm-dd',\r\n // });\r\n // return initial;\r\n // }, {});\r\n // const dataString = JSON.stringify(jsonData);\r\n // let bankData = JSON.parse(dataString)[sheetName];\r\n // if (!(bankData)) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!' });\r\n // }else if(bankData.length == 0){\r\n // this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'The Uploaded file is empty!' });\r\n // }else{\r\n // this.uploadBankDeatilsTableData(bankData);\r\n // }\r\n // }\r\n // reader.readAsBinaryString(file);\r\n // uploadElement.clear();\r\n // }\r\n\r\n // uploadBankDeatilsTableData(data){\r\n // this.xslxToJsonDataBank = data.map(val => ({\r\n // ...val,\r\n // // 'DOB': this.datePipe.transform(new Date(val.DOB), 'yyyy-MM-dd'),\r\n // // 'Upload Aadhar Doc' : null,\r\n // 'Upload Bank Doc' : null\r\n // }))\r\n\r\n // this.bankDetailsCols = [];\r\n // let colHeaders = Object.keys(this.xslxToJsonDataBank[0]);\r\n // colHeaders.forEach(elem => {\r\n // this.bankDetailsCols.push({ field: elem, header: elem })\r\n // });\r\n // }\r\n\r\n // uploadLandDeatilsTableData(data){\r\n // this.xslxToJsonDataLand = data.map(val => ({\r\n // ...val,\r\n // // 'DOB': this.datePipe.transform(new Date(val.DOB), 'yyyy-MM-dd'),\r\n // // 'Upload Aadhar Doc' : null,\r\n // 'Upload Land Doc' : null\r\n // }))\r\n\r\n // this.landDetailsCols = [];\r\n // let colHeaders = Object.keys(this.xslxToJsonDataLand[0]);\r\n // colHeaders.forEach(elem => {\r\n // this.landDetailsCols.push({ field: elem, header: elem })\r\n // });\r\n // }\r\n\r\n // uploadPersonalDeatilsTableData(data){\r\n // // this.datePipe.transform(new Date(val.fromDate), 'yyyy-MM-dd');\r\n\r\n // this.xslxToJsonDataPersonal = data.map(val => ({\r\n // ...val,\r\n // 'DOB': this.datePipe.transform(new Date(val.DOB), 'yyyy-MM-dd'),\r\n // 'Upload Aadhar Doc' : null,\r\n // 'Upload PPP Id Doc' : null\r\n // }))\r\n\r\n // this.personalDetailsCols = [];\r\n // let colHeaders = Object.keys(this.xslxToJsonDataPersonal[0]);\r\n // colHeaders.forEach(elem => {\r\n // this.personalDetailsCols.push({ field: elem, header: elem })\r\n // });\r\n // }\r\n\r\n // onUploadDoc(event, uploadElement, actionType, row, col){\r\n // let file = event.files[0];\r\n // let data = new FormData();\r\n // data.append('file', file);\r\n // this.loader.start();\r\n // this._personalDetalSer\r\n // .uploadFile(data, this.userId, actionType)\r\n // .subscribe((resp: any) => {\r\n // this.loader.close();\r\n // if (resp.statusCode == 200) {\r\n\r\n // if(actionType == 'personalDetails'){\r\n // if(col.field == 'Upload Aadhar Doc'){\r\n // let user = this.xslxToJsonDataPersonal.find(val => val['Aadhar No'] == row['Aadhar No']);\r\n // if (user) {\r\n // user['Upload Aadhar Doc'] = resp.data;\r\n // }\r\n // }else if(col.field == 'Upload PPP Id Doc'){\r\n // let user = this.xslxToJsonDataPersonal.find(val => val['Aadhar No'] == row['Aadhar No']);\r\n // if (user) {\r\n // user['Upload PPP Id Doc'] = resp.data;\r\n // }\r\n // }\r\n // }else if(actionType == 'landDetails'){\r\n // if(col.field == 'Upload Land Doc'){\r\n // let user = this.xslxToJsonDataLand.find(val => val['Aadhar No'] == row['Aadhar No']);\r\n // if (user) {\r\n // user['Upload Land Doc'] = resp.data;\r\n // }\r\n // }\r\n // }else if(actionType == 'bankDetails'){\r\n // if(col.field == 'Upload Bank Doc'){\r\n // let user = this.xslxToJsonDataBank.find(val => val['Account No'] == row['Account No']);\r\n // if (user) {\r\n // user['Upload Bank Doc'] = resp.data;\r\n // }\r\n // }\r\n // }\r\n\r\n // // if(col.field == 'Upload Aadhar Doc'){\r\n // // if(actionType == 'personalDetails'){\r\n // // let user = this.xslxToJsonDataPersonal.find(val => val['Aadhar No'] == row['Aadhar No']);\r\n // // if (user) {\r\n // // user['Upload Aadhar Doc'] = resp.data;\r\n // // }\r\n // // }else if( actionType == 'landDetails'){\r\n\r\n // // }else if( actionType == 'bankDetails'){\r\n\r\n // // }\r\n\r\n // // }else if(col.field == 'Upload PPP Id Doc'){\r\n // // if(actionType == 'personalDetails'){\r\n // // let user = this.xslxToJsonDataPersonal.find(val => val['Aadhar No'] == row['Aadhar No']);\r\n // // if (user) {\r\n // // user['Upload PPP Id Doc'] = resp.data;\r\n // // }\r\n // // }else if( actionType == 'landDetails'){\r\n\r\n // // }else if( actionType == 'bankDetails'){\r\n\r\n // // }\r\n // // }else if(col.field == 'Upload Land Doc'){\r\n // // if(actionType == 'personalDetails'){\r\n\r\n // // }else if( actionType == 'landDetails'){\r\n // // let user = this.xslxToJsonDataLand.find(val => val['Aadhar No'] == row['Aadhar No']);\r\n // // if (user) {\r\n // // user['Upload Land Doc'] = resp.data;\r\n // // }\r\n // // }else if( actionType == 'bankDetails'){\r\n\r\n // // }\r\n // // }\r\n\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'File Uploaded Successfully',\r\n // });\r\n // }else{\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error',\r\n // detail: 'File Not Uploaded',\r\n // });\r\n // }\r\n // });\r\n\r\n // uploadElement.clear();\r\n // }\r\n\r\n // onOpenPersonalDialog() {\r\n // this.cols = [];\r\n // let colHeaders = Object.keys(this.xslxToJsonDataPersonal[0]);\r\n // colHeaders.forEach(elem => {\r\n // this.cols.push({ field: elem, header: elem })\r\n // });\r\n // this.showViewDocDialog = true;\r\n // }\r\n\r\n // onClosePersonalDialog() {\r\n // this.showViewDocDialog = false;\r\n // }\r\n\r\n // clearUploadPersonalDetail(val) {\r\n\r\n // this.confirmationService.confirm({\r\n // target: event.target as EventTarget,\r\n // message: `Do you want to remove ${val} record?`,\r\n // header: 'Delete Confirmation',\r\n // icon: 'pi pi-info-circle',\r\n // acceptButtonStyleClass:\"p-button-danger p-button-text\",\r\n // rejectButtonStyleClass:\"p-button-text p-button-text\",\r\n // acceptIcon:\"none\",\r\n // rejectIcon:\"none\",\r\n\r\n // accept: () => {\r\n // if(val == 'personal'){\r\n // this.xslxToJsonDataPersonal = [];\r\n // this.messageService.add({ severity: 'info', summary: 'Confirmed', detail: 'Personal Details Data Removed Successfully' });\r\n // }else if(val == 'land'){\r\n // this.xslxToJsonDataLand = [];\r\n // this.messageService.add({ severity: 'info', summary: 'Confirmed', detail: 'Land Details Data Removed Successfully' });\r\n // }else if(val == 'bank'){\r\n // this.xslxToJsonDataBank = [];\r\n // this.messageService.add({ severity: 'info', summary: 'Confirmed', detail: 'Bank Details Data Removed Successfully' });\r\n // }\r\n // },\r\n // reject: () => {\r\n // // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n // }\r\n // });\r\n // }\r\n\r\n // onClickSaveData(actionType){\r\n // if(actionType == 'personalDetails'){\r\n // let flag = this.xslxToJsonDataPersonal.some(val => val['Upload Aadhar Doc'] == null || val['Upload PPP Id Doc'] == null);\r\n // if(flag){\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error',\r\n // detail: 'Please upload all personal details related documents',\r\n // });\r\n // }else{\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Data Uploaded Successfully',\r\n // });\r\n // }\r\n // }else if(actionType == 'landDetails'){\r\n // let flag = this.xslxToJsonDataLand.some(val => val['Upload Land Doc'] == null);\r\n // if(flag){\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error',\r\n // detail: 'Please land related documents',\r\n // });\r\n // }else{\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Data Uploaded Successfully',\r\n // });\r\n // }\r\n // }else if(actionType == 'bankDetails'){\r\n // let flag = this.xslxToJsonDataPersonal.some(val => val['Upload Bank Doc'] == null);\r\n // if(flag){\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error',\r\n // detail: 'Please upload all bank related documents',\r\n // });\r\n // }else{\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Data Uploaded Successfully',\r\n // });\r\n // }\r\n // }\r\n // }\r\n\r\n deleteLand(val, index) {\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n message: `Do you want to remove land record of Morabba No: ${val?.morabbaNumber} and Killa No: ${val?.killaNumber}?`,\r\n header: 'Delete Confirmation',\r\n icon: 'pi pi-info-circle',\r\n acceptButtonStyleClass: 'p-button-danger p-button-text',\r\n rejectButtonStyleClass: 'p-button-text p-button-text',\r\n acceptIcon: 'none',\r\n rejectIcon: 'none',\r\n\r\n accept: () => {\r\n this.addedLandData.splice(index, 1);\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n },\r\n });\r\n }\r\n\r\n deleteFarmerDetails(val, index) {\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n message: `Do you want to remove farmer ${val?.farmername}?`,\r\n header: 'Delete Confirmation',\r\n icon: 'pi pi-info-circle',\r\n acceptButtonStyleClass: 'p-button-danger p-button-text',\r\n rejectButtonStyleClass: 'p-button-text p-button-text',\r\n acceptIcon: 'none',\r\n rejectIcon: 'none',\r\n\r\n accept: () => {\r\n this.addedFarmerData.splice(index, 1);\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n },\r\n });\r\n }\r\n\r\n // onUpload(event, formcontrol, uploadElement) {\r\n // let file = event.files[0];\r\n // let data = new FormData();\r\n // data.append('file', file);\r\n // this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n // if (resp.statusCode == 200) {\r\n // this.personalDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n // }\r\n // })\r\n // uploadElement.clear();\r\n // }\r\n\r\n onSubmitLandDetails() {\r\n this.submitted = true;\r\n\r\n if (this.farmerLandForm.valid && this.selectedNodes1.length < 5) {\r\n let landDetails = this.farmerLandForm.value;\r\n\r\n // landDetails.map(val => ({\r\n // ...val,\r\n // cropValue: landDetails.cropType.map(item => item.label).join(', ')\r\n // }))\r\n\r\n let landDetailsToAdd = {\r\n ...landDetails,\r\n marlas: this.farmerLandForm.controls['marlas'].value,\r\n villageCode: landDetails?.villageCode?.Code,\r\n cropValue: landDetails.cropType.map((item) => item.label).join(', '),\r\n };\r\n\r\n this.addedLandData.push(landDetailsToAdd);\r\n\r\n this.farmerLandForm.reset();\r\n this.uploadedlandFiles = [];\r\n this.submitted = false;\r\n\r\n // this.markFormGroupUntouched(this.farmerLandForm);\r\n // this.markFormGroupPristine(this.farmerLandForm);\r\n } else {\r\n this.farmerLandForm.markAllAsTouched();\r\n }\r\n\r\n // this.addedLandDataInTable();\r\n\r\n // let landDoc = this.landDocArray[0];\r\n // let data = landDoc.value;\r\n // let formcontrol = landDoc.name\r\n // this._personalDetalSer.uploadFile(data, sessionStorage.getItem('officeCode'), formcontrol).subscribe((resp: any) => {\r\n // if (resp.statusCode == 200) {\r\n // this.farmerLandForm.patchValue({ [formcontrol]: resp.data });\r\n // // this.messageService.add({\r\n // // severity: 'success',\r\n // // summary: 'Success',\r\n // // detail: 'File Uploaded with Auto Mode',\r\n // // });\r\n // this.addedLandDataInTable();\r\n // }\r\n // })\r\n }\r\n\r\n // addedLandDataInTable(){\r\n // if (this.farmerLandForm.valid) {\r\n // this.addedLandData.push(this.farmerLandForm.value);\r\n // this.farmerLandForm.reset();\r\n // this.submitted = false;\r\n // // this.markFormGroupUntouched(this.farmerLandForm);\r\n // // this.markFormGroupPristine(this.farmerLandForm);\r\n // } else {\r\n // this.farmerLandForm.markAllAsTouched();\r\n // }\r\n // }\r\n\r\n // private markFormGroupUntouched(formGroup: FormGroup) {\r\n // (Object as any).values(formGroup.controls).forEach((control: any) => {\r\n // control.markAsUntouched();\r\n\r\n // if (control.controls) {\r\n // this.markFormGroupUntouched(control);\r\n // }\r\n // });\r\n // }\r\n\r\n // private markFormGroupPristine(formGroup: FormGroup) {\r\n // (Object as any).values(formGroup.controls).forEach((control: any) => {\r\n // control.markAsPristine();\r\n\r\n // if (control.controls) {\r\n // this.markFormGroupPristine(control);\r\n // }\r\n // });\r\n // }\r\n\r\n onKanalsChange() {\r\n let tlk: any = 0.0; // sample kanal variable\r\n let tlm: any = 0.0; // sample marlas variable\r\n this.f.marlas.setValue(0);\r\n if (this.f.kanals.value) {\r\n if (parseInt(this.f.kanals.value) >= 8) {\r\n this.f.marlas.setValue(0);\r\n this.f.marlas.disable();\r\n // tlm = 1;\r\n } else {\r\n this.f.marlas.enable();\r\n }\r\n tlk = parseInt(this.f.kanals.value) * 0.125;\r\n }\r\n if (this.f.marlas.value) {\r\n tlm = parseInt(this.f.marlas.value) * 0.006249999998;\r\n }\r\n\r\n let tl = tlk + tlm;\r\n const totalArea = tl.toFixed(2);\r\n this.f.totalArea.setValue(Number(totalArea));\r\n }\r\n\r\n onMarlasChange() {\r\n let tlk: any = 0.0;\r\n let tlm: any = 0.0;\r\n if (this.f.kanals.value != undefined || this.f.kanals.value != '') {\r\n tlk = (this.f.kanals.value ? parseInt(this.f.kanals.value) : 0) * 0.125;\r\n }\r\n if (this.f.marlas.value != undefined || this.f.marlas.value != '') {\r\n tlm =\r\n (this.f.marlas.value ? parseInt(this.f.marlas.value) : 0) *\r\n 0.006249999998;\r\n }\r\n // if (this.f.marlas.value > 19){\r\n // this.f.marlas.setValue()\r\n // }\r\n\r\n let tl = tlk + tlm;\r\n this.f.totalArea.setValue(parseFloat(tl).toFixed(2));\r\n }\r\n\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.nodes2 = files;\r\n this.cropTypeList = files;\r\n\r\n let arrayCrop = [];\r\n let cropMerge = files.map((parent) => {\r\n arrayCrop.push(\r\n parent['children'].map((child) => ({\r\n ...child,\r\n parentData: parent.data,\r\n parentLabel: parent.label,\r\n }))\r\n );\r\n });\r\n\r\n this.cropMergeList = [].concat(...arrayCrop);\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n public setCurrentPosition() {\r\n if ('geolocation' in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.showPosition(position);\r\n });\r\n }\r\n }\r\n\r\n showPosition(position) {\r\n let geocoder = new google.maps.Geocoder();\r\n let latlng = {\r\n lat: position.coords.latitude,\r\n lng: position.coords.longitude,\r\n };\r\n this.f.latitude.setValue(position.coords.latitude);\r\n this.f.longitude.setValue(position.coords.longitude);\r\n }\r\n\r\n getSelectedCorpType() {\r\n this.selectedCorpModel = new crop_Datas();\r\n this.selectedCorpModelList = [];\r\n let selectedLabels = [];\r\n\r\n this.selectedCorpModelList = this.selectedNodes1.map((val) => ({\r\n type_of_crop_ID: val.parentData,\r\n crop_ID: val.data,\r\n }));\r\n\r\n // for (let result of this.selectedNodes1) {\r\n // if (result.parent) {\r\n // if(selectedLabels.includes(result.label)){\r\n // break;\r\n // }\r\n // let body = {\r\n // crop_ID : result.data,\r\n // type_of_crop_ID: result.parent?.data\r\n // }\r\n // this.selectedCorpModelList.push(body);\r\n // selectedLabels.push(result.label);\r\n // }else if(result.children){\r\n // result.children.forEach(child => {\r\n // if(selectedLabels.includes(child.label)){\r\n // return;\r\n // }\r\n // let body = {\r\n // crop_ID : child.data,\r\n // type_of_crop_ID: (child.parent?.data) ? child.parent?.data : result.data\r\n // }\r\n\r\n // this.selectedCorpModelList.push(body);\r\n // selectedLabels.push(child.label);\r\n // })\r\n // }\r\n // }\r\n }\r\n\r\n onCropSelect(val) {\r\n if (val.value.length > 4) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Crop Limit Exceeds',\r\n detail: 'Maximun 4 crop is allowed',\r\n });\r\n }\r\n }\r\n\r\n // filterComponentMaster(event: any) {\r\n // const filtered: any[] = [];\r\n // const query = event.query;\r\n // for (let i = 0; i < this.componentMasterList.length; i++) {\r\n // const wq = this.componentMasterList[i];\r\n // if (wq.Program_Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n // filtered.push(wq);\r\n // }\r\n // }\r\n\r\n // this.filteredComponentMaster = filtered;\r\n // }\r\n\r\n onAadharUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n // this.landDocArray = [];\r\n\r\n // this.landDocArray.push({\r\n // value: data,\r\n // name: formcontrol\r\n // })\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, sessionStorage.getItem('officeCode'), formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedAadharFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedAadharFiles.push(file);\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Aadhar Uploaded Successfully',\r\n });\r\n this.personalDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onUpdateAadharUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, sessionStorage.getItem('officeCode'), formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedAadharFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedAadharFiles.push(file);\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Aadhar Uploaded Successfully',\r\n });\r\n this.updatePersonalDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onLandUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n // this.landDocArray = [];\r\n\r\n // this.landDocArray.push({\r\n // value: data,\r\n // name: formcontrol\r\n // })\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, sessionStorage.getItem('officeCode'), formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedlandFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedlandFiles.push(file);\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded Successfully',\r\n });\r\n this.farmerLandForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onSelectSubsidyAvail(val) {\r\n if (val == 1) {\r\n this.personalDetailsForm.controls['installedSystem'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['yearSubsudy'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.personalDetailsForm.controls['onCostSubsidyBased'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['departmentSubsidy'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n } else {\r\n this.personalDetailsForm.controls['installedSystem'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['yearSubsudy'].clearValidators();\r\n this.personalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.personalDetailsForm.controls['onCostSubsidyBased'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['departmentSubsidy'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n\r\n // this.personalDetailsForm.controls.installedSystem.setValue('');\r\n }\r\n }\r\n\r\n onSelectSubsidyAvailUpdate(val) {\r\n if (val == 1) {\r\n this.updatePersonalDetailsForm.controls['installedSystem'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['onCostSubsidyBased'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['departmentSubsidy'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n } else {\r\n this.updatePersonalDetailsForm.controls['installedSystem'].clearValidators();\r\n this.updatePersonalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].clearValidators();\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['onCostSubsidyBased'].clearValidators();\r\n this.updatePersonalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['departmentSubsidy'].clearValidators();\r\n this.updatePersonalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n\r\n // this.updatePersonalDetailsForm.controls.installedSystem.setValue('');\r\n }\r\n }\r\n\r\n onSelectOnCostS(val) {\r\n if (val == 1) {\r\n this.personalDetailsForm.controls['departmentSubsidy'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n } else {\r\n this.personalDetailsForm.controls['departmentSubsidy'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n }\r\n }\r\n\r\n onSubmitPersonalDetails() {\r\n if (this.personalDetailsForm.valid) {\r\n // this.addedPersonalData.push(this.personalDetailsForm.value);\r\n // this.personalDetailsForm.reset();\r\n } else {\r\n this.personalDetailsForm.markAllAsTouched();\r\n }\r\n }\r\n\r\n onAddFarmerForm() {\r\n this.onSubmitPersonalDetails();\r\n\r\n if (this.selectedOutlet == null) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Select Outlet.',\r\n });\r\n return;\r\n }\r\n\r\n if (this.agreementNo == null) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Enter Agreement No.',\r\n });\r\n return;\r\n }\r\n\r\n if (this.personalDetailsForm.invalid) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Fill Personal Details Properly.',\r\n });\r\n return;\r\n }\r\n\r\n if (this.addedLandData.length == 0) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Fill Land Detail.',\r\n });\r\n return;\r\n }\r\n\r\n let personalDetails = this.personalDetailsForm.value;\r\n let addedLandDetails = this.addedLandData;\r\n\r\n let farmerDeatils = {\r\n landDetailsData: addedLandDetails,\r\n contractorId: this.contractorId,\r\n outletId: this.selectedOutlet?.OutletId,\r\n agreementNo: this.agreementNo,\r\n name: personalDetails?.name,\r\n farmerFatherName: personalDetails?.fatherName,\r\n ppP_ID: personalDetails?.pppId,\r\n aadharno: personalDetails?.aadharNo,\r\n aadhar_path: personalDetails?.aadharPhotoPath,\r\n mobileno: personalDetails?.mobileNo,\r\n castcode: personalDetails?.casteCode,\r\n villagecode: personalDetails?.villageCode?.Code,\r\n mfmbNo: personalDetails?.mfmbNo,\r\n farmerCategory: personalDetails?.farmerCategory?.AutoID,\r\n proposedSystemToBeInstalled: personalDetails?.componentMaster?.Program_Id,\r\n\r\n isSubsidyAvailabe: personalDetails?.isSubsidyAvailabe\r\n ? personalDetails?.isSubsidyAvailabe\r\n : 0,\r\n installedSystem: personalDetails?.installedSystem?.Program_Id\r\n ? personalDetails?.installedSystem?.Program_Id\r\n : 0,\r\n yearSubsudy: personalDetails?.yearSubsudy\r\n ? personalDetails?.yearSubsudy\r\n : '',\r\n onCostSubsidyBased: personalDetails?.onCostSubsidyBased\r\n ? personalDetails?.onCostSubsidyBased\r\n : 0,\r\n departmentSubsidy: personalDetails?.departmentSubsidy\r\n ? personalDetails?.departmentSubsidy\r\n : '',\r\n\r\n network_ID: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n };\r\n\r\n this.submitFarmerData([farmerDeatils]);\r\n // this.addedFarmerData.push(farmerDeatils);\r\n\r\n // this.personalDetailsForm.reset();\r\n // this.uploadedAadharFiles = [];\r\n // this.addedLandData = [];\r\n }\r\n\r\n onUpdatePersonalDetails() {\r\n\r\n if (this.updatePersonalDetailsForm.valid) {\r\n this.updatePersonalDetails();\r\n // this.addedPersonalData.push(this.personalDetailsForm.value);\r\n // this.personalDetailsForm.reset();\r\n } else {\r\n this.updatePersonalDetailsForm.markAllAsTouched();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Fill Personal Details Properly.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n submitFarmerData(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .insertFarmerDataByContractor(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if (res == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Details submitted successfully.',\r\n });\r\n\r\n this.personalDetailsForm.reset();\r\n this.uploadedAadharFiles = [];\r\n this.addedLandData = [];\r\n // this.selectedOutlet = null;\r\n // this.agreementNo = null;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res,\r\n });\r\n }\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Submit(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${res}`, JSON.stringify(reqBody));\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Submit Error(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${err}`, JSON.stringify(reqBody));\r\n },\r\n });\r\n }\r\n\r\n\r\n updatePersonalDetails() {\r\n let updatedPersonalDetails = this.updatePersonalDetailsForm.value;\r\n\r\n let reqBoady = {\r\n FarmerId: this.selectedFarmerId,\r\n // contractorId: this.contractorId,\r\n // outletId: this.selectedOutlet?.OutletId,\r\n // agreementNo: this.agreementNo,\r\n name: updatedPersonalDetails?.name,\r\n farmerFatherName: updatedPersonalDetails?.fatherName,\r\n ppP_ID: updatedPersonalDetails?.pppId,\r\n aadharno: updatedPersonalDetails?.aadharNo,\r\n aadhar_path: updatedPersonalDetails?.aadharPhotoPath,\r\n mobileno: updatedPersonalDetails?.mobileNo,\r\n castcode: updatedPersonalDetails?.casteCode,\r\n villagecode: updatedPersonalDetails?.villageCode?.Code,\r\n mfmbNo: updatedPersonalDetails?.mfmbNo,\r\n farmerCategory: updatedPersonalDetails?.farmerCategory,\r\n proposedSystemToBeInstalled: updatedPersonalDetails?.componentMaster,\r\n\r\n isSubsidyAvailabe: updatedPersonalDetails?.isSubsidyAvailabe ? updatedPersonalDetails?.isSubsidyAvailabe : 0,\r\n installedSystem: updatedPersonalDetails?.installedSystem ? updatedPersonalDetails?.installedSystem : 0,\r\n yearSubsudy: updatedPersonalDetails?.yearSubsudy ? updatedPersonalDetails?.yearSubsudy : '',\r\n onCostSubsidyBased: updatedPersonalDetails?.onCostSubsidyBased ? updatedPersonalDetails?.onCostSubsidyBased : 0,\r\n departmentSubsidy: updatedPersonalDetails?.departmentSubsidy ? updatedPersonalDetails?.departmentSubsidy : '',\r\n\r\n network_ID: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n };\r\n\r\n // this.submitFarmerData([farmerDeatils]);\r\n this.updateFarmerPersonalData(reqBoady);\r\n }\r\n\r\n updateFarmerPersonalData(reqBody) {\r\n console.log(reqBody)\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .updateFarmerPersonalDetails(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if (res == 'Personal details updated successfully.') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res,\r\n });\r\n\r\n this.updatePersonalDetailsForm.reset();\r\n this.uploadedAadharFiles = [];\r\n this.onCloseUpdatePerDialog();\r\n this.onClickGetFarmerData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Error Message',\r\n detail: res,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Update (Personal Details)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${res}`, JSON.stringify(reqBody));\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Update Error(Personal Details)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${err}`, JSON.stringify(reqBody));\r\n },\r\n });\r\n }\r\n\r\n clearFormData() {\r\n this.personalDetailsForm.reset();\r\n this.uploadedAadharFiles = [];\r\n this.addedLandData = [];\r\n this.farmerPastSubsidyList = [];\r\n }\r\n\r\n onClickGetFarmerData() {\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n let chunkId = this.chunkIdToGetData?.ChunkId ? this.chunkIdToGetData?.ChunkId : 0;\r\n\r\n this.estimationTableData = [];\r\n this.addedFarmerData = [];\r\n\r\n if (outletId && agreementNo) {\r\n if (chunkId != 0) {\r\n this.getEPCFarmerDetails(agreementNo, outletId, chunkId);\r\n this.getEPCEstimationDetails(this.contractorId, outletId, agreementNo, chunkId);\r\n } else {\r\n this.getEPCFarmerDetails(agreementNo, outletId, chunkId);\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Outlet and Agreement Number.',\r\n });\r\n }\r\n }\r\n\r\n getEPCEstimationDetails(contractorId, outletId, agreementNo, chunkId) {\r\n this.loader.start();\r\n this.vendorService\r\n .getContractorEstimation(contractorId, outletId, agreementNo, chunkId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.hideGetDataButton = false;\r\n this.loader.close();\r\n let resp: any = data;\r\n if (resp.length > 0) {\r\n this.loadedEstimateDatafromServer = resp;\r\n let respArr = resp.map((val) => this.estimationTableData.push({\r\n programmeId: val?.ProgramID,\r\n programmeName: val?.Program_Name,\r\n CatID: val?.catId,\r\n CatName: val?.category,\r\n ComponentID: val?.ComponentID,\r\n ComponentName: val?.Component,\r\n // SizeID: estimationVal?.sizePrice?.sizeId,\r\n // SizePriceName: estimationVal?.sizePrice?.sizeAndPrice,\r\n Size: val?.Size,\r\n SizeID: val?.SizeId,\r\n Quantity: val?.Quantity,\r\n PerUnitCost: val?.PerUnitCost,\r\n ConPrice: val?.TotalAmount\r\n // CoveredArea: val?.CoveredArea\r\n }))\r\n // this.estimationTableData.concat(respArr);\r\n } else {\r\n this.loadedEstimateDatafromServer = [];\r\n this.estimationTableData = [];\r\n if (this.chunkIdToGetData) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n // this.hideGetDataButton = false;\r\n this.loadedEstimateDatafromServer = [];\r\n this.estimationTableData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getEPCFarmerDetails(agreementNo, outletId, chunkId) {\r\n this.loader.start();\r\n this.vendorService\r\n .getEPCDetails(agreementNo, outletId, chunkId, this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let resp: any = data;\r\n if (resp.length > 0) {\r\n this.hideGetDataButton = true;\r\n this.calValidationForEstimation(resp);\r\n this.addedFarmerData = data;\r\n } else {\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n calValidationForEstimation(data) {\r\n this.totalPortableAreaCount = 0;\r\n this.totalPortableCount = 0;\r\n this.totalMiniAreaCount = 0;\r\n this.totalMiniCount = 0;\r\n this.totalDripAreaCount = 0;\r\n this.totalDripCount = 0;\r\n\r\n data.map((val) => {\r\n if (val.ProposedSystem == 'Portable Sprinkler') {\r\n this.totalPortableAreaCount += parseFloat(val.TotalArea);\r\n this.totalPortableCount += 1;\r\n } else if (val.ProposedSystem == 'Mini Sprinkler') {\r\n this.totalMiniAreaCount += parseFloat(val.TotalArea);\r\n this.totalMiniCount += 1;\r\n } else if (val.ProposedSystem == 'Drip') {\r\n this.totalDripAreaCount += parseFloat(val.TotalArea);\r\n this.totalDripCount += 1;\r\n }\r\n });\r\n\r\n this.programWiseData = [\r\n {\r\n progName: 'Portable Sprinkler',\r\n totaAreaCount: this.totalPortableAreaCount,\r\n totalCount: this.totalPortableCount,\r\n },\r\n {\r\n progName: 'Mini Sprinkler',\r\n totaAreaCount: this.totalMiniAreaCount,\r\n totalCount: this.totalMiniCount,\r\n },\r\n {\r\n progName: 'Drip',\r\n totaAreaCount: this.totalDripAreaCount,\r\n totalCount: this.totalDripCount,\r\n },\r\n ];\r\n\r\n this.componentMasterListForEstimation = [\r\n {\r\n Program_Id: 1,\r\n Program_Name: 'Portable Sprinkler',\r\n Active: true,\r\n disabled: this.totalPortableAreaCount == 0\r\n },\r\n {\r\n Program_Id: 2,\r\n Program_Name: 'Mini Sprinkler',\r\n Active: true,\r\n disabled: this.totalMiniAreaCount == 0\r\n },\r\n {\r\n Program_Id: 3,\r\n Program_Name: 'Drip',\r\n Active: true,\r\n disabled: this.totalDripAreaCount == 0\r\n },\r\n ]\r\n }\r\n\r\n onSubmitForm() {\r\n\r\n if (this.addedFarmerData < 1) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please add farmer details.',\r\n });\r\n return;\r\n } else if (this.addedFarmerData > 1) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Only one farmer estimation allowed at a time.',\r\n });\r\n return;\r\n }\r\n\r\n if(this.consentCheckBox.length == 0){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Please click on concent check box.',\r\n });\r\n return;\r\n }\r\n\r\n \r\n let sumOfComponentAmount = Math.round(this.estimationTableData.reduce((sum, item) => sum + parseFloat(item['ConPrice']), 0))\r\n if(this.selectedFarmerForEstimation[0]?.OutletAmount != sumOfComponentAmount){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `As per entered area and pre defined rates total Outlet Amount ₹(${this.selectedFarmerForEstimation[0]?.OutletAmount}) must be equal to sum of all Component Amount ₹(${sumOfComponentAmount}). Here we are getting a difference of (${(this.selectedFarmerForEstimation[0]?.OutletAmount - sumOfComponentAmount).toFixed(2)}).`,\r\n });\r\n return;\r\n }\r\n\r\n\r\n let reqBody = {\r\n estData: this.estimationTableData.map((val) => ({\r\n progId: val?.programmeId,\r\n catID: parseInt(val?.CatID),\r\n componentID: parseInt(val?.ComponentID),\r\n sizeID: parseInt(val?.SizeID),\r\n quantity: val?.Quantity,\r\n autoIdPriceTable: parseInt(val?.SizeID),\r\n perUnitCost: val?.PerUnitCost,\r\n totalAmount: parseInt(val?.ConPrice),\r\n })),\r\n farmerData: this.selectedFarmerForEstimation.map((val) => ({\r\n appId: val?.APP_ID,\r\n farmerId: val?.Farmer_ID\r\n })),\r\n contractorId: parseInt(this.contractorId),\r\n outletId: this.selectedOutletToGetData?.OutletId,\r\n agreementNo: this.agreementNoToGetData?.AgreementNo,\r\n network_ID: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n };\r\n\r\n this.postEPCFarmerDetails([reqBody]);\r\n }\r\n\r\n postEPCFarmerDetails(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n this.loader.start();\r\n this.vendorService\r\n .insertContractorEstimation(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.estimationTableData = [];\r\n this.selectedFarmerForEstimation = [];\r\n\r\n this.clearGetData();\r\n } else if(data.startsWith('Violation of PRIMARY KEY')){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'You have added the same component multiple times. Please remove the duplicate one.',\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Estimation Submit', `${reqBody[0]?.outletId}_${reqBody[0]?.agreementNo}`, new Date(), `${data}`, JSON.stringify(reqBody[0]));\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Estimation Submit Error', `${reqBody[0]?.outletId}_${reqBody[0]?.agreementNo}`, new Date(), `${err}`, JSON.stringify(reqBody[0]));\r\n },\r\n });\r\n }\r\n\r\n // onSelectProgramme(){\r\n // this.estimationDetailsForm.controls['vendor'].reset();\r\n // this.miVendorList = [];\r\n // this.estimationDetailsForm.controls['category'].reset();\r\n // this.category = [];\r\n // this.estimationDetailsForm.controls['component'].reset();\r\n // this.component = [];\r\n // this.estimationDetailsForm.controls['sizePrice'].reset();\r\n // this.sizePrice = [];\r\n // this.estimationDetailsForm.controls['enteredQuantity'].reset();\r\n // this.estimationDetailsForm.controls['coveredArea'].reset();\r\n\r\n // let estimationDetails = this.estimationDetailsForm.controls['programmeName'].value;\r\n // this.getVendorList(estimationDetails?.Program_Id);\r\n // }\r\n\r\n getVendorList(programId) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getAllMIvenders(programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.miVendorList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miVendorList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n filterMIVendor(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.miVendorList.length; i++) {\r\n const vendor = this.miVendorList[i];\r\n if (vendor.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendor);\r\n }\r\n }\r\n this.filteredmiVendorList = filtered;\r\n }\r\n\r\n // onVendorSelect(val){\r\n onSelectProgramme() {\r\n this.estimationDetailsForm.controls['category'].reset();\r\n this.category = [];\r\n this.estimationDetailsForm.controls['component'].reset();\r\n this.component = [];\r\n this.estimationDetailsForm.controls['sizePrice'].reset();\r\n this.sizePrice = [];\r\n this.estimationDetailsForm.controls['enteredQuantity'].reset();\r\n this.estimationDetailsForm.controls['coveredArea'].reset();\r\n\r\n this.showErrMsgOfInvArea = false;\r\n this.invAreaMsg = null;\r\n\r\n // let vendor = this.estimationDetailsForm.controls['vendor'].value;\r\n let vendor = 0;\r\n let programme = this.estimationDetailsForm.controls['programmeName'].value;\r\n this.getCategoryDropdown(vendor, programme?.Program_Id);\r\n\r\n let program = this.estimationDetailsForm.controls['programmeName'].value;\r\n if (program.Program_Id == 1) {\r\n this.estimationDetailsForm.patchValue({ coveredArea: this.totalPortableAreaCount });\r\n } else if (program.Program_Id == 2) {\r\n this.estimationDetailsForm.patchValue({ coveredArea: this.totalMiniAreaCount });\r\n } else if (program.Program_Id == 3) {\r\n this.estimationDetailsForm.patchValue({ coveredArea: this.totalDripAreaCount });\r\n }\r\n }\r\n\r\n getCategoryDropdown(vendorId, programId) {\r\n const reqBody = {\r\n VendorRegId: vendorId,\r\n ProgramId: programId,\r\n };\r\n this.loader.start();\r\n this.vendorService\r\n .getCategory(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.category = res.$values;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.category = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectCategory() {\r\n this.estimationDetailsForm.controls['component'].reset();\r\n this.component = [];\r\n this.estimationDetailsForm.controls['sizePrice'].reset();\r\n this.sizePrice = [];\r\n this.estimationDetailsForm.controls['enteredQuantity'].reset();\r\n // this.estimationDetailsForm.controls['coveredArea'].reset();\r\n\r\n let programme = this.estimationDetailsForm.controls['programmeName'].value;\r\n let category = this.estimationDetailsForm.controls['category'].value;\r\n // let vendor = this.estimationDetailsForm.controls['vendor'].value;\r\n let vendor = 0;\r\n this.getComponentDropdown(\r\n vendor,\r\n programme?.Program_Id,\r\n category?.categoryId\r\n );\r\n }\r\n\r\n getComponentDropdown(vendorId, programId, categoryId) {\r\n const reqBody = {\r\n VendorRegId: vendorId,\r\n ProgramId: programId,\r\n CategoryId: categoryId,\r\n };\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .getComponent(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.component = res.$values;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.component = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectComponent() {\r\n this.estimationDetailsForm.controls['sizePrice'].reset();\r\n this.sizePrice = [];\r\n this.estimationDetailsForm.controls['enteredQuantity'].reset();\r\n // this.estimationDetailsForm.controls['coveredArea'].reset();\r\n\r\n let programme = this.estimationDetailsForm.controls['programmeName'].value;\r\n let category = this.estimationDetailsForm.controls['category'].value;\r\n // let vendor = this.estimationDetailsForm.controls['vendor'].value;\r\n let vendor = 0;\r\n let component = this.estimationDetailsForm.controls['component'].value;\r\n this.getSizeAndPriceDropdown(\r\n vendor,\r\n programme?.Program_Id,\r\n category?.categoryId,\r\n component?.componentId\r\n );\r\n }\r\n\r\n getSizeAndPriceDropdown(vendorRegId, programId, categoryId, componentId) {\r\n const reqBody = {\r\n VendorRegId: vendorRegId,\r\n ProgramId: programId,\r\n CategoryId: categoryId,\r\n ComponentId: componentId,\r\n };\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .getSizeAndPrice(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.sizePrice = res.$values.map((val) => ({\r\n ...val,\r\n sizeOnly: val?.sizeAndPrice.split('and')[0],\r\n }));\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.sizePrice = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectSizePrice() {\r\n this.estimationDetailsForm.controls['enteredQuantity'].reset();\r\n // this.estimationDetailsForm.controls['coveredArea'].reset();\r\n\r\n let sizePrice = this.estimationDetailsForm.controls['sizePrice'].value;\r\n }\r\n\r\n addEstimateData() {\r\n if (this.estimationDetailsForm.valid) {\r\n let estimationVal = this.estimationDetailsForm.value;\r\n\r\n this.showErrMsgOfInvArea = false;\r\n this.invAreaMsg = null;\r\n\r\n if (estimationVal?.programmeName?.Program_Name == 'Portable Sprinkler') {\r\n if (estimationVal?.coveredArea > this.totalPortableAreaCount) {\r\n this.showErrMsgOfInvArea = true;\r\n this.invAreaMsg = `Covered area (i.e. ${estimationVal?.coveredArea} acres) for ${estimationVal?.programmeName?.Program_Name} can not be greater than total benefited area (i.e. ${this.totalPortableAreaCount} acres).`;\r\n return;\r\n }\r\n } else if (\r\n estimationVal?.programmeName?.Program_Name == 'Mini Sprinkler'\r\n ) {\r\n if (estimationVal?.coveredArea > this.totalMiniAreaCount) {\r\n this.showErrMsgOfInvArea = true;\r\n this.invAreaMsg = `Covered area (${estimationVal?.coveredArea}) for ${estimationVal?.programmeName?.Program_Name} can not be greater than total benefited area (${this.totalMiniAreaCount}).`;\r\n return;\r\n }\r\n } else if (estimationVal?.programmeName?.Program_Name == 'Drip') {\r\n if (estimationVal?.coveredArea > this.totalDripAreaCount) {\r\n this.showErrMsgOfInvArea = true;\r\n this.invAreaMsg = `Covered area (${estimationVal?.coveredArea}) for ${estimationVal?.programmeName?.Program_Name} can not be greater than total benefited area (${this.totalDripAreaCount}).`;\r\n return;\r\n }\r\n }\r\n\r\n // let totalPortableArea = 0;\r\n // let totalMiniArea = 0;\r\n // let totalDripArea = 0;\r\n\r\n // if(this.estimationTableData.length > 0){\r\n // this.estimationTableData.map(val => {\r\n // if(val.programmeName == \"Portable Sprinkler\"){\r\n // totalPortableArea += parseInt(val.coveredArea);\r\n // }else if(val.programmeName == \"Mini Sprinkler\"){\r\n // totalMiniArea += parseInt(val.coveredArea);\r\n // }else if(val.programmeName == \"Drip\"){\r\n // totalDripArea += parseInt(val.coveredArea);\r\n // }\r\n // })\r\n // }\r\n\r\n\r\n // if(estimationVal?.programmeName?.Program_Name == \"Portable Sprinkler\"){\r\n // totalPortableArea += parseInt(estimationVal.coveredArea);\r\n // }else if(estimationVal?.programmeName?.Program_Name == \"Mini Sprinkler\"){\r\n // totalMiniArea += parseInt(estimationVal.coveredArea);\r\n // }else if(estimationVal?.programmeName?.Program_Name == \"Drip\"){\r\n // totalDripArea += parseInt(estimationVal.coveredArea);\r\n // }\r\n\r\n\r\n // if(totalPortableArea > this.totalPortableAreaCount){\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: `You have entered large area ${estimationVal?.programmeName?.Program_Name}`,\r\n // });\r\n // return;\r\n // }else if(totalMiniArea > this.totalMiniAreaCount){\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: `You have entered large area ${estimationVal?.programmeName?.Program_Name}`,\r\n // });\r\n // return;\r\n // }else if(totalDripArea > this.totalDripAreaCount){\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: `You have entered large area ${estimationVal?.programmeName?.Program_Name}`,\r\n // });\r\n // return;\r\n // }\r\n\r\n this.estimationTableData.push({\r\n programmeId: estimationVal?.programmeName?.Program_Id,\r\n programmeName: estimationVal?.programmeName?.Program_Name,\r\n // vendorId: estimationVal?.vendor?.Vendor_Code,\r\n // vendorName: estimationVal?.vendor?.Name,\r\n CatID: estimationVal?.category?.categoryId,\r\n CatName: estimationVal?.category?.categoryName,\r\n ComponentID: estimationVal?.component?.componentId,\r\n ComponentName: estimationVal?.component?.componentName,\r\n SizeID: estimationVal?.sizePrice?.sizeId,\r\n // SizePriceName: estimationVal?.sizePrice?.sizeAndPrice,\r\n Size: estimationVal?.sizePrice?.sizeAndPrice.split('and')[0],\r\n // Price: estimationVal?.sizePrice?.sizeAndPrice\r\n // .split('and')[1]\r\n // .split(' ')[2],\r\n Quantity: estimationVal?.enteredQuantity,\r\n PerUnitCost: estimationVal?.perUnitCost,\r\n ConPrice: Number(Number(estimationVal?.perUnitCost) * Number(estimationVal?.enteredQuantity)).toFixed(2)\r\n // CoveredArea: estimationVal?.coveredArea,\r\n // Amount:\r\n // parseFloat(\r\n // estimationVal?.sizePrice?.sizeAndPrice.split('and')[1].split(' ')[2]\r\n // ) * estimationVal?.enteredQuantity,\r\n });\r\n\r\n // this.grandTotalCost = Number(this.estimationTableData.reduce((sum, d) => sum + (d['ConPrice'] || 0), 0))\r\n this.calculateGrandTotal();\r\n // setTimeout(()=> {\r\n // this.calculateGrandTotal();\r\n // }, 200)\r\n\r\n this.estimationDetailsForm.reset();\r\n this.category = [];\r\n this.component = [];\r\n this.sizePrice = [];\r\n } else {\r\n this.estimationDetailsForm.markAllAsTouched();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Fill Estimation Details Properly.',\r\n // });\r\n }\r\n }\r\n\r\n calculateGrandTotal(){\r\n this.grandTotalCost = 0;\r\n\r\n this.grandTotalCost = Number(this.estimationTableData.reduce((sum, d) => sum + Number(d.ConPrice), 0));\r\n this.grandTotalQuantity = this.estimationTableData.reduce((sum, d) => sum + (d['Quantity'] || 0), 0)\r\n }\r\n\r\n onDeleteEstimationRow(val, index) {\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n // message: `Do you want to remove Estimation of Vendor: ${val?.vendorName} and Amount ${val?.Amount}?`,\r\n message: `Do you want to remove estimation?`,\r\n header: 'Delete Confirmation',\r\n icon: 'pi pi-info-circle',\r\n acceptButtonStyleClass: 'p-button-danger p-button-text',\r\n rejectButtonStyleClass: 'p-button-text p-button-text',\r\n acceptIcon: 'none',\r\n rejectIcon: 'none',\r\n\r\n accept: () => {\r\n this.estimationTableData.splice(index, 1);\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n },\r\n });\r\n }\r\n\r\n toggleRow(rowData: any) {\r\n if (this.expandedRows[rowData.landDetails]) {\r\n delete this.expandedRows[rowData.landDetails];\r\n } else {\r\n this.expandedRows[rowData.landDetails] = true;\r\n }\r\n }\r\n\r\n onRowSelect(val) {\r\n let farmerDataArr = val.data\r\n this.selectedFarmerForEstimation = [farmerDataArr];\r\n\r\n\r\n if(farmerDataArr?.OutletAmount == null || val?.OutletAmount == 0){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Contact with the department.',\r\n });\r\n return;\r\n }\r\n\r\n this.calValidationForEstimation(this.selectedFarmerForEstimation);\r\n if(!this.chunkIdToGetData){\r\n this.estimationTableData = [];\r\n }\r\n\r\n }\r\n\r\n onRowUnselect(val) {\r\n this.selectedFarmerForEstimation = [];\r\n this.calValidationForEstimation(this.selectedFarmerForEstimation);\r\n this.estimationTableData = [];\r\n }\r\n\r\n clearGetData() {\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.estimationDetailsForm.reset();\r\n this.category = [];\r\n this.component = [];\r\n this.sizePrice = [];\r\n\r\n this.selectedOutletToGetData = null;\r\n this.selectedBenefitedAreaToGetData = null;\r\n this.agreementNoList = [];\r\n this.agreementNoToGetData = null;\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n\r\n this.estimationTableData = [];\r\n\r\n this.selectedFarmerForEstimation = [];\r\n }\r\n\r\n editPersonalDetails(val) {\r\n this.showUpdatePersonalDialog = true;\r\n this.selectedApplicationNo = val.APP_ID;\r\n this.selectedFarmerId = val.Farmer_ID;\r\n\r\n\r\n this.updatePersonalDetailsForm.patchValue({ name: val.Name });\r\n this.updatePersonalDetailsForm.patchValue({ fatherName: val.Father_name });\r\n this.updatePersonalDetailsForm.patchValue({ mobileNo: val.Mobile });\r\n\r\n this.updatePersonalDetailsForm.patchValue({ mfmbNo: val.MFMBNo });\r\n this.updatePersonalDetailsForm.patchValue({ pppId: val.PPP_ID });\r\n this.updatePersonalDetailsForm.patchValue({ casteCode: val.Caste_Code });\r\n\r\n // let village = this.villageList?.filter(val => val?.Code === val?.Village_Code)[0];\r\n let village = this.villageList?.find(({ val }) => val?.Code === val?.Village_Code);\r\n // this.updatePersonalDetailsForm.villageCode.setValue(village?.Name);\r\n // this.selectedVillage = village;\r\n\r\n this.updatePersonalDetailsForm.patchValue({ villageCode: village });\r\n this.updatePersonalDetailsForm.patchValue({ componentMaster: val.ProposedSystemId });\r\n this.updatePersonalDetailsForm.patchValue({ farmerCategory: val.FarmerCategory });\r\n\r\n this.updatePersonalDetailsForm.patchValue({ aadharNo: val.Aadhar_No });\r\n this.updatePersonalDetailsForm.patchValue({ aadharPhotoPath: val.Aadhaar_Copy_Upload });\r\n this.updatePersonalDetailsForm.patchValue({ isSubsidyAvailabe: val.IsSubsidyAvailabe });\r\n\r\n this.onSelectSubsidyAvailUpdate(val.IsSubsidyAvailabe);\r\n\r\n this.updatePersonalDetailsForm.patchValue({ installedSystem: val.InstalledSystem1 });\r\n this.updatePersonalDetailsForm.patchValue({ yearSubsudy: val.YearSubsudy });\r\n this.updatePersonalDetailsForm.patchValue({ onCostSubsidyBased: val.OnCostSubsidyBased });\r\n this.updatePersonalDetailsForm.patchValue({ departmentSubsidy: val.DepartmentSubsidy });\r\n }\r\n\r\n deletePersonalDetails(val) {\r\n let reqBody = {\r\n appId: val?.APP_ID,\r\n contractorId: this.contractorId,\r\n agreementNo: this.agreementNoToGetData?.AgreementNo,\r\n outletId: this.selectedOutletToGetData?.OutletId,\r\n ChunkId: this.chunkIdToGetData?.ChunkId ? this.chunkIdToGetData?.ChunkId : 0,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress\r\n }\r\n\r\n this.delConfirmatioMsg(reqBody);\r\n }\r\n\r\n delConfirmatioMsg(reqBody) {\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n message: `Do you want to delete ${reqBody?.appId} record? Once you delete this farmer data, estimation should also be deleted.`,\r\n header: 'Delete Confirmation',\r\n icon: 'pi pi-info-circle',\r\n acceptButtonStyleClass: \"p-button-danger p-button-text\",\r\n rejectButtonStyleClass: \"p-button-text p-button-text\",\r\n acceptIcon: \"none\",\r\n rejectIcon: \"none\",\r\n\r\n accept: () => {\r\n this.deleteFarmerPersonalData(reqBody);\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n }\r\n });\r\n }\r\n\r\n deleteFarmerPersonalData(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .deleteFarmerPersonalDetails(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n let resp: any = res;\r\n if (resp == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.estimationTableData = [];\r\n\r\n this.clearGetData();\r\n\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Error Message',\r\n detail: resp,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Delete(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${resp}`, JSON.stringify(reqBody));\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Delete Error(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${err}`, JSON.stringify(reqBody));\r\n },\r\n });\r\n }\r\n\r\n onCloseUpdatePerDialog() {\r\n this.showUpdatePersonalDialog = false;\r\n }\r\n\r\n onClickAgreementNo() {\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let contractorId = this.selectedOutletToGetData?.ContractorCode;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n\r\n this.getChunkIdsList(contractorId, agreementNo, outletId, this.userId, '');\r\n }\r\n\r\n getChunkIdsList(contractorId, agreementNo, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getChunkIds(contractorId, agreementNo, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.chunkList = res.map(val => ({\r\n ...val,\r\n combineData: `${val?.ChunkId}. ${val?.FarmerName} (${val?.AppId})`\r\n }));\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.chunkList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n
\r\n

{{ 'Add Farmer Details' |\r\n translate }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{'Personal Details' | translate}}\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n {{'FARMER_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n {{'FATHERS_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'MOBILE_NO_IS_REQUIRED'\r\n | translate}}
\r\n\r\n
\r\n {{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MBILE_NO_SHOULD_CONTAIN'\r\n | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MFMB_NO_REQUIRED' |\r\n translate}}
\r\n
\r\n {{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'PPP_ID_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n {{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
\r\n {{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'CASTE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n {{'VILLAGE_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n {{'PROPOSED_SYETEM_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n {{'COMPONENT_MASTER_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'AADHAR_NO_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'AADHAR_PHOTO_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'IS_SUBSIDY_AVAILED_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n {{'SYETEM_INSTALLED_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'YEAR_IS_REQUIRED'|\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'IS_SUBSIDY_AVAILED_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'DEPARTMANT_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
0\" class=\"p-fluid mt-2 card land-details-card\">\r\n
\r\n {{'PAST_SUBSIDY_LIST'| translate}}{{ personalDetailsForm.controls['aadharNo'].value }}
\r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'AREA'| translate}}\r\n {{'LAND_DETAILS'| translate}}\r\n {{'SYSTEM'| translate}}\r\n {{'SUBSIDY_YEAR'| translate}}\r\n {{'DEPARTMENT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{product?.AppId}}\r\n {{product?.Area}}\r\n {{product?.LandDetail}}\r\n {{product?.System}}\r\n {{product?.SubsidyYear}}\r\n {{product?.Department}}\r\n \r\n \r\n \r\n\r\n
\r\n {{'SHOW_INVALID_FARMER_MSG'| translate}} {{ personalDetailsForm.controls['aadharNo'].value }} {{\r\n 'CAN_NOT_PROCEED' | translate}}
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n {{'Land Details' | translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MORABBA_NUMBER_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'KILLA_NUMBER_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'KANNALS_IS_REQUIRED'| translate}}
\r\n
{{'KANAL_CANNOT_BE_GREATER'| translate}}.
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MARLAS_IS_REQUIRED'| translate}}
\r\n
{{'MARLAS_SHOULD_NOT_BE_GREATER'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
4\" class=\"invalid-feedback\">\r\n
{{'MAXIMUM_4_CROP_IS_ALLOWED_YOU_SELECTED'| translate}} {{ selectedNodes1.length }}\r\n
\r\n
\r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
{{'CHOOSE_AND_UPLOAD_LAND_DOCUMENT'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
0\">\r\n\r\n \r\n\r\n \r\n \r\n \r\n {{'MORABBA_NUMBER'| translate}}\r\n {{'KILLA_NUMBER'| translate}}\r\n {{'Kanals'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n {{'CROP'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'LAND_DOC'| translate}}\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{product?.morabbaNumber}}\r\n {{product?.killaNumber}}\r\n {{product?.kanals}}\r\n {{product?.totalArea}}\r\n {{product?.cropValue}}\r\n {{product?.village}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n

{{ 'Add Estimation' |\r\n translate }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
0\" class=\"field col-12 md:col-3\">\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
0\">\r\n

{{ 'Added Farmer\r\n Details' | translate }} {{ 'of ' }}{{ this.selectedOutletToGetData?.Outlets }} {{ ' & Agreement No:'}} {{\r\n agreementNoToGetData?.AgreementNo }}

\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'APP_ID'| translate}}\r\n \r\n {{'FARMER_NAME'| translate}}\r\n {{'FATHERS_NAME'| translate}}\r\n {{'AADHAR_NO'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'PPP_ID'| translate}}\r\n {{'MFMB_NO'| translate}}\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.APP_ID}}\r\n \r\n {{product?.Name}}\r\n {{product?.Father_name}}\r\n {{product?.Aadhar_No}}\r\n {{product?.Mobile}}\r\n {{product?.PPP_ID}}\r\n {{product?.MFMBNo}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

\r\n Outlet Amount Per Hec is Rs. {{ addedFarmerData[0].OutletAmountPerHA }}/-.\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n
0 && selectedFarmerForEstimation[0].OutletAmount != null\">\r\n \r\n \r\n
\r\n
{{\r\n ''| translate}}
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'TOTAL_BENEFITED_AREA'| translate}}\r\n {{'TOTAL_BENEFICIARIES'| translate}}\r\n \r\n \r\n \r\n \r\n {{product?.progName}}\r\n {{product?.totaAreaCount}}\r\n {{product?.totalCount}}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
0 && selectedFarmerForEstimation[0].OutletAmount != null\">\r\n
\r\n
\r\n

{{ 'Estimation\r\n Details' | translate }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'PROGRAMME_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n {{'CATEGORY_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n {{'COMPONENT_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n {{'SIZE_PRICE_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n = 48 && event.charCode <= 57\" title=\"Numbers only\"\r\n pInputText required\r\n [ngClass]=\"{ 'ng-invalid ng-dirty': estimationDetailsForm.controls['enteredQuantity'].touched && estimationDetailsForm.controls['enteredQuantity'].value < 1 }\">\r\n
\r\n
\r\n
\r\n {{'QUANTITY_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n {{'NOTE_ON_INVALID_QUANTITY' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{'PER_UNIT_COST_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n {{'NOTE_ON_INVALID_QUANTITY' |\r\n translate}}
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {{'COVERED_AREA_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n {{'Covered Area Must be Greater than 0' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
{{ invAreaMsg }}
\r\n
\r\n
\r\n\r\n
0\" class=\"card dashboardTable\" style=\"margin: 5px;\">\r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n {{'CATEGORY_NAME'| translate}}\r\n {{'COMPONENT_NAME'| translate}}\r\n {{'SIZE'| translate}}\r\n \r\n {{'QUANTITY'| translate}}\r\n {{'PER_UNIT_COST'| translate}}\r\n {{'TOTAL_AMOUNT'| translate}}\r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.programmeName}}\r\n \r\n {{product.CatName}}\r\n {{product.ComponentName}}\r\n {{product.Size}}\r\n \r\n {{product.Quantity}}\r\n {{product.PerUnitCost}}\r\n {{product.ConPrice | currency:'INR'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Grand Total:\r\n \r\n {{ grandTotalCost | currency:'INR' }}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n \r\n {{ 'App Id' | translate}} {{ ' ' }} ( {{ selectedApplicationNo }} )\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n {{'FARMER_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n {{'FATHERS_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'MOBILE_NO_IS_REQUIRED'\r\n | translate}}
\r\n\r\n
\r\n {{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MBILE_NO_SHOULD_CONTAIN'\r\n | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MFMB_NO_REQUIRED' |\r\n translate}}
\r\n
\r\n {{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'PPP_ID_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n {{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
\r\n {{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'CASTE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n {{'VILLAGE_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'PROPOSED_SYETEM_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'COMPONENT_MASTER_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'AADHAR_NO_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'AADHAR_PHOTO_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'IS_SUBSIDY_AVAILED_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'SYETEM_INSTALLED_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'YEAR_IS_REQUIRED'|\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'IS_SUBSIDY_AVAILED_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n {{'DEPARTMANT_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
0\" class=\"p-fluid mt-2 card land-details-card\">\r\n
\r\n {{'PAST_SUBSIDY_LIST'| translate}}{{ personalDetailsForm.controls['aadharNo'].value }}
\r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'AREA'| translate}}\r\n {{'LAND_DETAILS'| translate}}\r\n {{'SYSTEM'| translate}}\r\n {{'SUBSIDY_YEAR'| translate}}\r\n {{'DEPARTMENT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{product?.AppId}}\r\n {{product?.Area}}\r\n {{product?.LandDetail}}\r\n {{product?.System}}\r\n {{product?.SubsidyYear}}\r\n {{product?.Department}}\r\n \r\n \r\n \r\n\r\n
0\" style=\"color:rgb(249, 55, 55); font-size: '1.2rem'; font-weight: bold; font-family: 'Times New Roman', Times, serif;\"\r\n class=\"px-3\">\r\n {{'SHOW_INVALID_FARMER_MSG'| translate}} {{ personalDetailsForm.controls['aadharNo'].value }} {{\r\n 'CAN_NOT_PROCEED' | translate}}
\r\n
\r\n
\r\n \r\n\r\n\r\n\r\n\r\n \r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-update-work',\r\n templateUrl: './update-work.component.html',\r\n styleUrls: ['./update-work.component.scss']\r\n})\r\nexport class UpdateWorkComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

update-work works!

\r\n","import { first, shareReplay } from 'rxjs';\r\nimport { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport saveAs from 'file-saver';\r\n\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.scss']\r\n})\r\nexport class DashboardComponent implements OnInit {\r\n @ViewChild('dashboardTable', { static: true })\r\n public dashboardTable: Table;\r\n\r\n farmerAppDetails: any = [];\r\n farmerDetails: any;\r\n formData: any;\r\n village: any;\r\n villageList = [];\r\n filteredData: any[];\r\n isAtalbhujal: any;\r\n farmerId: any;\r\n farmerMobile: any;\r\n applicationDetails: any;\r\n appId: any;\r\n miDetailsByAppId: any;\r\n _appID: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n public appVerificationItems: MenuItem[];\r\n public appVerificationModel: any;\r\n public cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public exportColumns: { title: string; dataKey: string; }[];\r\n private farmerConfData: any;\r\n\r\n constructor(\r\n public router: Router,\r\n private dashboard: DashboardService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private confirmationService: ConfirmationService,\r\n private productService: BankDetailService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService,\r\n private cdref: ChangeDetectorRef,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n this.farmerConfData = new Map(encData);\r\n\r\n this.farmerMobile = this.farmerConfData.get('farmerPh');\r\n\r\n // this.loadDataAndApplyFilter();\r\n this.loadData();\r\n\r\n //test start\r\n //this.farmerAppDetails.forEach(e => {\r\n // this.getMIDetailByAppID(this.farmerAppDetails.appID);\r\n // })\r\n //this.getMIDetailByAppID();\r\n\r\n //test end\r\n // this.getMIDetailByAppID(this._appID);\r\n // console.log(\"FarmerAppDetails\",this.farmerAppDetails[0]?.appID);\r\n // this._appID=this.farmerAppDetails[0]?.appID;\r\n // console.log(\"_appID\",this._appID)\r\n // this.dashboard\r\n // .getMIDetailByAppID(this._appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.miDetailsByAppId = res;\r\n // console.log(\"miDetailsByAppId\", this.miDetailsByAppId);\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"dashboard_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"dashboard_report\");\r\n }\r\n },\r\n ];\r\n\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n this.loadData();\r\n\r\n this.selectedYear = res;\r\n this.dashboardTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n refreshTable() {\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n let AtalbhujalRole: any = sessionStorage.getItem('isAtalBhujal');\r\n // let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n // let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.appId= JSON.parse(payload)?.sub;\r\n // this.appId=t his.appID;\r\n\r\n if (AtalbhujalRole == \"1\") {\r\n this.isAtalbhujal = true;\r\n let userId = sessionStorage.getItem('userId');\r\n this.getFarmerAppDetailsByAtalLogin(userId);\r\n }\r\n else {\r\n this.getFarmerPhone();\r\n }\r\n }\r\n\r\n ngAfterContentChecked() {\r\n this.cdref.detectChanges();\r\n }\r\n\r\n getFarmerAppDetailsByAtalLogin(userId: any) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.dashboard.getApplicationByAtal(userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n res.forEach(e => {\r\n e.registerationDate = new Date(e.registerationDate)\r\n e.registerationDate_filter = e.registerationDate.toString().substring(4, 15)\r\n })\r\n this.farmerAppDetails = res;\r\n this.appVerificationModel = this.farmerAppDetails;\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"appdetails\", this.farmerAppDetails);\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n }\r\n })\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onAtalbhujalFarmer() {\r\n sessionStorage.removeItem('farmerDetails');\r\n sessionStorage.removeItem('userID');\r\n sessionStorage.removeItem('farmerPh');\r\n sessionStorage.removeItem(\"isFarmerLogin\");\r\n\r\n // new confidentidal encrypted data\r\n sessionStorage.removeItem('dataF')\r\n \r\n this.router.navigate(['/phone-login']);\r\n }\r\n\r\n getFarmerPhone() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.productService.getFarmerIdByMobileNo(this.farmerMobile).subscribe(resp => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if (resp.statusCode === 200) {\r\n // this.activityRecordService.activityRecord(this.farmerMobile, 'Farmer Dashboard', '', new Date(), 'Success');\r\n let far = JSON.parse(resp.data);\r\n if (far.length > 0) {\r\n this.farmerId = far[0].Farmer_ID;\r\n this.getDetailsByFarmerId();\r\n\r\n this.farmerConfData.set(\"farmerId\", this.farmerId);\r\n\r\n const dataF = JSON.stringify(Array.from(this.farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n }\r\n }\r\n else {\r\n this.activityRecordService.activityRecord(this.farmerMobile, 'Dashboard', '', new Date(), 'Invalid');\r\n }\r\n }, err => {\r\n // this.loader.close();\r\n this.loading = false;\r\n })\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getDetailsByFarmerId() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.dashboard.getApplicationByFarmerId(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n res.forEach(e => {\r\n e.registerationDate = new Date(e.registerationDate)\r\n e.registerationDate_filter = e.registerationDate.toString().substring(4, 15)\r\n })\r\n\r\n // console.log(res, \"result\")\r\n this.farmerAppDetails = res;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.appVerificationModel = this.farmerAppDetails;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n }\r\n });\r\n\r\n // this.subscriptions.push(sub);\r\n }\r\n\r\n getVillageData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // console.log(res);\r\n this.villageList = res;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.FarmersDetailsService();\r\n this.filteredData = [...this.villageList];\r\n // console.log(\"fil\", this.filteredData);\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n }, err => {\r\n // this.loader.close();\r\n this.loading = false;\r\n })\r\n }\r\n\r\n FarmersDetailsService() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.dashboard.GetAllFarmerDetails()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log(\"details\", res);\r\n this.farmerDetails = res;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.formData = this.farmerDetails.find(x => x.Farmer_ID == this.farmerDetails[0].Farmer_ID);\r\n this.village = this.villageList.find(x => x.Code == this.formData.Village_Code);\r\n // debugger;\r\n // console.log(\"formData\", this.village);\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n }\r\n })\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n editForm(appId) {\r\n this.router.navigate(['farmer/farmers-application', appId])\r\n }\r\n\r\n deleteForm(appId) {\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n // console.log(\"Hello\")\r\n // console.log(appId)\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard.deleteFarmerApplicationByAppId(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: data });\r\n this.loadData();\r\n this.activityRecordService.activityRecord(this.farmerMobile, 'Delete Farmer Application', appId, new Date(), data);\r\n\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.activityRecordService.activityRecord(this.farmerMobile, 'Delete Farmer Application', appId, new Date(), err);\r\n\r\n this.loading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n // getMIDetailByAppID() {\r\n // }\r\n\r\n // printForm(appId,vendorId,programId,userId,autoId,statusCode) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(['dashboard', 'print',appId,vendorId,programId,userId,autoId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n // }\r\n printForm(appId, statusCode) {\r\n if (appId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard\r\n .getMIDetailByAppID(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n this.router.navigate(['farmer', 'dashboard', 'print', this.cryptoJsService.Encrypt(appId), res[0]?.VendorId, res[0]?.ProgId, res[0]?.User_ID, res[0]?.AutoId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(['dashboard', 'print',appId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n // console.log(modelData, \"modelDatamodelDatamodelData\")\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"App Id\": d.appID,\r\n \"farmerName\": d.farmerName,\r\n \"Reg Date\": d.registerationDate_filter,\r\n \"village\": d.village,\r\n \"Block\": d.block,\r\n \"District\": d.district,\r\n \"Status\": d.status,\r\n \"Remarks\": d.remarks,\r\n \"Fin Year\": d.FinYear,\r\n }\r\n })\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"export\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'App Id' },\r\n { field: 'farmerName', header: 'farmerName' },\r\n { field: 'registerationDate_filter', header: 'Reg Date' },\r\n { field: 'village', header: 'village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'FinYear', header: 'Fin Year' },\r\n\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n}\r\n\r\n\r\n","\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_FARMERS_APPLICATION'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_NO'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DATE_OF_REG'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{ farmerAppDetail.appID }}\r\n {{ farmerAppDetail.farmerName }}\r\n {{ farmerAppDetail.registerationDate | date }}\r\n {{ farmerAppDetail.village }}\r\n {{ farmerAppDetail.block }}\r\n {{ farmerAppDetail.district }}\r\n {{ farmerAppDetail.status }}\r\n {{ farmerAppDetail.remarks }}\r\n {{ farmerAppDetail.FinYear}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n
","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport saveAs from 'file-saver';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-application-type-report',\r\n templateUrl: './application-type-report.component.html',\r\n styleUrls: ['./application-type-report.component.scss']\r\n})\r\nexport class ApplicationTypeReportComponent implements OnInit {\r\n // @ViewChild('table1', { static: true });\r\n @ViewChild('tableContainer1') tableContainer1: ElementRef;\r\n @ViewChild('tableContainer2') tableContainer2: ElementRef;\r\n @ViewChild('tableContainer3') tableContainer3: ElementRef;\r\n\r\n exportMenuItemsT1: MenuItem[];\r\n exportMenuItemsT2: MenuItem[];\r\n exportMenuItemsT3: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public userId: any;\r\n\r\n // public table1: Table;\r\n // public table2: Table;\r\n public dataTable0: any = [];\r\n public dataTableBeforeFilter: any = [];\r\n public dataTable1: any = [];\r\n public dataTable2: any = [];\r\n public dataTable3: any = [];\r\n public dataTable3Header: any;\r\n\r\n public loading0: boolean = false;\r\n public loading1: boolean = false;\r\n public loading2: boolean = false;\r\n public loading3: boolean = false;\r\n\r\n public showTable0: boolean = true;\r\n public showTable1: boolean = false;\r\n public showTable2: boolean = false;\r\n public showTable3: boolean = false;\r\n\r\n public selectedT1Row: any;\r\n public selectedT2Row: any;\r\n\r\n public TotalTargetDays: number = 0;\r\n public TotalTimeTaken: number = 0;\r\n public TotalExtra_Time_Taken: number = 0;\r\n public TotalDelay_at_Department: number = 0;\r\n public TotalDelay_at_farmer_end: number = 0;\r\n public TotalDelay_at_Vendor_end: number = 0;\r\n \r\n public delayAtVendorPresent: boolean = false;\r\n public programmeNamePresent: boolean = false;\r\n\r\n constructor(\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loadTable1Data();\r\n this.exportMenuItemsT1 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel1(this.dataTable1, 'Time Line Report');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf1(\r\n this.dataTable1,\r\n 'Time Line Report'\r\n );\r\n },\r\n },\r\n ];\r\n\r\n this.exportMenuItemsT2 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel2(this.dataTable2, `${this.selectedT1Row?.Application_Type} of ${this.selectedT1Row?.District}`);\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf2(\r\n this.dataTable2,\r\n `${this.selectedT1Row?.Application_Type} of ${this.selectedT1Row?.District}`\r\n );\r\n },\r\n },\r\n ];\r\n\r\n this.exportMenuItemsT3 = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel3(this.dataTable3, 'Time Line Detail Report');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf3(\r\n this.dataTable3,\r\n 'Time Line Detail Report'\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n loadTable1Data(){\r\n this.loading0 = true;\r\n this.deptDashBoardService\r\n .getDistWiseAvgTimeConsumed()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'District Wise Avg Time Line Report', '', new Date(), 'Success');\r\n\r\n if (data.length > 0) {\r\n this.dataTableBeforeFilter = data;\r\n\r\n let averageTotalAppMI = 0;\r\n let averageTotalAppPond = 0;\r\n let averageTargetDaysMI = 0;\r\n let averageTargetDaysPond = 0;\r\n\r\n data.forEach(val => {\r\n if(val.Application_Type == \"MI Application\"){\r\n averageTotalAppMI += val.Total_Application;\r\n averageTargetDaysMI += val.Target_Days;\r\n }\r\n else if(val.Application_Type == 'Pond Application'){\r\n averageTotalAppPond += val.Total_Application;\r\n averageTargetDaysPond += val.Target_Days;\r\n }\r\n })\r\n\r\n console.log(averageTotalAppMI, averageTotalAppPond, averageTotalAppMI, averageTotalAppPond)\r\n this.dataTable0 = [\r\n {\r\n Application_Type: 'MI Application',\r\n Total_Application: averageTotalAppMI,\r\n Total_Target_Days: averageTargetDaysMI\r\n },\r\n {\r\n Application_Type: 'Pond Application',\r\n Total_Application: averageTotalAppPond,\r\n Total_Target_Days: averageTargetDaysPond\r\n }\r\n ]\r\n \r\n this.dataTable2 = [];\r\n this.dataTable3 = [];\r\n this.loading0 = false;\r\n }\r\n else{\r\n this.dataTable0 = [];\r\n this.dataTable1 = [];\r\n this.dataTable2 = [];\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n this.loading0 = false;\r\n }\r\n },\r\n error: (err) => {\r\n this.dataTable1 = [];\r\n this.dataTable2 = [];\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n this.loading0 = false;\r\n this.activityRecordService.activityRecord(this.userId, 'District Wise Avg Time Line Report', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n },\r\n });\r\n }\r\n\r\n refreshTable1(){\r\n this.loadTable1Data();\r\n this.showTable1 = false;\r\n this.showTable2 = false;\r\n this.showTable3 = false;\r\n }\r\n\r\n onClickfirstTableRow(row){\r\n this.showTable2 = true;\r\n this.showTable3 = false;\r\n setTimeout( () => this.tableContainer2.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n \r\n this.selectedT1Row = row;\r\n \r\n let reqBody = {\r\n AppId: '',\r\n Program: row.Application_Type == 'MI Application' ? 'MI' : row.Application_Type == 'Pond Application' ? 'Pond' : '',\r\n District: row?.District ? row?.District : ''\r\n }\r\n\r\n this.dataTable2 = [];\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n this.loadTable2Data(reqBody);\r\n } \r\n\r\n onClickSecondTableRow(row){\r\n this.showTable3 = true;\r\n setTimeout( () => this.tableContainer3.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n \r\n this.selectedT2Row = row;\r\n \r\n let reqBody = {\r\n AppId: row?.AppId ? row?.AppId : '',\r\n Program: this.selectedT1Row.Application_Type == 'MI Application' ? 'MI' : this.selectedT1Row.Application_Type == 'Pond Application' ? 'Pond' : '',\r\n }\r\n\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n this.loadTable3Data(reqBody);\r\n }\r\n\r\n\r\n loadTable2Data(reqBody ){\r\n this.loading2 = true;\r\n this.deptDashBoardService\r\n .getDistWiseAvgTimeConsumedProgram(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading2 = false;\r\n \r\n \r\n if(data.length > 0) {\r\n this.delayAtVendorPresent = Object.keys(data[0]).includes('Delay_at_Vendor_end');\r\n this.programmeNamePresent = Object.keys(data[0]).includes('ProgrammeName');\r\n\r\n data.forEach((data) => {\r\n this.TotalTargetDays += data?.TargetDays ,\r\n this.TotalTimeTaken += data?.TimeTaken,\r\n this.TotalExtra_Time_Taken += data?.Extra_Time_Taken,\r\n this.TotalDelay_at_Department += data?.Delay_at_Department,\r\n this.TotalDelay_at_farmer_end +=data?.Delay_at_farmer_end,\r\n this.TotalDelay_at_Vendor_end += data?.Delay_at_Vendor_end\r\n })\r\n \r\n this.dataTable2 = data;\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n }else{\r\n this.dataTable2 = [];\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n }\r\n \r\n this.activityRecordService.activityRecord(this.userId, `${this.selectedT1Row?.Application_Type} of ${this.selectedT1Row?.District}`, '', new Date(), 'Success', reqBody);\r\n\r\n },\r\n error: (err) => {\r\n this.dataTable2 = [];\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n this.loading2 = false;\r\n this.activityRecordService.activityRecord(this.userId, `${this.selectedT1Row?.Application_Type} of ${this.selectedT1Row?.District}`, '', new Date(), err, reqBody);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n loadTable3Data(reqBody ){\r\n this.loading3 = true;\r\n this.deptDashBoardService\r\n .getWorkflowAllStatusByAppId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading3 = false;\r\n this.activityRecordService.activityRecord(this.userId, 'District Wise Avg Time Line Report Details', '', new Date(), 'Success', reqBody);\r\n\r\n if(data.length > 0) {\r\n this.dataTable3 = data;\r\n this.dataTable3Header = data[0];\r\n }else{\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n }\r\n },\r\n error: (err) => {\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n this.loading3 = false;\r\n this.activityRecordService.activityRecord(this.userId, 'District Wise Avg Time Line Report Details', '', new Date(), err, reqBody);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // Export excel and pdf\r\n exportExcel1(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'District': d.District,\r\n 'Application Type': d.Application_Type,\r\n 'Total Application': d.Total_Application,\r\n 'Target Days': d.Target_Days,\r\n 'Average Time Taken (days)': d.Average_Time_Taken,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n exportExcel2(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'AppId': d.AppId,\r\n 'ProgrammeName': d?.ProgrammeName,\r\n 'LastAction': d.LastAction,\r\n 'LastLevelId': d.LastLevelId,\r\n 'Target Days': d.TargetDays,\r\n 'Time Taken': d.TimeTaken,\r\n 'Extra Time Taken': d.Extra_Time_Taken,\r\n 'Delay at Department End': d.Delay_at_Department,\r\n 'Delay at farmer End': d.Delay_at_farmer_end,\r\n 'Delay at Vendor End': d.Delay_at_Vendor_end,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n exportExcel3(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Action': d.Action,\r\n 'Level_Id': d.Level_Id,\r\n 'UserName': d.UserId,\r\n 'TargetDays': d.TargetDays,\r\n 'TimeTaken': d.TimeTaken,\r\n 'AssignedDate': d.AssignedDate,\r\n 'Action_Date': d.Action_Date,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n downloadSheetAsPdf1(modelData, filename) {\r\n this.cols = [\r\n { field: 'District', header: 'District' },\r\n { field: 'Application_Type', header: 'Application_Type' },\r\n { field: 'Total_Application', header: 'Total_Application' },\r\n { field: 'Target_Days', header: 'Target_Days' },\r\n { field: 'Average_Time_Taken', header: 'Average_Time_Taken' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 10 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n downloadSheetAsPdf2(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppId', header: 'AppId' },\r\n { field: 'ProgrammeName', header: 'ProgrammeName' },\r\n { field: 'LastAction', header: 'LastAction' },\r\n { field: 'LastLevelId', header: 'LastLevelId' },\r\n { field: 'TargetDays', header: 'TargetDays' },\r\n { field: 'TimeTaken', header: 'TimeTaken' },\r\n { field: 'Extra_Time_Taken', header: 'Extra_Time_Taken' },\r\n { field: 'Delay_at_Department', header: 'Delay at Department End' },\r\n { field: 'Delay_at_farmer_end', header: 'Delay at Farmer End' },\r\n { field: 'Delay_at_Vendor_end', header: 'Delay at Vendor End' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n downloadSheetAsPdf3(modelData, filename) {\r\n this.cols = [\r\n { field: 'Action', header: 'Action' },\r\n { field: 'Level_Id', header: 'Level_Id' },\r\n { field: 'UserId', header: 'UserName' },\r\n { field: 'TargetDays', header: 'TargetDays' },\r\n { field: 'TimeTaken', header: 'TimeTaken' },\r\n { field: 'AssignedDate', header: 'AssignedDate' },\r\n { field: 'Action_Date', header: 'Action_Date' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Remarks', header: 'Remarks' }, \r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n\r\n onClickZeroTableRow(val){\r\n console.log('onClickZeroTableRow', val);\r\n \r\n this.dataTable1 = [];\r\n this.dataTable2 = [];\r\n this.dataTable3 = [];\r\n this.dataTable3Header = null;\r\n\r\n this.showTable1 = true;\r\n this.showTable2 = false;\r\n this.showTable3 = false;\r\n this.loading1 = true;\r\n\r\n setTimeout( () => this.tableContainer1.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n if(this.dataTableBeforeFilter.length > 0){\r\n if(val.Application_Type == 'MI Application'){\r\n this.dataTable1 = this.dataTableBeforeFilter.filter(item => item.Application_Type == 'MI Application');\r\n }\r\n else if(val.Application_Type == 'Pond Application'){\r\n this.dataTable1 = this.dataTableBeforeFilter.filter(item => item.Application_Type == 'Pond Application');\r\n }\r\n else{\r\n this.dataTable1 = [];\r\n }\r\n this.loading1 = false;\r\n }\r\n else{\r\n this.dataTable1 = [];\r\n this.loading1 = false;\r\n }\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
{{ 'HARYANA_STATE_AVERAGE_TIME_LINE_REPORT'| translate }}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATIONS'|\r\n translate}}\r\n \r\n \r\n \r\n {{'TOTAL_TARGET_DAYS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{val.Application_Type}}\r\n \r\n \r\n {{val.Total_Application}}\r\n \r\n \r\n {{val.Total_Target_Days}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_AVERAGE_TIME_LINE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'AVERAGE_TIME_TAKEN'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{val.District}}\r\n \r\n \r\n \r\n {{val.Application_Type}}\r\n \r\n \r\n {{val.Total_Application}}\r\n \r\n \r\n {{val.Target_Days}}\r\n \r\n \r\n {{val.Average_Time_Taken}}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n

{{ \"NOTE: Please Scroll Up to move on previous table. Don't go back.\" | translate}}

\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{ selectedT1Row?.Application_Type + ' of ' + selectedT1Row?.District }}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'|\r\n translate}}\r\n \r\n \r\n \r\n {{'LAST_ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LAST_LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'TIME_TAKEN'| translate}}\r\n \r\n \r\n \r\n {{'EXTRA_TIME_TAKEN'| translate}}\r\n \r\n \r\n \r\n {{'DELAY_AT_DEPT_END'| translate}}\r\n \r\n \r\n \r\n {{'DELAY_AT_FARMER_END'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DELAY_AT_VENDOR_END'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{val.AppId}}\r\n \r\n \r\n {{val.ProgrammeName}}\r\n \r\n \r\n {{val.LastAction}}\r\n \r\n \r\n {{val.LastLevelId}}\r\n \r\n \r\n {{val.TargetDays}}\r\n \r\n \r\n {{val.TimeTaken}}\r\n \r\n \r\n {{val.Extra_Time_Taken}}\r\n \r\n \r\n {{val.Delay_at_Department}}\r\n \r\n \r\n {{val.Delay_at_farmer_end}}\r\n \r\n \r\n {{val.Delay_at_Vendor_end}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n

{{ \"NOTE: Please Scroll Up to move on previous table. Don't go back.\" | translate}}

\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'TIME_TAKEN'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{val.Action}}\r\n \r\n \r\n {{val.Level_Id}}\r\n \r\n \r\n {{val.UserId}}\r\n \r\n \r\n {{val.TargetDays}}\r\n \r\n \r\n {{val.TimeTaken}}\r\n \r\n \r\n {{val.AssignedDate}}\r\n \r\n \r\n {{val.Action_Date}}\r\n \r\n \r\n {{val.Status}}\r\n \r\n \r\n {{val.Remarks}}\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-approve-farmers-challan',\r\n templateUrl: './approve-farmers-challan.component.html',\r\n styleUrls: ['./approve-farmers-challan.component.scss']\r\n})\r\n\r\nexport class ApproveFarmersChallanComponent implements OnInit {\r\n @ViewChild('appFarmerChallanTable', { static: true })\r\n public appFarmerChallanTable: Table;\r\n\r\n public selectedApplications: any = [];\r\n public appFarmerChallanModel: any = [];\r\n public viewChallan: boolean = false;\r\n\r\n public currentDate: Date;\r\n\r\n public challanPrintData: any = [];\r\n public remarks: any;\r\n public totalFarmerShareAmount: any = 0;\r\n\r\n public appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public date: any;\r\n public selectedData: any[];\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadData(); \r\n\r\n this.date = new Date();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.selectedApplications,\r\n `Selected Data For Bank Challan (${this.date})`\r\n );\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.selectedApplications,\r\n `Selected Data For Bank Challan (${this.date})`\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n loadData() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getDataToPrintMultipleChallanAtal('Generated')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => { \r\n this.appFarmerChallanModel = data;\r\n this.loader.close();\r\n this.appFarmerChallanModel = this.appFarmerChallanModel.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.AppId.concat(\"_\", row.ProgID) , \r\n }))\r\n console.log('dataa', this.appFarmerChallanModel);\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Applications not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calSum();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calSum();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n // printChallan() {\r\n // console.log('printChallan', this.selectedApplications);\r\n // if (\r\n // this.selectedApplications.length == 0 ||\r\n // this.selectedApplications == null\r\n // ) {\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'No Application is selected',\r\n // detail: 'Select the Application first.',\r\n // });\r\n // } else {\r\n // let reqBody: any = [];\r\n // this.selectedApplications.forEach((val) => {\r\n // reqBody.push({ appId: val.appID, progID: val.progID });\r\n // });\r\n // this.printMultipleChallanAtal(reqBody);\r\n // this.viewChallan = true;\r\n // }\r\n // }\r\n\r\n calSum() {\r\n this.totalFarmerShareAmount = 0;\r\n this.selectedApplications.forEach((val) => {\r\n this.totalFarmerShareAmount += val.FarmerShare;\r\n });\r\n }\r\n\r\n printMultipleChallanAtal(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .printMultipleChallanAtal(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.currentDate = new Date();\r\n this.challanPrintData = data;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onPrint(divName) {\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n document.body.style.visibility=\"hidden\";\r\n document.getElementById(divName).style.visibility='visible'\r\n window.print();\r\n document.body.style.visibility=\"visible\";\r\n }\r\n\r\n onBack() {\r\n this.viewChallan = false;\r\n }\r\n\r\n onSubmit() {\r\n console.log('selectedApplications', this.selectedApplications);\r\n\r\n this.selectedData = [];\r\n\r\n this.selectedApplications.forEach((row) => {\r\n this.selectedData.push({\r\n appID: row.AppId,\r\n farmerId: row.FarmerId,\r\n programID: row.ProgID,\r\n });\r\n });\r\n\r\n let reqBody = {\r\n list: this.selectedData,\r\n remarks: this.remarks ? this.remarks : \"\",\r\n };\r\n console.log('reqBody', reqBody);\r\n\r\n this.approveOtherUsersChallan(reqBody);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppId', header: 'Application ID' },\r\n { field: 'FarmerId', header: 'Farmer Id' },\r\n { field: 'ProgID', header: 'Programme ID' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'VendorName', header: 'Vendor Name' },\r\n { field: 'AppUserType', header: 'App User Type' },\r\n { field: 'ChallanStatus', header: 'Challan Status' },\r\n { field: 'MIArea', header: 'MIArea' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'District', header: 'District' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Application Id': d.AppId,\r\n 'Farmer Id': d.FarmerId,\r\n 'Programme ID': d.ProgID,\r\n 'Programme Name': d.ProgrammeName,\r\n 'Vendor Name': d.VendorName,\r\n 'App User Type': d.AppUserType,\r\n 'Challan Status': d.ChallanStatus,\r\n 'MI Area': d.MIArea,\r\n Village: d.Village,\r\n Block: d.Block,\r\n District: d.District,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n approveOtherUsersChallan(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .approveOtherUsersChallan([reqBody])\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_BANK_CHALLAN'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AppId}}\r\n {{product.VendorName}}\r\n {{product.ProgrammeName}}\r\n {{product.AppUserType}}\r\n {{product.MIArea}}\r\n {{product.FarmerShare}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n {{product.ChallanStatus}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_SELECTED_FOR_BANK_CHALLAN'| translate}}: {{ selectedApplications.length }}
\r\n
\r\n
\r\n

{{'TOTAL_FARMER_SHARE_AMOUNT'| translate}}: {{ totalFarmerShareAmount }}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import { filter } from 'rxjs/operators';\r\nimport { CryptoJsService } from './../../../services/crypto-js.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-department-consent-form',\r\n templateUrl: './department-consent-form.component.html',\r\n styleUrls: ['./department-consent-form.component.scss'],\r\n})\r\nexport class DepartmentConsentFormComponent implements OnInit {\r\n items: any[];\r\n selectedStatus: any;\r\n remarks: String;\r\n appId: String;\r\n userID: any;\r\n isActionSectionEnabled: boolean = false;\r\n\r\n constructor(\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private messageService: MessageService, \r\n private route: ActivatedRoute, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService) { }\r\n\r\n ngOnInit(): void {\r\n this.appId = this.cryptoJsService.DecryptData(this.route.snapshot.paramMap.get('appId'));\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params?.statusCode == this.cryptoJsService.Encrypt('C') || params?.statusCode == this.cryptoJsService.Encrypt('P')) {\r\n this.isActionSectionEnabled = true;\r\n } else {\r\n this.isActionSectionEnabled = false;\r\n }\r\n }\r\n );\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let actionId = 2; // Do not Change, it is fixed for Farmer Application Verifications\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'View Application For Approval', this.appId, new Date(), 'Success');\r\n this.items = data.$values;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'View Application For Approval', this.appId, new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n handleClick() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let reqBody = {\r\n AppId: this.appId,\r\n Userid: JSON.parse(payload)?.sub,\r\n Remarks: this.remarks,\r\n Status: this.selectedStatus.flag\r\n }\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .InsertFarmerApplicationApprovalRemarks(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let resp = JSON.stringify(data);\r\n this.activityRecordService.activityRecord(this.userID, 'Submit Approval', this.appId, new Date(), data);\r\n if(resp.startsWith('\"S')){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n }\r\n \r\n if (data == 'S:Successfully Submitted' || data == 'S:Successfully Updated' || resp.startsWith('\"S')) {\r\n console.log('ass')\r\n\r\n let componentName = window.sessionStorage.getItem('currentComponent');\r\n\r\n if (sessionStorage.getItem('userRole') == 'DD Associate') {\r\n // let applications = JSON.parse(window.sessionStorage.getItem(\"FarmerApplicationForApproval\"));\r\n let applications = JSON.parse(window.sessionStorage.getItem(componentName));\r\n if(applications!=null){\r\n applications.filter(application => {\r\n return application.appID === this.appId\r\n }).forEach(element => {\r\n // element.Status_Ar = this.selectedStatus.flag == 'A' ? 'A' : 'C',\r\n element.Status_Ar = 'C',\r\n element.status = this.selectedStatus.flag == 'A' ? 'Approved' : (this.selectedStatus.flag == 'RP') ? 'Return Process' : (this.selectedStatus.flag == 'R') ? 'Rejected' : 'Marked Return',\r\n element.NextLevelID = 'DDMICADA',\r\n element.remarks = this.remarks\r\n \r\n });\r\n }\r\n \r\n // sessionStorage.setItem('FarmerApplicationForApproval', JSON.stringify(applications));\r\n sessionStorage.setItem(componentName, JSON.stringify(applications));\r\n\r\n } else if (sessionStorage.getItem('userRole') == 'DDMICADA') {\r\n\r\n // let applications = JSON.parse(window.sessionStorage.getItem(\"FarmerApplicationForApproval\"));\r\n let applications = JSON.parse(window.sessionStorage.getItem(componentName));\r\n if(applications!=null){\r\n applications.filter(application => {\r\n return application.appID === this.appId\r\n }).forEach(element => {\r\n \r\n let nextLevelId;\r\n if(this.selectedStatus.flag == 'A'){\r\n nextLevelId = 'DMICADA';\r\n }else if(this.selectedStatus.flag == 'RP'){\r\n nextLevelId = 'Farmer'\r\n }else if(this.selectedStatus.flag == 'R'){\r\n nextLevelId = 'N/A'\r\n }\r\n \r\n // element.Status_Ar = this.selectedStatus.flag == 'A' ? 'A' : 'C',\r\n element.Status_Ar = 'C',\r\n element.status = this.selectedStatus.flag == 'A' ? 'Approved' : (this.selectedStatus.flag == 'RP') ? 'Return Process' : (this.selectedStatus.flag == 'R') ? 'Rejected' : 'Marked Return',\r\n element.NextLevelID = nextLevelId,\r\n element.remarks = this.remarks\r\n \r\n });\r\n }\r\n \r\n // sessionStorage.setItem('FarmerApplicationForApproval', JSON.stringify(applications));\r\n sessionStorage.setItem(componentName, JSON.stringify(applications));\r\n }\r\n else if (sessionStorage.getItem('userRole') == 'DMICADA') {\r\n\r\n // let applications = JSON.parse(window.sessionStorage.getItem(\"FarmerApplicationForApproval\"));\r\n let applications = JSON.parse(window.sessionStorage.getItem(componentName));\r\n if(applications!=null){\r\n applications.filter(application => {\r\n return application.appID === this.appId\r\n }).forEach(element => {\r\n \r\n let nextLevelId;\r\n if(this.selectedStatus.flag == 'A'){\r\n nextLevelId = 'Vendor';\r\n }else if(this.selectedStatus.flag == 'RP'){\r\n nextLevelId = 'Farmer'\r\n }else if(this.selectedStatus.flag == 'R'){\r\n nextLevelId = 'N/A'\r\n }\r\n \r\n // element.Status_Ar = this.selectedStatus.flag == 'A' ? 'A' : 'C',\r\n element.Status_Ar = 'C',\r\n element.status = this.selectedStatus.flag == 'A' ? 'Approved' : (this.selectedStatus.flag == 'RP') ? 'Return Process' : (this.selectedStatus.flag == 'R') ? 'Rejected' : 'Marked Return',\r\n element.NextLevelID = nextLevelId,\r\n element.remarks = this.remarks\r\n \r\n });\r\n }\r\n \r\n // sessionStorage.setItem('FarmerApplicationForApproval', JSON.stringify(applications));\r\n sessionStorage.setItem(componentName, JSON.stringify(applications));\r\n }\r\n else if(sessionStorage.getItem('userRole') == 'JE-EW' || sessionStorage.getItem('userRole') == 'DD-EW'){\r\n let applications = JSON.parse(window.sessionStorage.getItem(componentName));\r\n if(applications!=null){\r\n applications.filter(application => {\r\n return application.appID === this.appId\r\n }).forEach(element => {\r\n \r\n // let nextLevelId;\r\n // if(this.selectedStatus.flag == 'A'){\r\n // nextLevelId = 'DMICADA';\r\n // }else if(this.selectedStatus.flag == 'RP'){\r\n // nextLevelId = 'Farmer'\r\n // }else if(this.selectedStatus.flag == 'R'){\r\n // nextLevelId = 'N/A'\r\n // }\r\n \r\n // element.Status_Ar = this.selectedStatus.flag == 'A' ? 'A' : 'C',\r\n element.Status_Ar = 'C',\r\n element.status = this.selectedStatus.flag == 'A' ? 'Approved' : (this.selectedStatus.flag == 'RP') ? 'Return Process' : (this.selectedStatus.flag == 'R') ? 'Rejected' : 'Marked Return',\r\n // element.NextLevelID = nextLevelId,\r\n element.remarks = this.remarks\r\n \r\n });\r\n }\r\n\r\n sessionStorage.setItem(componentName, JSON.stringify(applications));\r\n\r\n }\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Application Processed Successfully.' });\r\n\r\n setTimeout(()=>{\r\n if(componentName == 'FarmerApplicationForApprovalPending'){\r\n // this.router.navigate(['/department/farmer-applications/pending']);\r\n if(sessionStorage.getItem('isJEEW') === '1'){\r\n this.router.navigate(['/ew-je/farmer-applications/pending']);\r\n \r\n }else if(sessionStorage.getItem('isDDEW') === '1'){\r\n this.router.navigate(['ew-department/farmer-applications/pending']);\r\n }else{\r\n this.router.navigate(['/department/farmer-applications/pending']);\r\n }\r\n // window.close();\r\n }\r\n else if(componentName == 'FarmerApplicationForApprovalCurrent'){\r\n // this.router.navigate(['/department/farmer-applications/current']);\r\n if(sessionStorage.getItem('isJEEW') === '1'){\r\n this.router.navigate(['/ew-je/farmer-applications/current']);\r\n \r\n }else if(sessionStorage.getItem('isDDEW') === '1'){\r\n this.router.navigate(['ew-department/farmer-applications/current']);\r\n }else{\r\n this.router.navigate(['/department/farmer-applications/current']);\r\n }\r\n // window.close();\r\n }\r\n }, 1000)\r\n }\r\n // this.router.navigate(['department']);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'Submit Approval', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n // this.router.navigate(['/department/farmer-applications']);\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n// import jwt from 'jsonwebtoken';\r\nimport { environment } from 'src/environments/environment';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-department-dashboard',\r\n templateUrl: './department-dashboard.component.html',\r\n styleUrls: ['./department-dashboard.component.scss']\r\n})\r\nexport class DepartmentDashboardComponent implements OnInit {\r\n iframeUrl: any;\r\n userID: any;\r\n constructor(\r\n public cryptoService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n private sanitizer: DomSanitizer, \r\n public http: HttpClient, \r\n private router: Router, \r\n private deptDashBoardService : DepartmentDashboardService, \r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // // you will need to install via 'npm install jsonwebtoken' or in your package.json\r\n // const metabaseUrl = 'environment.METABASE_SITE_URL';\r\n\r\n\r\n // var payload = {\r\n // resource: { dashboard: 9 },\r\n // params: {\r\n // 'district':'bhiwani'\r\n // },\r\n // exp: Math.round(Date.now() / 1000) + (10 * 60) // 10 minute expiration\r\n // };\r\n // const data = {\r\n // payload: payload,\r\n // token: METABASE_SECRET_KEY\r\n // }\r\n // // public post(url: string, data: any, options?: any) { \r\n // const res = this.http.post('http://localhost:3000/api/v1/jsonwebtoken', data);\r\n // res.subscribe((data: any) =>{\r\n // var token = data.token\r\n // let Url = metabaseUrl + \"/embed/dashboard/\" + token + \"#bordered=true&titled=true\";\r\n // this.iframeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(Url)\r\n // });\r\n let dashboardType = this.router.url.split('/')?.[3];\r\n let reqBody = {\r\n dashboardType : null\r\n }\r\n if(dashboardType === 'micada_geography'){\r\n this.activityRecordService.activityRecord(this.userID, 'MICADA Geography', '', new Date(), 'Success');\r\n\r\n reqBody.dashboardType = 'Micada_Geographic' \r\n }else if(dashboardType === 'vendor_metrics'){\r\n this.activityRecordService.activityRecord(this.userID, 'Venodr Metrics', '', new Date(), 'Success');\r\n\r\n reqBody.dashboardType = 'Vendor_Metrics'\r\n }else if(dashboardType === 'app_verification'){\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Single View', '', new Date(), 'Success');\r\n\r\n reqBody.dashboardType = 'Application_Verification_Single_View'\r\n }\r\n this.getIframeUrl(reqBody);\r\n\r\n }\r\n\r\n getIframeUrl(reqBody){\r\n this.loader.start();\r\n this.deptDashBoardService.getDashboardIframeUrl(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data : any) => {\r\n this.loader.close();\r\n this.iframeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(data?.URL)\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Farmer Applications not loaded.' });\r\n\r\n }\r\n });\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n\r\n@Component({\r\n selector: 'app-epc-payment',\r\n templateUrl: './epc-payment.component.html',\r\n styleUrls: ['./epc-payment.component.scss']\r\n})\r\nexport class EpcPaymentComponent implements OnInit {\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n\r\n console.log(parentRoute)\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'JE Physical Verification', routerLink: `/${parentRoute}/epc/pv-done`},\r\n { label: 'Ready For Payment', routerLink: `/${parentRoute}/epc/ready-for-payment`},\r\n { label: 'PFMS Payment Status', routerLink: `/${parentRoute}/epc/pfms-payment-status` }, \r\n ];\r\n }\r\n );\r\n\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-epc-pv-done',\r\n templateUrl: './epc-pv-done.component.html',\r\n styleUrls: ['./epc-pv-done.component.scss']\r\n})\r\nexport class EpcPvDoneComponent implements OnInit {\r\n\r\n public userId: any;\r\n public appVerificationItems: MenuItem[];\r\n\r\n public epvPVDoneData: any = [];\r\n\r\n public loading: boolean = false;\r\n\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n\r\n public imagePathJE: any = [];\r\n public listGPSCoordinatesJE: any = [];\r\n\r\n public landArea: number = null;\r\n public surveyArea: number = null;\r\n public coordinateError: any;\r\n public isGPSError: boolean = false;\r\n\r\n public refreshLocation: any;\r\n\r\n public imageError: string;\r\n public uploadOptions: any[];\r\n public documentList: any = [];\r\n public selctedFileType: any;\r\n\r\n public showActionDialog: boolean = false;\r\n public geolocationsarray: any = [];\r\n public overlays: any = [];\r\n public mapEnable = false;\r\n\r\n public contractorList: any = [];\r\n public selectedContractor: any;\r\n\r\n public geoLocMulArray: any[] = [];\r\n\r\n options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n // icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'\r\n };\r\n\r\n public selectedStatus: any;\r\n public remarks: any;\r\n public items: any = [];\r\n public selectedRowData: any;\r\n\r\n public ipAddress: any = '000.000.000';\r\n public showDetailTable: boolean = false;\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private route: ActivatedRoute,\r\n private cryptoJsService: CryptoJsService,\r\n private ipService: IpAddressService,\r\n public cd: ChangeDetectorRef,\r\n public router: Router,\r\n private service: BaseService,\r\n private vendorService: VendorDashboardService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.epvPVDoneData, 'EPC_PV_Done');\r\n },\r\n },\r\n ];\r\n\r\n this.getStatusList();\r\n this.getIP();\r\n\r\n this.loadContractor(this.userId);\r\n }\r\n\r\n onSelectContractor(){\r\n this.showDetailTable = true;\r\n if(this.selectedContractor){\r\n this.loadData(this.selectedContractor?.ContractorCode, this.userId);\r\n }\r\n }\r\n\r\n getStatusList() {\r\n\r\n setTimeout(() => {\r\n (this.items = [\r\n {\r\n \"$id\": \"2\",\r\n \"id\": \"1\",\r\n \"flag\": \"A\",\r\n \"status\": \"Approve\"\r\n },\r\n {\r\n \"$id\": \"3\",\r\n \"id\": \"3\",\r\n \"flag\": \"RP\",\r\n \"status\": \"Return Process\"\r\n },\r\n // {\r\n // \"$id\": \"4\",\r\n // \"id\": \"2\",\r\n // \"flag\": \"R\",\r\n // \"status\": \"Reject\"\r\n // }\r\n ])\r\n // (this.filteredComponentMaster = [...this.componentMasterList]);\r\n }, 100);\r\n \r\n // let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n // let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.deptDashBoardService\r\n // .getStatusMasterEPC(JSON.parse(payload)?.sub)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.items = data.$values;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Status Master cant be Loaded',\r\n // });\r\n // },\r\n // });\r\n }\r\n\r\n loadContractor(userId) { \r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getContractorMaster(userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close(); \r\n if (data.length > 0) {\r\n this.contractorList = data;\r\n }\r\n else {\r\n this.contractorList = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close(); \r\n this.contractorList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n loadData(conId, userId) { \r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getAppsForReVerEPC(conId, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n \r\n if (data.length > 0) {\r\n this.epvPVDoneData = data;\r\n // this.appVerificationModel = this.farmerUHBVNpvData;\r\n // this.mobileFarmerUHBVNpvData = data;\r\n // this.mobileFarmerUHBVNpvData = this.farmerUHBVNpvData.filter(val => val.Fin_Year == this.selectedYear); \r\n }\r\n else {\r\n this.epvPVDoneData = [];\r\n // this.appVerificationModel = []\r\n // this.mobileFarmerUHBVNpvData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n\r\n this.activityRecordService.activityRecord( this.userId, 'EPC PV Done (grid load)', '', new Date(), 'Success' );\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.epvPVDoneData = [];\r\n this.activityRecordService.activityRecord( this.userId, 'EPC PV Done Error(grid load)', '', new Date(), `${err}` );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n refreshTable() {\r\n if(this.selectedContractor){\r\n this.loadData(this.selectedContractor?.ContractorCode, this.userId);\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Application No': d?.APP_ID,\r\n 'Total Area (in Acre)': d?.TotalArea,\r\n 'Farmer Name': d?.Name,\r\n 'Father Name': d?.NamFather_namee,\r\n 'Mobile No': d?.Mobile,\r\n 'Contractor Name': d?.ContractorName,\r\n 'Outlet': d?.Outlets,\r\n 'Agreement No': d?.AgreementNo,\r\n 'Programme Name': d?.ProposedSystem,\r\n 'Total Area': d?.TotalArea,\r\n 'District': d?.District, \r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'JE Remarks': d?.JE_Remarks,\r\n 'JE Status': d?.JE_Status,\r\n 'JE Id': d?.JEID,\r\n 'XEN Remarks': d?.XEN_Remarks,\r\n 'XEN Status': d?.XEN_Status\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // rowBackgroundColor(row) {\r\n // if (row.JE_Status == 'Approved') {\r\n // return '#b9ecb9';\r\n // } else if(row.XEN_Status == 'Done'){\r\n // return '#b9ecb9';\r\n // } else return '#f9cece';\r\n // }\r\n\r\n onClickAppAction(row){\r\n this.showActionDialog = true;\r\n this.selectedRowData = row;\r\n this.surveyArea = row?.TotalArea;\r\n let reqBody = {\r\n AppId: row?.APP_ID,\r\n ProgId: row?.ProposedSystemId,\r\n ChunkId: row?.ChunkId\r\n }\r\n this.getAppData(reqBody);\r\n }\r\n\r\n getAppData(reqBody) {\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getGeoAndAttachmentsEPC(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.loading = false;\r\n \r\n if (data.ImagePathJE.length > 0 || data.listGPSCoordinatesJE.length > 0) {\r\n // this.imagePathJE = data.ImagePathJE;\r\n // this.listGPSCoordinatesJE = data.listGPSCoordinatesJE;\r\n // for (let index = 0; index < data.listGPSCoordinatesJE.length; index++) {\r\n // let geoData = {\r\n // CornerID: data.listGPSCoordinatesJE[index].CornerID,\r\n // lat: data.listGPSCoordinatesJE[index].Latitude,\r\n // lng: data.listGPSCoordinatesJE[index].Longitude,\r\n // };\r\n // this.geolocationsarray.push(geoData);\r\n // }\r\n // if (this.geolocationsarray.length == 0) {\r\n // this.mapEnable = false;\r\n // } else {\r\n // if (this.geolocationsarray && this.geolocationsarray.length > 0) {\r\n // this.options.center = this.geolocationsarray[0];\r\n // }\r\n // this.mapEnable = true;\r\n // this.geolocationsarray.forEach((row, index) => {\r\n // this.addMarkers(row, index);\r\n // });\r\n // this.addOverlay();\r\n // }\r\n \r\n\r\n if(data.listGPSCoordinatesJE.length > 0){\r\n let geoCoordinates: any []= [];\r\n data.listGPSCoordinatesJE.forEach((array) => {\r\n let val = array.map((val) => ({\r\n CornerID: val.CornerID,\r\n lat: val.Latitude,\r\n lng: val.Longitude\r\n }))\r\n geoCoordinates.push(val);\r\n })\r\n\r\n this.geoLocMulArray = geoCoordinates;\r\n\r\n this.onSave(0);\r\n }\r\n\r\n for (let index = 0; index < data.ImagePathJE.length; index++) {\r\n let imagesData = {\r\n attachment: data.ImagePathJE[index].ImagePath,\r\n attachmentRawUrl: data.ImagePathJE[index].ImagePath,\r\n document_type: data.ImagePathJE[index].DocumentType,\r\n displayName: data.ImagePathJE[index].DocumentType,\r\n name: data.ImagePathJE[index].DocumentType,\r\n };\r\n this.documentList.push(imagesData);\r\n }\r\n\r\n }\r\n else {\r\n // this.imagePathJE = [];\r\n // this.listGPSCoordinatesJE = [];\r\n this.showActionDialog = false;\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n\r\n this.activityRecordService.activityRecord( this.userId, 'EPC PV Update (App details)', reqBody?.AppId, new Date(), 'Success', JSON.stringify(reqBody) );\r\n },\r\n error: (err) => {\r\n this.showActionDialog = false;\r\n this.loader.close();\r\n this.activityRecordService.activityRecord( this.userId, 'EPC PV Update Error (App details)', reqBody?.AppId, new Date(), `${err}`, JSON.stringify(reqBody) );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSave(tableNo) {\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.options.center = this.geoLocMulArray[tableNo][0];\r\n this.overlays = [];\r\n this.geoLocMulArray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.addMarkers(row, index, tableIndex);\r\n });\r\n })\r\n \r\n this.addOverlay();\r\n }\r\n\r\n addOverlay() {\r\n this.overlays.forEach((val, index) => {\r\n if(val?.fillColor){\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n\r\n this.geoLocMulArray.forEach(arr => {\r\n this.overlays.push(\r\n new google.maps.Polygon({\r\n paths: arr,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n\r\n setTimeout(()=>{\r\n this.calculateSurveyArea();\r\n }, 100)\r\n }\r\n\r\n calculateSurveyArea(){\r\n let area = 0;\r\n this.geoLocMulArray.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.landArea = Number((0.000247105*area).toFixed(2));\r\n }\r\n\r\n calculateLandArea(polygon){\r\n return google?.maps?.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n // addMarkers(row: any, index) {\r\n // this.overlays.push(\r\n // new google.maps.Marker({\r\n // position: { lat: row?.lat, lng: row?.lng },\r\n // title: 'Coordinate ' + row?.CornerID,\r\n // draggable: true,\r\n // crossOnDrag: false\r\n // })\r\n // );\r\n // }\r\n\r\n onCloseActionDialog() {\r\n this.selectedRowData = null;\r\n this.isGPSError = false;\r\n clearInterval(this.refreshLocation);\r\n this.showActionDialog = false;\r\n this.mapEnable = false;\r\n this.geolocationsarray = [];\r\n this.overlays = this.overlays.filter(val => {\r\n return !val?.title?.includes('Coordinate')\r\n });\r\n this.documentList = [];\r\n // this.isPVSurveySubmitted = false;\r\n this.landArea = 0;\r\n this.surveyArea = null;\r\n this.addOverlay();\r\n }\r\n\r\n addMarkers(row: any, index, tableNo) { \r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: `${row?.CornerID}`,\r\n // draggable: false,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n // calculateLandArea(polygon) {\r\n // return google.maps.geometry.spherical.computeArea(polygon)\r\n // }\r\n\r\n selectPreSurveyData(event) { }\r\n\r\n onClickSubmit(){\r\n\r\n if (this.selectedStatus?.flag == 'A' && (this.remarks == undefined || this.remarks == \"\")) {\r\n this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Add Remark' });\r\n return;\r\n }\r\n\r\n let reqBody = {\r\n ChunkId: this.selectedRowData?.ChunkId,\r\n OutletId: this.selectedRowData?.OutletId,\r\n AgreementNo: this.selectedRowData?.AgreementNo,\r\n ConId: this.selectedRowData?.ConId,\r\n AppID: this.selectedRowData?.APP_ID,\r\n ProgramID: this.selectedRowData?.ProposedSystemId,\r\n UserId: this.userId,\r\n NetworkId: this.ipAddress,\r\n TerminalId: this.ipAddress,\r\n Remarks: this.remarks,\r\n Status: this.selectedStatus?.flag\r\n }\r\n\r\n this.submitEPCWork(reqBody);\r\n }\r\n\r\n submitEPCWork(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .insertReVerificationEPC(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseActionDialog();\r\n this.refreshTable();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV Submit', `${reqBody?.AppID}`, new Date(), `${data}`, reqBody);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV Submit Error', `${reqBody?.AppID}`, new Date(), `${err}`, reqBody);\r\n },\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n}\r\n","
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{'Application for Approval'| translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'TOTAL_AREA_ACRE'| translate}}\r\n {{'FARMER_NAME'| translate}}\r\n {{'FATHERS_NAME'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'CONTRACTOR_NAME'| translate}}\r\n {{'OUTLET'| translate}}\r\n {{'AGREEMENT_NO'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'XEN_STATUS'| translate}}\r\n {{'XEN_REMARKS'| translate}}\r\n {{'JE_ID'| translate}}\r\n {{'JE_STATUS'| translate}}\r\n {{'JE_REMARKS'| translate}}\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.APP_ID}}\r\n {{product.TotalArea}}\r\n {{product.Name}}\r\n {{product.Father_name}}\r\n {{product.Mobile}}\r\n {{product.ContractorName}}\r\n {{product.Outlets}}\r\n {{product.AgreementNo}}\r\n {{product.ProposedSystem}}\r\n {{product.TotalArea}}\r\n {{product.District}}\r\n {{product.Block}}\r\n {{product.Village}}\r\n {{product.XEN_Status}}\r\n {{product.XEN_Remarks}}\r\n {{product.JEID}}\r\n {{product.JE_Status}}\r\n {{product.JE_Remarks}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{epvPVDoneData ? epvPVDoneData.length : 0 }}\r\n {{'for Approval'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'Approved'| translate}}\r\n
\r\n
\r\n \r\n
{{'Not Approved'| translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}
\r\n
0 || overlays.length>0\" class=\"dashboardTable\">\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n

{{coordinateError | translate}}

\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
0\" class=\"field md:col-4 col-12 area-display-card\">\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
{{'CAPTURE_IMAGE'| translate}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{item.name}}\r\n

\r\n

\r\n {{item.name}}\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{imageError}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport * as XLSX from 'xlsx';\r\n\r\n\r\n@Component({\r\n selector: 'app-pfms-payment-status',\r\n templateUrl: './pfms-payment-status.component.html',\r\n styleUrls: ['./pfms-payment-status.component.scss']\r\n})\r\nexport class PfmsPaymentStatusComponent implements OnInit {\r\n\r\n public userId: any;\r\n\r\n xslxToJsonData: any[] = [];\r\n uploadFile: any;\r\n\r\n public pfmsPaymentStatusData: any = [];\r\n public ipAddress: any = '000.000.000';\r\n public responseDate: any = [];\r\n\r\n public loadingExportResponse: boolean = false;\r\n\r\n constructor(\r\n private fApplicationService: FarmersDetailsService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n }\r\n\r\n onUploadPFMSPaymentStatus(event, formcontrol, uploadElement) {\r\n this.uploadFile = [];\r\n let workBook = null;\r\n let jsonData = null;\r\n let sheetName = null\r\n const reader = new FileReader();\r\n let file = event.files[0];\r\n this.uploadFile = file;\r\n reader.onload = (event) => {\r\n const data = reader.result;\r\n workBook = XLSX.read(data, { type: 'binary', cellText: false, cellDates: true });\r\n jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n sheetName = name;\r\n const sheet = workBook.Sheets[name];\r\n initial[name] = XLSX.utils.sheet_to_json(sheet, {\r\n raw: false,\r\n dateNF: 'yyyy-mm-dd',\r\n });\r\n return initial;\r\n }, {});\r\n const dataString = JSON.stringify(jsonData);\r\n let statePhyFinData = JSON.parse(dataString)[sheetName];\r\n // this.xslxToJsonDataPersonal = JSON.parse(dataString)[sheetName];\r\n // if (!(this.xslxToJsonDataPersonal)) {\r\n if (!(statePhyFinData)) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!' });\r\n // }else if(this.xslxToJsonDataPersonal.length == 0){\r\n } else if (statePhyFinData.length == 0) {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'The Uploaded file is empty!' });\r\n } else {\r\n this.addUploadedStateData(statePhyFinData);\r\n }\r\n }\r\n reader.readAsBinaryString(file);\r\n uploadElement.clear();\r\n }\r\n\r\n addUploadedStateData(value) {\r\n console.log(value);\r\n this.pfmsPaymentStatusData = value.map((val) => ({\r\n 'AppId': val?.['App Id'],\r\n 'FarmerName': val?.['Farmer Name'],\r\n 'FatherName': val?.['Father Name'],\r\n 'MobileNo': val?.['Mobile No'],\r\n 'ContractorName': val?.['Contractor Name'],\r\n 'Outlet': val?.['Outlet'],\r\n 'AgreementNo': val?.['Agreement No'],\r\n 'ProgrammeName': val?.['Programme Name'],\r\n 'ProgrammeId': val?.['Programme Id'],\r\n 'TotalArea': val?.['Total Area'],\r\n 'District': val?.['District'],\r\n 'Block': val?.['Block'],\r\n 'Village': val?.['Village'],\r\n 'XENReVerificationRemarks': val?.['XEN Re-verification Remarks'],\r\n 'TotalRecommendedAmount': val?.['Total Rec Amount'],\r\n 'CostOf85Per': val?.['85% of Cost'],\r\n 'StateShareAmount': val?.['State_share_amt'],\r\n 'CentreShareAmount': val?.['Centre_share_amt'],\r\n 'TopUp': val?.['TopUp'],\r\n 'Status': val?.['Status'],\r\n 'Remarks': val?.['Remarks'],\r\n 'PFMSPaymentDate': val?.['PFMSPaymentDate'],\r\n }))\r\n }\r\n\r\n\r\n\r\n clearPFMSpaymentStatusData() {\r\n this.pfmsPaymentStatusData = [];\r\n this.responseDate = [];\r\n }\r\n\r\n deletePFMSpaymentStatusData(index: number) {\r\n this.pfmsPaymentStatusData.splice(index, 1);\r\n }\r\n\r\n onSubmitStatePhyTarDate() {\r\n // Handle target form submission\r\n\r\n let reqBody = [\r\n {\r\n userId: this.userId,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n data: this.pfmsPaymentStatusData.map(val => ({\r\n appId: val?.AppId,\r\n progId: val?.ProgrammeId,\r\n totalRecommendedAmt: val?.TotalRecommendedAmount,\r\n state_share_amt: val?.StateShareAmount,\r\n centre_share_amt: val?.CentreShareAmount,\r\n pfmsPaymentDate: new Date(val?.PFMSPaymentDate),\r\n topUp: val?.TopUp,\r\n status: val?.Status,\r\n CAORemarks: val?.Remarks\r\n }))\r\n }\r\n ]\r\n this.insertStatePhysicalFinData(reqBody);\r\n }\r\n\r\n insertStatePhysicalFinData(reqBody) {\r\n this.loader.start();\r\n this.loadingExportResponse = true;\r\n this.deptDashBoardService\r\n .importLotsEPC(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n\r\n // if (res == \"Success\") {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: res,\r\n // });\r\n // this.clearPFMSpaymentStatusData();\r\n // } else {\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: res,\r\n // });\r\n // }\r\n this.loadingExportResponse = false;\r\n\r\n this.responseDate = res;\r\n console.log(this.responseDate)\r\n\r\n this.responseDate.forEach((val, i) => {\r\n if(val?.IsCorrect == 0){\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: this.responseDate[i].Message });\r\n return;\r\n }\r\n \r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Submitted' });\r\n });\r\n this.activityRecordService.activityRecord(this.userId, 'PFMS Payment Status', ``, new Date(), `${res}`, reqBody);\r\n },\r\n error: (err) => {\r\n this.loadingExportResponse = false;\r\n this.responseDate = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'PFMS Payment Status Error', ``, new Date(), `${err}`, reqBody);\r\n },\r\n });\r\n }\r\n\r\n responseGridBackgroundColor(product){\r\n if (product.IsCorrect == 0) {\r\n return '#ff8080';\r\n } else return '#ffffff';\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n {{'PFMS Payment Status'| translate}}
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n Download Sample Excel\r\n
\r\n \r\n
\r\n
\r\n\r\n
0\" class=\"dashboardTable\" style=\"margin: 5px;\">\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'FARMER_NAME'| translate}}\r\n {{'FATHERS_NAME'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'CONTRACTOR_NAME'| translate}}\r\n {{'OUTLET'| translate}}\r\n {{'AGREEMENT_NO'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'XEN_RE_VER_REMARKS'| translate}}\r\n {{'TOTAL_REC_AMOUNT'| translate}}\r\n {{'85PER_OF_COST'| translate}}\r\n {{'STATE_SHARE_AMOUNT'| translate}}\r\n {{'CENTER_SHARE_AMOUNT'| translate}}\r\n {{'TOP_UP'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'REMARKS'| translate}}\r\n {{'PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{target.AppId}}\r\n {{target.FarmerName}}\r\n {{target.FatherName}}\r\n {{target.MobileNo}}\r\n {{target.ContractorName}}\r\n {{target.Outlet}}\r\n {{target.AgreementNo}}\r\n {{target.ProgrammeName}}\r\n {{target.TotalArea}}\r\n {{target.District}}\r\n {{target.Village}}\r\n {{target.Block}}\r\n {{target.XENReVerificationRemarks}}\r\n {{target.TotalRecommendedAmount}}\r\n {{target.CostOf85Per}}\r\n {{target.StateShareAmount}}\r\n {{target.CentreShareAmount}}\r\n {{target.TopUp}}\r\n {{target.Status}}\r\n {{target.Remarks}}\r\n {{target.PFMSPaymentDate}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
0\" class=\"button-container-submit mt-3 submit-button-card\">\r\n \r\n
\r\n
\r\n
\r\n\r\n
0\">\r\n
\r\n \r\n \r\n
\r\n
{{'EXPORT_DATA_RESPONSE'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'AMOUNT'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'REMARKS'| translate}}\r\n {{'MESSAGE'| translate}}\r\n \r\n \r\n \r\n \r\n {{responseData.AppID}}\r\n {{responseData.TotalAmt}}\r\n {{responseData.Status}}\r\n {{responseData.Remarks}}\r\n {{responseData.Message}}\r\n \r\n \r\n\r\n
\r\n
\r\n
","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport saveAs from 'file-saver';\r\n\r\n@Component({\r\n selector: 'app-ready-for-payment',\r\n templateUrl: './ready-for-payment.component.html',\r\n styleUrls: ['./ready-for-payment.component.scss']\r\n})\r\nexport class ReadyForPaymentComponent implements OnInit {\r\n\r\n public appVerificationItems: MenuItem[];\r\n public userId: any;\r\n\r\n public loading: boolean = false;\r\n public readyForPaymentData: any = [];\r\n\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n\r\n public selectedContractor: any;\r\n public contractorList: any = [];\r\n public showDetailTable: boolean = false;\r\n\r\n public selectedAppStatus: any;\r\n public appStatusTypeList: any = [];\r\n\r\n public filteredDataForExport: any = [];\r\n public date: any;\r\n // public filteredData: any = [];\r\n public totalSelectedApp: any;\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private route: ActivatedRoute,\r\n private cryptoJsService: CryptoJsService,\r\n private ipService: IpAddressService,\r\n public cd: ChangeDetectorRef,\r\n public router: Router,\r\n private service: BaseService,\r\n private vendorService: VendorDashboardService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.filteredDataForExport, `Filtered_Apps_Ready_for_Payment_(${this.date})`);\r\n },\r\n },\r\n ];\r\n\r\n this.loadContractor(this.userId);\r\n this.getAppStatusTypeList();\r\n }\r\n\r\n getAppStatusTypeList() {\r\n setTimeout(() => {\r\n this.appStatusTypeList = [\r\n {\r\n status_Code: 1,\r\n status_Description: 'Pending'\r\n },\r\n // {\r\n // status_Code: 2,\r\n // status_Description: 'Current'\r\n // },\r\n {\r\n status_Code: 3,\r\n status_Description: 'Approved'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n loadContractor(userId) { \r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getContractorMaster(userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close(); \r\n if (data.length > 0) {\r\n this.contractorList = data;\r\n }\r\n else {\r\n this.contractorList = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close(); \r\n this.contractorList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App Id': d?.APP_ID,\r\n 'Farmer Name': d?.Name,\r\n 'Father Name': d?.Father_name,\r\n 'Mobile No': d?.Mobile,\r\n 'Contractor Name': d?.ContractorName,\r\n 'Outlet': d?.Outlets,\r\n 'Agreement No': d?.AgreementNo,\r\n 'Programme Name': d?.ProposedSystem,\r\n 'Programme Id': d?.Program_Id,\r\n 'Total Area': d?.TotalArea,\r\n 'District': d?.District, \r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n // 'JE Remarks': d?.JE_Remarks,\r\n // 'JE Status': d?.JE_Status,\r\n // 'JE Id': d?.JEID,\r\n // 'XEN Remarks': d?.XEN_Remarks,\r\n // 'XEN Status': d?.XEN_Status,\r\n 'XEN Re-verification Remarks': d?.ReVerRemarksXEN,\r\n 'Total Rec Amount': d?.TotalRecommendedAmt,\r\n '85% of Cost': d?.totalCost85Per,\r\n 'Centre_share_amt': d?.LotCentre_share_amt,\r\n 'State_share_amt': d?.LotLotState_share_amt,\r\n 'TopUp': d?.TopUp,\t\t\r\n 'Status': '',\t\t\r\n 'Remarks': '',\t\t\r\n 'PFMSPaymentDate': d?.PFMSPaymentDate,\t\t\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n refreshTable() {\r\n // this.loadData(this.userId)\r\n if(this.selectedContractor){\r\n this.loadData(this.selectedContractor?.ContractorCode, this.userId, this.selectedAppStatus?.status_Description);\r\n }\r\n // if(this.selectedContractor && this.selectedAppStatus){\r\n // this.loadData(this.selectedContractor?.ContractorCode, this.userId, this.selectedAppStatus?.status_Description);\r\n // }\r\n }\r\n\r\n onSelectContractor(){\r\n console.log(this.selectedContractor);\r\n // if(this.selectedContractor && this.selectedAppStatus){\r\n // this.showDetailTable = true;\r\n // this.loadData(this.selectedContractor?.ContractorCode, this.userId, this.selectedAppStatus?.status_Description);\r\n // }\r\n if(this.selectedContractor){\r\n this.showDetailTable = true;\r\n this.loadData(this.selectedContractor?.ContractorCode, this.userId, this.selectedAppStatus?.status_Description);\r\n }\r\n }\r\n\r\n loadData(contractorId, userId, status) { \r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getAppsForLotGenerationEPC(contractorId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n \r\n if (data.length > 0) {\r\n this.readyForPaymentData = data.map(val => ({\r\n ...val,\r\n totalCost85Per: (val?.TotalRecommendedAmt*0.85).toFixed(2)\r\n }));\r\n }\r\n else {\r\n this.readyForPaymentData = [];\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n\r\n this.activityRecordService.activityRecord( this.userId, 'Ready For Payment (grid load)', '', new Date(), 'Success' );\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.readyForPaymentData = [];\r\n this.activityRecordService.activityRecord( this.userId, 'Ready For Payment Error(grid load)', '', new Date(), `${err}` );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event){\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if(event.checked){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation(){\r\n // this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n \r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id, \r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0, \r\n // amt_Disbus_to_Vendor: 0, \r\n // amt_Refund_to_Farmer: 0, \r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor, \r\n // state_share_amt: val.State_Share_Payment_Amount, \r\n // centre_share_amt: val.Center_Share_Payment_Amount, \r\n // }) \r\n // })\r\n }\r\n}\r\n","
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{'Application for Approval'| translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'FARMER_ID'| translate}}\r\n {{'FARMER_NAME'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'FATHERS_NAME'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'CONTRACTOR_NAME'| translate}}\r\n {{'OUTLET'| translate}}\r\n {{'AGREEMENT_NO'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n \r\n {{'XEN_RE_VER_REMARKS'| translate}}\r\n {{'TOTAL_REC_AMOUNT'| translate}}\r\n {{'85PER_OF_COST'| translate}}\r\n {{'LOT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.APP_ID}}\r\n {{product.Name}}\r\n {{product.District}}\r\n {{product.Block}}\r\n {{product.Village}}\r\n {{product.Father_name}}\r\n {{product.Mobile}}\r\n {{product.ContractorName}}\r\n {{product.Outlets}}\r\n {{product.AgreementNo}}\r\n {{product.ProposedSystem}}\r\n {{product.TotalArea}}\r\n \r\n {{product.ReVerRemarksXEN}}\r\n {{product.TotalRecommendedAmt}}\r\n {{product.totalCost85Per}}\r\n {{product.LotStatus}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{readyForPaymentData ? readyForPaymentData.length : 0 }}\r\n {{'Application(s) Ready for Payment'| translate}}.\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{ 'In total there are '}} {{totalSelectedApp}} {{' application(s) selected for export'}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-epc-work-approval',\r\n templateUrl: './epc-work-approval.component.html',\r\n styleUrls: ['./epc-work-approval.component.scss']\r\n})\r\nexport class EpcWorkApprovalComponent implements OnInit {\r\n\r\n public userId: any;\r\n\r\n // public hideGetDataButton: boolean = false;\r\n\r\n public contractorOutletList: any = [];\r\n public selectedOutletToGetData: any;\r\n public selectedBenefitedAreaToGetData: any;\r\n\r\n public agreementNoList: any = [];\r\n public agreementNoToGetData: any;\r\n\r\n public chunkList: any = [];\r\n public chunkIdToGetData: any;\r\n\r\n public epcDataForApproval: any = [];\r\n\r\n // public showActionDialog: boolean = false;\r\n\r\n public estimationDataForApproval: any = [];\r\n\r\n clonedProducts: { [s: string]: any } = {};\r\n\r\n public selectedJE: any;\r\n public selectedStatus: any;\r\n public remarks: any;\r\n public items: any = [];\r\n public jeList: any = [];\r\n\r\n public appStatusTypeList: any = [];\r\n public selectedAppStatus: any;\r\n\r\n public ipAddress: any = '000.000.000';\r\n public isRPCase: boolean = false;\r\n\r\n public grandTotalCost: any = 0;\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private fApplicationService: FarmersApplicationService,\r\n private messageService: MessageService,\r\n private vendorService: VendorDashboardService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private ipService: IpAddressService,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n this.getJEList();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.getAppStatusTypeList();\r\n this.getStatusList();\r\n }\r\n\r\n getAppStatusTypeList() {\r\n setTimeout(() => {\r\n this.appStatusTypeList = [\r\n {\r\n status_Code: 1,\r\n status_Description: 'Pending'\r\n },\r\n // {\r\n // status_Code: 2,\r\n // status_Description: 'Current'\r\n // },\r\n {\r\n status_Code: 3,\r\n status_Description: 'Approved'\r\n },\r\n {\r\n status_Code: 4,\r\n status_Description: 'Return Process'\r\n },\r\n {\r\n status_Code: 5,\r\n status_Description: 'Rejected'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getJEList() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .getJEUserIds(JSON.parse(payload)?.sub)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.jeList = data;\r\n\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Next level user not found. ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getStatusList() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .getStatusMasterEPC(JSON.parse(payload)?.sub)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getContractorOutletList(contractorId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getOutletByContractor(contractorId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.contractorOutletList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.contractorOutletList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectAppStatus() {\r\n this.clearAllData();\r\n\r\n this.getContractorOutletList(0, this.userId, this.selectedAppStatus?.status_Description);\r\n\r\n }\r\n\r\n onSelectOutletToGetData() {\r\n this.agreementNoList = [];\r\n this.agreementNoToGetData = null;\r\n\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n \r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n \r\n this.selectedBenefitedAreaToGetData = this.selectedOutletToGetData?.CCA_A;\r\n\r\n let conId = this.selectedOutletToGetData?.ContractorCode;\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let status = this.selectedAppStatus?.status_Description;\r\n this.getAgreementNumberList(conId, outletId, this.userId, status);\r\n }\r\n\r\n getAgreementNumberList(contractorId, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getAgreementByContractor(contractorId, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.agreementNoList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.agreementNoList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectAgreementNo() {\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n \r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let contractorId = this.selectedOutletToGetData?.ContractorCode;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n let status = this.selectedAppStatus?.status_Description;\r\n\r\n this.getChunkIdsList(contractorId, agreementNo, outletId, this.userId, status);\r\n }\r\n\r\n getChunkIdsList(contractorId, agreementNo, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getChunkIds(contractorId, agreementNo, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if(res.length > 0){\r\n this.chunkList = res.map(val => ({\r\n ...val,\r\n combineData: `${val?.ChunkId}. ${val?.FarmerName} (${val?.AppId})`\r\n }));\r\n }else{\r\n this.chunkList = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.chunkList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onClickGetFarmerData() { \r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let contractorId = this.selectedOutletToGetData?.ContractorCode;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n let chunkId = this.chunkIdToGetData?.ChunkId;\r\n\r\n if (outletId && agreementNo) {\r\n this.getEPCFarmerDetails(agreementNo, outletId, chunkId);\r\n this.getEPCEstimationDetails(contractorId, outletId, agreementNo, chunkId);\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Outlet and Fill Agreement Number.',\r\n });\r\n }\r\n }\r\n\r\n getEPCFarmerDetails(agreementNo, outletId, chunkId) {\r\n this.loader.start();\r\n this.vendorService\r\n .getEPCDetails(agreementNo, outletId, chunkId, this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let resp: any = data;\r\n if (resp.length > 0) {\r\n this.epcDataForApproval = resp;\r\n } else {\r\n this.epcDataForApproval = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For Approval Farmer (get grid details)', `${agreementNo}, ${outletId}, ${chunkId}`, new Date(), `${data}`);\r\n },\r\n error: (err) => {\r\n this.epcDataForApproval = [];\r\n\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For Approval Farmer Error(get grid details)', `${agreementNo}, ${outletId}, ${chunkId}`, new Date(), err);\r\n },\r\n });\r\n }\r\n\r\n getEPCEstimationDetails(contractorId, outletId, agreementNo, chunkId) {\r\n this.loader.start();\r\n this.vendorService\r\n .getContractorEstimation(contractorId, outletId, agreementNo, chunkId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let resp: any = data;\r\n if (resp.length > 0) {\r\n this.grandTotalCost = resp.reduce((sum, d) => sum + Number(d.TotalAmount), 0);\r\n \r\n console.log(this.grandTotalCost);\r\n\r\n this.estimationDataForApproval = resp.map((val) => ({\r\n ...val,\r\n id: `${val?.ProgramID}_${val?.catId}_${val?.ComponentID}`,\r\n Price: val?.Price ? val?.Price : 0\r\n }));\r\n } else {\r\n this.estimationDataForApproval = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For Approval Estimation(get grid details)', `${contractorId}, ${agreementNo}, ${outletId}, ${chunkId}`, new Date(), `${data}`);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For Approval Estimation Error(get grid details)', `${contractorId}, ${agreementNo}, ${outletId}, ${chunkId}`, new Date(), err);\r\n },\r\n });\r\n }\r\n\r\n\r\n // clickOnAppAction(val){\r\n // this.showActionDialog = true;\r\n // }\r\n\r\n // onCloseActionDialog(){\r\n // this.showActionDialog = false;\r\n // }\r\n\r\n onRowEditInit(product: any) {\r\n this.clonedProducts[product.id as string] = { ...product };\r\n }\r\n\r\n onRowEditSave(product: any) {\r\n if (product.Price > 0) {\r\n delete this.clonedProducts[product.id as string];\r\n // this.messageService.add({ severity: 'success', summary: 'Success', detail: 'Price is updated' });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error', detail: 'Invalid Price' });\r\n }\r\n }\r\n\r\n onRowEditCancel(product: any, index: number) {\r\n this.estimationDataForApproval[index] = this.clonedProducts[product.id as string];\r\n delete this.clonedProducts[product.id as string];\r\n }\r\n\r\n onClickSubmit() {\r\n\r\n // if (this.estimationDataForApproval.some(val => val?.Price <= 0)) {\r\n // this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Please fill all the prices. price must be grater than 0.' });\r\n // return;\r\n // }\r\n\r\n // if(this.selectedJE == null || this.selectedJE == undefined){\r\n // this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Select next level user.' });\r\n // return;\r\n // }\r\n\r\n // if (this.selectedStatus == undefined || this.selectedStatus == \"\") {\r\n // this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Select Status' });\r\n // return;\r\n // }\r\n\r\n if (this.selectedStatus?.flag == 'A' && (this.selectedJE == undefined || this.selectedJE == \"\")) {\r\n this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Select next level user.' });\r\n return;\r\n }\r\n\r\n if (this.remarks == undefined || this.remarks == \"\") {\r\n this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Add Remark' });\r\n return;\r\n }\r\n \r\n let reqBody = [\r\n {\r\n outletId: this.selectedOutletToGetData?.OutletId,\r\n agreementNo: this.agreementNoToGetData?.AgreementNo,\r\n conId: this.selectedOutletToGetData?.ContractorCode,\r\n ChunkId: this.chunkIdToGetData?.ChunkId,\r\n status: this.selectedStatus?.flag,\r\n remarks: this.remarks,\r\n userId: this.userId,\r\n nextUserId: this.selectedJE?.UserID ? this.selectedJE?.UserID : \"\",\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n data: this.estimationDataForApproval.map(val => ({\r\n srNo: val?.SrNo,\r\n // Price: val?.Price,\r\n Price: val?.PerUnitCost ? val?.PerUnitCost : 0,\r\n jeRemarks: val?.jeRemarks ? val?.jeRemarks : \"\",\r\n // jeQuantity: val?.jeQuantity ? val?.jeQuantity : 0\r\n jeQuantity: val?.Quantity,\r\n }))\r\n }\r\n ]\r\n\r\n this.submitEPCWork(reqBody);\r\n }\r\n\r\n submitEPCWork(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .insertComponentPriceEPC(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.clearAllData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For Approval Submit', `${reqBody}`, new Date(), `${data}`);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For Approval Submit Error', `${reqBody}`, new Date(), err);\r\n },\r\n });\r\n }\r\n\r\n clearAllData(){\r\n this.selectedOutletToGetData = null;\r\n this.selectedBenefitedAreaToGetData = null;\r\n\r\n this.agreementNoList = [];\r\n this.agreementNoToGetData = null;\r\n\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n \r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onSelectStatus(){\r\n if(this.selectedStatus?.flag == 'RP' || this.selectedStatus?.flag == 'R'){\r\n this.isRPCase = true;\r\n this.selectedJE = null;\r\n }else{\r\n this.isRPCase = false;\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n

0\"\r\n [style]=\"{'color': 'rgb(168, 32, 32)', 'font-weight': 'bold', 'font-size': '1.0rem', 'text-align': 'center'}\">\r\n {{ 'Farmer\r\n Details' | translate }} {{ 'of ' }}{{ this.selectedOutletToGetData?.Outlets }} {{ ' & Agreement No:'}}\r\n {{\r\n agreementNoToGetData?.AgreementNo }}

\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'APP_ID'| translate}}\r\n {{'TOTAL_AREA_ACRE'| translate}}\r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n {{'FARMER_NAME'| translate}}\r\n {{'FATHERS_NAME'| translate}}\r\n {{'AADHAR_NO'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'PPP_ID'| translate}}\r\n {{'MFMB_NO'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.APP_ID}}\r\n {{product?.TotalArea}}\r\n {{product?.TotalArea}}\r\n \r\n {{product?.Name}}\r\n {{product?.Father_name}}\r\n {{product?.Aadhar_No}}\r\n {{product?.Mobile}}\r\n {{product?.PPP_ID}}\r\n {{product?.MFMBNo}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n \r\n
\r\n

Outlet amount for {{ epcDataForApproval[0].Outlets }} per hectare is Rs. {{ epcDataForApproval[0].OutletAmountPerHA }}/-

\r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"dashboardTable mt-5\">\r\n
\r\n \r\n

0\"\r\n [style]=\"{'color': 'rgb(168, 32, 32)', 'font-weight': 'bold', 'font-size': '1.0rem', 'text-align': 'center'}\">\r\n {{ 'Estimation Details' | translate }}\r\n

\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ \"PROGRAMME_NAME\" | translate}}\r\n {{ \"CATEGORY_NAME\" | translate}}\r\n {{ \"COMPONENT_NAME\" | translate}}\r\n {{ \"SIZE\" | translate}}\r\n {{ \"QUANTITY\" | translate}}\r\n {{ \"PER_UNIT_COST\" | translate}}\r\n {{ \"TOTAL_AMOUNT\" | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Program_Name}}\r\n {{product?.category}}\r\n {{product?.Component}}\r\n {{product?.Size}}\r\n {{product?.Quantity}}\r\n {{product?.PerUnitCost}}\r\n {{product?.TotalAmount}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Grand Total:\r\n \r\n {{ grandTotalCost | currency:'INR' }}\r\n \r\n \r\n
\r\n
\r\n\r\n
0\" class=\"card submit-card mt-2\">\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n","import { ChangeDetectorRef, Component, EventEmitter, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { Observable, Subject, first, config, isEmpty, shareReplay } from 'rxjs'; import { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport exifr from 'exifr';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-epc-work-pv',\r\n templateUrl: './epc-work-pv.component.html',\r\n styleUrls: ['./epc-work-pv.component.scss']\r\n})\r\nexport class EpcWorkPvComponent implements OnInit {\r\n\r\n public userId: any;\r\n\r\n // public hideGetDataButton: boolean = false;\r\n\r\n public contractorOutletList: any = [];\r\n public selectedOutletToGetData: any;\r\n public selectedBenefitedAreaToGetData: any;\r\n\r\n public agreementNoList: any = [];\r\n public agreementNoToGetData: any;\r\n\r\n public chunkList: any = [];\r\n public chunkIdToGetData: any;\r\n\r\n public epcDataForApproval: any = [];\r\n\r\n public showActionDialog: boolean = false;\r\n\r\n public estimationDataForApproval: any = [];\r\n\r\n public clonedProducts: { [s: string]: any } = {};\r\n\r\n public selectedJE: any;\r\n public selectedStatus: any;\r\n public remarks: any;\r\n public items: any = [];\r\n public jeList: any = [];\r\n\r\n public appStatusTypeList: any = [];\r\n public selectedAppStatus: any;\r\n\r\n public selectedFarmerApp: any;\r\n\r\n public ipAddress: any = '000.000.000';\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n public displayCameraComponent: boolean = false;\r\n private trigger: Subject = new Subject();\r\n private nextWebcam: Subject = new Subject();\r\n\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public pictureTaken = new EventEmitter();\r\n public webcamImage!: WebcamImage;\r\n // public videoOptions: MediaTrackConstraints = {};\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n\r\n\r\n // public attachmentsList: any = [];\r\n // public activeIndex: number = 0;\r\n // public displayCustom: boolean;\r\n\r\n // public responsiveOptions: any[] = [\r\n // {\r\n // breakpoint: '1024px',\r\n // numVisible: 5\r\n // },\r\n // {\r\n // breakpoint: '768px',\r\n // numVisible: 3\r\n // },\r\n // {\r\n // breakpoint: '560px',\r\n // numVisible: 1\r\n // }\r\n // ];\r\n\r\n public geolocationsarray: any = [];\r\n public overlays: any = [];\r\n public mapEnable = false;\r\n\r\n options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n // icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'\r\n };\r\n\r\n public landArea: number = 0;\r\n public surveyArea: number = 0;\r\n public coordinateError: any;\r\n public isGPSError: boolean = false;\r\n\r\n public refreshLocation: any;\r\n\r\n public imageError: string;\r\n public uploadOptions: any[];\r\n public documentList: any = [];\r\n public selctedFileType: any;\r\n // public isPVSurveySubmitted: boolean = false;\r\n\r\n public isJELogin: boolean = false;\r\n public isXENLogin: boolean = false;\r\n\r\n public geoLocMulArray: any[] = [];\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private fApplicationService: FarmersApplicationService,\r\n private messageService: MessageService,\r\n private vendorService: VendorDashboardService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private ipService: IpAddressService,\r\n private route: ActivatedRoute,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n (this.uploadOptions = [\r\n { name: 'Farmer Photo', code: 'farmer_photo' },\r\n { name: 'Water Source', code: 'water_source' },\r\n { name: 'Land Photo', code: 'land_photo' },\r\n { name: 'Others', code: 'others' },\r\n ]);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n this.getJEList();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n if (tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')) {\r\n this.isJELogin = true;\r\n }\r\n if (tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')) {\r\n this.isXENLogin = true;\r\n }\r\n\r\n this.getAppStatusTypeList();\r\n this.getStatusList();\r\n }\r\n\r\n getAppStatusTypeList() {\r\n setTimeout(() => {\r\n this.appStatusTypeList = [\r\n {\r\n status_Code: 1,\r\n status_Description: 'Pending'\r\n },\r\n // {\r\n // status_Code: 2,\r\n // status_Description: 'Current'\r\n // },\r\n {\r\n status_Code: 3,\r\n status_Description: 'Approved'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getJEList() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .getJEUserIds(JSON.parse(payload)?.sub)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.jeList = data;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Next level user not found. ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getStatusList() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .getStatusMasterEPC(JSON.parse(payload)?.sub)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getContractorOutletList(contractorId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getOutletByContractor(contractorId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.contractorOutletList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.contractorOutletList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectAppStatus() {\r\n this.clearAllData();\r\n\r\n this.getContractorOutletList(0, this.userId, this.selectedAppStatus?.status_Description);\r\n\r\n }\r\n\r\n onSelectOutletToGetData() {\r\n this.agreementNoList = [];\r\n this.agreementNoToGetData = null;\r\n\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n\r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n\r\n this.selectedBenefitedAreaToGetData = this.selectedOutletToGetData?.CCA_A;\r\n\r\n let conId = this.selectedOutletToGetData?.ContractorCode;\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let status = this.selectedAppStatus?.status_Description;\r\n this.getAgreementNumberList(conId, outletId, this.userId, status);\r\n }\r\n\r\n getAgreementNumberList(contractorId, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getAgreementByContractor(contractorId, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.agreementNoList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.agreementNoList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectAgreementNo() {\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n\r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let contractorId = this.selectedOutletToGetData?.ContractorCode;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n let status = this.selectedAppStatus?.status_Description;\r\n\r\n this.getChunkIdsList(contractorId, agreementNo, outletId, this.userId, status);\r\n }\r\n\r\n getChunkIdsList(contractorId, agreementNo, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getChunkIds(contractorId, agreementNo, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if (res.length > 0) {\r\n this.chunkList = res.map(val => ({\r\n ...val,\r\n combineData: `${val?.ChunkId}. ${val?.FarmerName} (${val?.AppId})`\r\n }));\r\n } else {\r\n this.chunkList = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.chunkList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onClickGetFarmerData() {\r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let contractorId = this.selectedOutletToGetData?.ContractorCode;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n let chunkId = this.chunkIdToGetData?.ChunkId;\r\n\r\n if (outletId && agreementNo) {\r\n this.getEPCFarmerDetails(agreementNo, outletId, chunkId);\r\n this.getEPCEstimationDetails(contractorId, outletId, agreementNo, chunkId);\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Outlet and Fill Agreement Number.',\r\n });\r\n }\r\n }\r\n\r\n getEPCFarmerDetails(agreementNo, outletId, chunkId) {\r\n this.loader.start();\r\n this.vendorService\r\n .getEPCDetails(agreementNo, outletId, chunkId, this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let resp: any = data;\r\n if (resp.length > 0) {\r\n this.epcDataForApproval = resp;\r\n } else {\r\n this.epcDataForApproval = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV (Farmer)', `${agreementNo}, ${outletId}, ${chunkId}`, new Date(), `${data}`);\r\n },\r\n error: (err) => {\r\n this.epcDataForApproval = [];\r\n\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV Error(Farmer)', `${agreementNo}, ${outletId}, ${chunkId}`, new Date(), `${err}`);\r\n },\r\n });\r\n }\r\n\r\n getEPCEstimationDetails(contractorId, outletId, agreementNo, chunkId) {\r\n this.loader.start();\r\n this.vendorService\r\n .getContractorEstimation(contractorId, outletId, agreementNo, chunkId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let resp: any = data;\r\n if (resp.length > 0) {\r\n this.estimationDataForApproval = resp.map((val) => ({\r\n ...val,\r\n id: `${val?.ProgramID}_${val?.catId}_${val?.ComponentID}`,\r\n jeQuantity: val?.Quantity ? val?.Quantity : 0,\r\n jeRemarks: val?.JERemarks ? val?.JERemarks : null\r\n }));\r\n } else {\r\n this.estimationDataForApproval = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV (Estimation)', `${contractorId}, ${agreementNo}, ${outletId}, ${chunkId}`, new Date(), `${data}`);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV Error(Estimation)', `${contractorId}, ${agreementNo}, ${outletId}, ${chunkId}`, new Date(), `${err}`);\r\n },\r\n });\r\n\r\n }\r\n\r\n onRowEditInit(product: any) {\r\n this.clonedProducts[product.id as string] = { ...product };\r\n }\r\n\r\n onRowEditSave(product: any) {\r\n if (product.jeQuantity > 0 && product.jeQuantity <= product.Quantity) {\r\n delete this.clonedProducts[product.id as string];\r\n // this.messageService.add({ severity: 'success', summary: 'Success', detail: 'Price is updated' });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error', detail: 'Invalid Quantity' });\r\n return;\r\n }\r\n }\r\n\r\n onRowEditCancel(product: any, index: number) {\r\n this.estimationDataForApproval[index] = this.clonedProducts[product.id as string];\r\n delete this.clonedProducts[product.id as string];\r\n }\r\n\r\n onClickSubmit() {\r\n if(this.epcDataForApproval.length == 0){\r\n this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Farmer details not found.' });\r\n return;\r\n }\r\n\r\n if (this.estimationDataForApproval.some(val => !(val.jeQuantity > 0 && val.jeQuantity <= val.Quantity))) {\r\n this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Please fill all the qunatities properly.' });\r\n return;\r\n }\r\n\r\n if (this.epcDataForApproval.some(val => (val.SurveyStatus == 0))) {\r\n this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Please physically Verify all the mentioned farmer.' });\r\n return;\r\n }\r\n\r\n // if(this.selectedJE == null || this.selectedJE == undefined){\r\n // this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Select next level user.' });\r\n // return;\r\n // }\r\n\r\n if (this.selectedStatus?.flag == 'A' && (this.remarks == undefined || this.remarks == \"\")) {\r\n this.messageService.add({ severity: 'info', summary: 'Info', detail: 'Add Remark' });\r\n return;\r\n }\r\n\r\n let reqBody = [\r\n {\r\n outletId: this.selectedOutletToGetData?.OutletId,\r\n agreementNo: this.agreementNoToGetData?.AgreementNo,\r\n conId: this.selectedOutletToGetData?.ContractorCode,\r\n ChunkId: this.chunkIdToGetData?.ChunkId,\r\n status: this.selectedStatus?.flag,\r\n remarks: this.remarks,\r\n userId: this.userId,\r\n nextUserId: '',\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n data: this.estimationDataForApproval.map(val => ({\r\n srNo: val?.SrNo,\r\n price: val?.PerUnitCost ? val?.PerUnitCost : 0,\r\n jeRemarks: val?.jeRemarks ? val?.jeRemarks : \"\",\r\n jeQuantity: val?.jeQuantity ? val?.jeQuantity : 0\r\n }))\r\n }\r\n ]\r\n\r\n this.submitEPCWork(reqBody);\r\n }\r\n\r\n submitEPCWork(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .insertComponentPriceEPC(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.clearAllData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV Submit', `${reqBody}`, new Date(), `${data}`);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work For PV Submit Error', `${reqBody}`, new Date(), `${err}`);\r\n },\r\n });\r\n }\r\n\r\n clearAllData() {\r\n this.selectedOutletToGetData = null;\r\n this.selectedBenefitedAreaToGetData = null;\r\n\r\n this.agreementNoList = [];\r\n this.agreementNoToGetData = null;\r\n\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n\r\n this.epcDataForApproval = [];\r\n this.estimationDataForApproval = [];\r\n\r\n this.selectedJE = null;\r\n this.selectedStatus = null;\r\n this.remarks = null;\r\n }\r\n\r\n clickOnAppAction(val) {\r\n this.selectedFarmerApp = val;\r\n this.surveyArea = val?.TotalArea;\r\n this.showActionDialog = true;\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([]);\r\n\r\n this.getCurrentLocation();\r\n this.addOverlay();\r\n this.refreshLocation = setInterval(() =>\r\n this.onRefreshCurrentLocation(), 6000)\r\n }\r\n\r\n\r\n onCloseActionDialog() {\r\n this.isGPSError = false;\r\n clearInterval(this.refreshLocation);\r\n this.showActionDialog = false;\r\n this.mapEnable = false;\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.overlays = this.overlays.filter(val => {\r\n return !val?.title?.includes('Coordinate')\r\n });\r\n this.documentList = [];\r\n // this.isPVSurveySubmitted = false;\r\n this.landArea = 0;\r\n this.surveyArea = null;\r\n this.addOverlay();\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.displayCameraComponent = false;\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n onDeleteCoordinate(i, tableNo) {\r\n this.geoLocMulArray[tableNo].splice(i, 1);\r\n for (let index = 0; index < this.geoLocMulArray[tableNo].length; index++) {\r\n this.geoLocMulArray[tableNo][index].CornerID = `Polygon ${tableNo+1} : Coordinate ${index + 1}` ;\r\n } \r\n\r\n if(this.geoLocMulArray[tableNo].length > 0){\r\n this.onSave(tableNo);\r\n }else{\r\n this.onSave(0);\r\n }\r\n // }\r\n }\r\n\r\n onDeleteNewPolygon(i){\r\n this.geoLocMulArray\r\n if (i >= 0 && i < this.geoLocMulArray.length) {\r\n this.geoLocMulArray.splice(i, 1);\r\n \r\n // Renaming the remaining polygon corner IDs\r\n for (let j = 0; j < this.geoLocMulArray.length; j++) {\r\n for (let k = 0; k < this.geoLocMulArray[j].length; k++) {\r\n this.geoLocMulArray[j][k].CornerID = `Polygon ${j + 1} : Coordinate ${k + 1}`;\r\n }\r\n }\r\n\r\n this.onSave(0);\r\n\r\n } else {\r\n console.error(\"Index out of bounds\");\r\n }\r\n }\r\n \r\n onStartNewPolygon(index){\r\n this.geoLocMulArray.push([]);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onCapture(index) {\r\n this.cdr.detectChanges();\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 5000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n let isInvalid = instant.geoLocMulArray[index].find((data) => {\r\n if (\r\n data.lat == pos.coords.latitude &&\r\n data.lng == pos.coords.longitude\r\n ) {\r\n return data;\r\n }\r\n });\r\n\r\n if (isInvalid) {\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Please move to a different location to get new coordinates.',\r\n });\r\n return;\r\n }\r\n\r\n const crd = pos.coords;\r\n const obj = {\r\n // CornerID: instant.geoLocMulArray[index].length + 1,\r\n CornerID: `Polygon ${index+1} : Coordinate ${instant.geoLocMulArray[index].length + 1}`,\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.geoLocMulArray[index].push(obj);\r\n \r\n // Check for self-intersections before allowing the polygon creation\r\n if (instant.isSelfIntersecting(instant.geoLocMulArray[index])) {\r\n instant.geoLocMulArray[index].pop();\r\n alert('Polygon is invalid due to intersecting edges. Please redraw.');\r\n return;\r\n }else {\r\n instant.onSave(index);\r\n }\r\n }\r\n\r\n function error(err) {\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access'\r\n } else{\r\n detailsMsg = 'Please capture again.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg\r\n ,\r\n });\r\n }\r\n\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n }\r\n }\r\n\r\n isSelfIntersecting(coordsArray) {\r\n for (let i = 0; i < coordsArray.length - 1; i++) {\r\n for (let j = i + 2; j < coordsArray.length; j++) {\r\n // Prevent checking consecutive edges or the last edge with the first one\r\n if (i === 0 && j === coordsArray.length - 1) continue;\r\n if (this.doLinesIntersect(coordsArray[i], coordsArray[i + 1], coordsArray[j], coordsArray[(j + 1) % coordsArray.length])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n doLinesIntersect(p1, q1, p2, q2) {\r\n // Helper function to calculate orientation of the points\r\n function orientation(p, q, r) {\r\n let val = (q.lat - p.lat) * (r.lng - q.lng) - (q.lng - p.lng) * (r.lat - q.lat);\r\n if (val === 0) return 0; // collinear\r\n return (val > 0) ? 1 : 2; // clock or counterclockwise\r\n }\r\n\r\n // Check the four orientations needed for the general and special cases\r\n let o1 = orientation(p1, q1, p2);\r\n let o2 = orientation(p1, q1, q2);\r\n let o3 = orientation(p2, q2, p1);\r\n let o4 = orientation(p2, q2, q1);\r\n\r\n // General case\r\n if (o1 !== o2 && o3 !== o4) return true;\r\n\r\n // Special cases\r\n // p1, q1, p2 are collinear and p2 lies on segment p1q1\r\n if (o1 === 0 && this.onSegment(p1, p2, q1)) return true;\r\n\r\n // p1, q1, q2 are collinear and q2 lies on segment p1q1\r\n if (o2 === 0 && this.onSegment(p1, q2, q1)) return true;\r\n\r\n // p2, q2, p1 are collinear and p1 lies on segment p2q2\r\n if (o3 === 0 && this.onSegment(p2, p1, q2)) return true;\r\n\r\n // p2, q2, q1 are collinear and q1 lies on segment p2q2\r\n if (o4 === 0 && this.onSegment(p2, q1, q2)) return true;\r\n\r\n return false;\r\n }\r\n\r\n onSegment(p, q, r) {\r\n return q.lng <= Math.max(p.lng, r.lng) && q.lng >= Math.min(p.lng, r.lng) &&\r\n q.lat <= Math.max(p.lat, r.lat) && q.lat >= Math.min(p.lat, r.lat);\r\n }\r\n\r\n onSave(tableNo) {\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.options.center = this.geoLocMulArray[tableNo][0];\r\n this.overlays = [];\r\n this.geoLocMulArray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.addMarkers(row, index, tableIndex);\r\n });\r\n })\r\n \r\n this.addOverlay();\r\n }\r\n\r\n addOverlay() {\r\n this.overlays.forEach((val, index) => {\r\n if(val?.fillColor){\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n\r\n this.geoLocMulArray.forEach(arr => {\r\n this.overlays.push(\r\n new google.maps.Polygon({\r\n paths: arr,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n\r\n let area = 0;\r\n this.geoLocMulArray.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.landArea = Number((0.000247105*area).toFixed(2));\r\n\r\n // if(this.geolocationsarray.length >=3){\r\n // let polygon = new google.maps.Polygon({paths: this.geolocationsarray})\r\n // let area = this.calculateLandArea(polygon.getPath());\r\n // this.landArea = Number((0.000247105*area).toFixed(2));\r\n // }\r\n \r\n // this.onRefreshCurrentLocation();\r\n }\r\n\r\n // ==================================\r\n \r\n calculateLandArea(polygon){\r\n return google?.maps?.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n removeOverlay() {\r\n this.overlays.pop().setMap(null);\r\n }\r\n \r\n addMarkers(row: any, index, tableNo) { \r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: `${row?.CornerID}`,\r\n // draggable: false,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n onDrag(event) {\r\n let indexVal = this.getTableAndCoordinateVal(event?.overlay?.title)\r\n\r\n\r\n let index = indexVal?.coordinateValue ? indexVal?.coordinateValue : 1;\r\n let tableNo = indexVal?.polygonIndex ? indexVal?.polygonIndex : 1;\r\n\r\n // index = event?.overlay?.title ? event?.overlay?.title.split(' ')[1] : -1;\r\n if (index >= 1) {\r\n this.geoLocMulArray[tableNo - 1][index - 1].lat = event?.overlay?.position?.lat();\r\n this.geoLocMulArray[tableNo - 1][index - 1].lng = event?.overlay?.position?.lng();\r\n\r\n this.removeOverlay();\r\n this.addOverlay();\r\n }\r\n }\r\n\r\n\r\n getTableAndCoordinateVal(val) {\r\n let polygonIndex = null; // Default to null if not present\r\n let coordinateValue = null; // Default to null if not present\r\n\r\n // Match both patterns\r\n const polygonMatch = val.match(/Polygon\\s+(\\d+)/);\r\n const coordinateMatch = val.match(/Coordinate\\s+(\\d+)/);\r\n\r\n // Extract polygon index if it exists\r\n if (polygonMatch) {\r\n polygonIndex = parseInt(polygonMatch[1], 10);\r\n }\r\n\r\n // Extract coordinate value if it exists\r\n if (coordinateMatch) {\r\n coordinateValue = parseInt(coordinateMatch[1], 10);\r\n }\r\n\r\n return { polygonIndex, coordinateValue };\r\n }\r\n \r\n\r\n onRefreshCurrentLocation() {\r\n this.overlays.forEach((val, index) => {\r\n if (val?.title == \"Current Location\") {\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n this.getCurrentLocation();\r\n }\r\n\r\n getCurrentLocation() {\r\n let overlay = this.overlays;\r\n let mapEnable = this.mapEnable;\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 10000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n const crd = pos.coords;\r\n const obj = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.options.center = obj;\r\n // const image = 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png';\r\n\r\n const currentLocationMarker = new google.maps.Marker({\r\n position: { lat: obj?.lat, lng: obj?.lng },\r\n title: 'Current Location',\r\n icon: '../../../assets/map/location-icon-5.png',\r\n });\r\n\r\n overlay.push(currentLocationMarker)\r\n\r\n\r\n // instant.geolocationsarray.push(obj)\r\n // instant.onSave()\r\n // instant.addOverlay()\r\n instant.mapEnable = true;\r\n }\r\n\r\n function error(err) {\r\n instant.isGPSError = true;\r\n let detailsMsg = '';\r\n if (err?.message == 'User denied Geolocation') {\r\n detailsMsg = 'Please enable Geolocation access.'\r\n } else {\r\n detailsMsg = 'Please Refresh the Current Location.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg,\r\n });\r\n }\r\n\r\n // this.mapEnable = true;\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n // this.addOverlay();\r\n }\r\n }\r\n\r\n selectPreSurveyData(event) { }\r\n\r\n // getImagesArray() {\r\n // if (this.documentList.length == 0) {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'ERROR_MESSAGE',\r\n // detail: 'Images are Mandatory',\r\n // });\r\n // return;\r\n // } else {\r\n // this.uploadOptions.forEach((option) => {\r\n // if (option.code != 'others') {\r\n // let filtered = this.documentList.filter((doc) => {\r\n // return doc.document_type == option.name;\r\n // });\r\n // if (filtered?.length == 0) {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Atleast one ' + option.name + ' is Needed!',\r\n // });\r\n // return;\r\n // }\r\n // }\r\n // });\r\n // }\r\n // }\r\n\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n exifr\r\n .parse(this.webcamImage.imageAsDataUrl)\r\n .then((output) => {\r\n });\r\n\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], this.selctedFileType + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // if (params.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `preEstimateSurvey_${new Date().getTime()}`;\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n document_type: this.selctedFileType.name,\r\n displayName: fileName,\r\n name: this.selctedFileType.name,\r\n // this.selctedFileType.code === 'farmer_photo'\r\n // ? 'Farmer Photo'\r\n // : this.selctedFileType.code === 'water_source'\r\n // ? 'Water Source'\r\n // : this.selctedFileType.code === 'land_photo'\r\n // ? 'Land Photo'\r\n // : this.selctedFileType.code === 'others'\r\n // ? 'Others'\r\n // : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n // let documentListObject = {\r\n // // 'appId': this.cryptoJsService.DecryptData(params.appId),\r\n // 'documentList': this.documentList\r\n // }\r\n // sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n }\r\n this.selctedFileType = '';\r\n });\r\n // });\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n onCaptureImage() {\r\n this.displayCameraComponent = true;\r\n }\r\n onCloseImageDialog() {\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n }\r\n\r\n getImagesArray() {\r\n if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'ERROR_MESSAGE',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n return;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n submitFarmerPVSurvey() {\r\n let existImage = true;\r\n // this.isPVSurveySubmitted = true;\r\n let geoCoordinateError = false;\r\n this.geoLocMulArray.forEach((array, index) => {\r\n if(array.length < 4){\r\n this.coordinateError = `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`,\r\n });\r\n geoCoordinateError = true;\r\n }\r\n })\r\n if (geoCoordinateError) {\r\n // this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES';\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Please provide atleast 4 GPS Coordinates',\r\n // });\r\n return;\r\n } \r\n else if (this.landArea > 0 && (this.landArea - this.surveyArea > 0.1*this.landArea || this.surveyArea - this.landArea > 0.1*this.landArea)) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Difference between Calculated Area (${this.landArea}) and Survey Area (${this.surveyArea}) is more. Please recapture the coordinates.`,\r\n });\r\n return;\r\n } \r\n else if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n existImage = false;\r\n }\r\n }\r\n });\r\n let attachemntArray = [];\r\n if (!existImage) {\r\n return;\r\n }\r\n for (let index = 0; index < this.documentList.length; index++) {\r\n const obj = {\r\n attachmentsDoc: this.documentList[index].attachment,\r\n documentType: this.documentList[index].document_type,\r\n };\r\n attachemntArray.push(obj);\r\n }\r\n // let geoCoordinates = [];\r\n // for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n // const gpsObj = {\r\n // CornerID: index + 1,\r\n // latitude: this.geolocationsarray[index].lat,\r\n // longitude: this.geolocationsarray[index].lng,\r\n // };\r\n // geoCoordinates.push(gpsObj);\r\n // }\r\n\r\n let geoCoordinates: any []= [];\r\n this.geoLocMulArray.forEach((array) => {\r\n let val = array.map((val) => ({\r\n CornerID: val.CornerID,\r\n latitude: val.lat,\r\n longitude: val.lng,\r\n appId: this.selectedFarmerApp?.APP_ID,\r\n progId: JSON.stringify(this.selectedFarmerApp?.ProposedSystemId)\r\n }))\r\n geoCoordinates.push(val);\r\n })\r\n\r\n const dataObj = [\r\n {\r\n outletId: this.selectedOutletToGetData?.OutletId,\r\n conId: this.selectedOutletToGetData?.ContractorCode,\r\n agreementNo: this.agreementNoToGetData?.AgreementNo,\r\n chunkId: this.chunkIdToGetData?.ChunkId,\r\n userId: this.userId,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n insertServayAttachmentsEPC: attachemntArray.map(val => ({\r\n ...val,\r\n appId: this.selectedFarmerApp?.APP_ID,\r\n progId: this.selectedFarmerApp?.ProposedSystemId,\r\n })),\r\n gpsCoordinatesEPC: geoCoordinates,\r\n }\r\n ];\r\n\r\n this.submitFarmerPVSurveyData(dataObj);\r\n }\r\n }\r\n\r\n\r\n submitFarmerPVSurveyData(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .insertGeoAndAttachmentsEPC(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.actionDialogData();\r\n this.showActionDialog = false;\r\n\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let contractorId = this.selectedOutletToGetData?.ContractorCode;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n let chunkId = this.chunkIdToGetData?.ChunkId;\r\n this.getEPCFarmerDetails(agreementNo, outletId, chunkId);\r\n \r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n actionDialogData(){\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([]);\r\n\r\n this.documentList = [];\r\n }\r\n\r\n\r\n removeImg(i) {\r\n this.documentList.splice(i, 1);\r\n }\r\n\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/)\r\n var q = Number(parts[1])\r\n var side = window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]]\r\n return side * (q / 100)\r\n }\r\n\r\n clickOnEditApp(row){\r\n this.clickOnAppAction(row);\r\n\r\n let reqBody = {\r\n AppId: row?.APP_ID,\r\n ProgId: row?.ProposedSystemId,\r\n ChunkId: this.chunkIdToGetData?.ChunkId\r\n }\r\n this.getAppData(reqBody);\r\n }\r\n\r\n getAppData(reqBody) {\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getGeoAndAttachmentsEPC(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.loading = false;\r\n \r\n if (data.ImagePathJE.length > 0 || data.listGPSCoordinatesJE.length > 0) {\r\n // this.imagePathJE = data.ImagePathJE;\r\n // this.listGPSCoordinatesJE = data.listGPSCoordinatesJE;\r\n\r\n // for (let index = 0; index < data.listGPSCoordinatesJE.length; index++) {\r\n // let geoData = {\r\n // CornerID: data.listGPSCoordinatesJE[index].CornerID,\r\n // lat: data.listGPSCoordinatesJE[index].Latitude,\r\n // lng: data.listGPSCoordinatesJE[index].Longitude,\r\n // };\r\n // this.geolocationsarray.push(geoData);\r\n // }\r\n // if (this.geolocationsarray.length == 0) {\r\n // this.mapEnable = false;\r\n // } else {\r\n // if (this.geolocationsarray && this.geolocationsarray.length > 0) {\r\n // this.options.center = this.geolocationsarray[0];\r\n // }\r\n // this.mapEnable = true;\r\n // // this.geolocationsarray.forEach((row, index) => {\r\n // // this.addMarkers(row, index);\r\n // // });\r\n // // this.addOverlay();\r\n // }\r\n\r\n if(data.listGPSCoordinatesJE.length > 0){\r\n let geoCoordinates: any []= [];\r\n data.listGPSCoordinatesJE.forEach((array) => {\r\n let val = array.map((val) => ({\r\n CornerID: val.CornerID,\r\n lat: val.Latitude,\r\n lng: val.Longitude\r\n }))\r\n geoCoordinates.push(val);\r\n })\r\n\r\n this.geoLocMulArray = geoCoordinates;\r\n\r\n this.onSave(0);\r\n }\r\n \r\n for (let index = 0; index < data.ImagePathJE.length; index++) {\r\n let imagesData = {\r\n attachment: data.ImagePathJE[index].ImagePath,\r\n attachmentRawUrl: data.ImagePathJE[index].ImagePath,\r\n document_type: data.ImagePathJE[index].DocumentType,\r\n displayName: data.ImagePathJE[index].DocumentType,\r\n name: data.ImagePathJE[index].DocumentType,\r\n };\r\n this.documentList.push(imagesData);\r\n }\r\n }\r\n else {\r\n // this.imagePathJE = [];\r\n // this.listGPSCoordinatesJE = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n\r\n this.activityRecordService.activityRecord( this.userId, 'EPC PV Update (App details)', JSON.stringify(reqBody), new Date(), 'Success' );\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord( this.userId, 'EPC PV Update Error (App details)', JSON.stringify(reqBody), new Date(), `${err}` );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n}","\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n

0\"\r\n [style]=\"{'color': 'rgb(168, 32, 32)', 'font-weight': 'bold', 'font-size': '1.0rem', 'text-align': 'center'}\">\r\n {{ 'Farmer\r\n Details' | translate }} {{ 'of ' }}{{ this.selectedOutletToGetData?.Outlets }} {{ ' & Agreement No:'}}\r\n {{\r\n agreementNoToGetData?.AgreementNo }}

\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'APP_ID'| translate}}\r\n {{'TOTAL_AREA_ACRE'| translate}}\r\n \r\n {{'FARMER_NAME'| translate}}\r\n {{'FATHERS_NAME'| translate}}\r\n {{'AADHAR_NO'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'PPP_ID'| translate}}\r\n {{'MFMB_NO'| translate}}\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.APP_ID}}\r\n {{product?.TotalArea}}\r\n \r\n {{product?.Name}}\r\n {{product?.Father_name}}\r\n {{product?.Aadhar_No}}\r\n {{product?.Mobile}}\r\n {{product?.PPP_ID}}\r\n {{product?.MFMBNo}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
0\" class=\"dashboardTable mt-5\">\r\n
\r\n \r\n

0\"\r\n [style]=\"{'color': 'rgb(168, 32, 32)', 'font-weight': 'bold', 'font-size': '1.0rem', 'text-align': 'center'}\">\r\n {{ 'Estimation Details' | translate }}\r\n

\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ \"PROGRAMME_NAME\" | translate}}\r\n {{ \"CATEGORY_NAME\" | translate}}\r\n {{ \"COMPONENT_NAME\" | translate}}\r\n {{ \"SIZE\" | translate}}\r\n {{ \"PER_UNIT_COST\" | translate}}\r\n {{ \"QUANTITY\" | translate}}\r\n {{ \"ACTUAL_QUANTITY\" | translate}}\r\n {{ \"Remark\" | translate}}\r\n {{ \"\" | translate}}\r\n \r\n \r\n \r\n 0 && product.jeQuantity <= product?.Quantity) ? 'rgb(200, 246, 221)' : 'rgb(249, 212, 212)'}\">\r\n {{product?.Program_Name}}\r\n {{product?.category}}\r\n {{product?.Component}}\r\n {{product?.Size}}\r\n {{product?.PerUnitCost}}\r\n {{product?.Quantity}}\r\n \r\n \r\n \r\n product.Quantity}\" />\r\n
\r\n {{'Greater than 0'| translate}}\r\n
\r\n
product.Quantity\">\r\n {{'Not more than ' | translate}} {{product?.Quantity}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'Non Empty.'| translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"card submit-card mt-2\">\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}
\r\n
0 || overlays.length>0\" class=\"dashboardTable\">\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n {{'ACTIONS'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n

{{coordinateError | translate}}

\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
0\" class=\"field md:col-4 col-12 area-display-card\">\r\n \r\n
\r\n
\r\n
0 && (landArea - surveyArea > 0.1*landArea || surveyArea - landArea > 0.1*landArea)\" class=\"p-fluid p-formgrid justify-content-center areaError mb-4\" style=\"display: flex; flex-wrap:wrap\">\r\n

{{ \"CALCULATED_AREA_IS_MUCH_GREATER_THAN_APPLIED_AREA._PLEASE_RECAPTURE_THE_COORDINATES\" | translate }}

\r\n
\r\n
\r\n\r\n
\r\n
{{'CAPTURE_IMAGE'| translate}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{item.name}}\r\n

\r\n

\r\n {{item.name}}\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{imageError}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">\"{{'MESSAGES'| translate}}\":

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-failed-mi-payment-fsv',\r\n templateUrl: './failed-mi-payment-fsv.component.html',\r\n styleUrls: ['./failed-mi-payment-fsv.component.scss']\r\n})\r\nexport class FailedMiPaymentFsvComponent implements OnInit {\r\n\r\n public tableData: any = [];\r\n public searchValue: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public displayDialog: boolean = false;\r\n public tableData2: any = [];\r\n public lotType: any;\r\n public lotNumber: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n // private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n public messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n \r\n this.lotType = 'fsv';\r\n this.loadTableData(this.lotType, this.userId);\r\n }\r\n\r\n loadTableData(lotType, userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIConsolidatedFailedLotData(lotType, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData = data;\r\n }else{\r\n this.tableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayDialog = false;\r\n this.lotNumber = null;\r\n this.tableData2 = [];\r\n }\r\n\r\n onViewLot(lotNo){\r\n this.displayDialog = true;\r\n this.lotNumber = lotNo;\r\n this.loadLotData(this.lotType, lotNo);\r\n }\r\n\r\n loadLotData(lotType, lotNo) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIFailedLotData(lotType, lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData2 = data;\r\n }else{\r\n this.tableData2 = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateLot(){\r\n let reqBody = {\r\n \"lotType\": this.lotType,\r\n \"lotNo\": this.lotNumber,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.updateLotData(reqBody);\r\n }\r\n\r\n updateLotData(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .updateMIFailedLot(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // this.loader.close();\r\n if(data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseDialog();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n\r\n","
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOTAL_APP' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ACTION' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ val?.Lot_No }}\r\n \r\n \r\n {{ val?.TotalApp }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'APP_ID' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'APPLICANT_TYPE' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CREATED_AT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CENTER_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATE_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'SUBSIDY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATUS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'REMARKS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'FINANCIAL_YEAR' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ val?.AppID }}\r\n {{ val?.ApplicationType }}\r\n {{ val?.CreatedDate | date:'mediumDate' }}\r\n {{ val?.Lot_No }}\r\n {{ val?.Centre_share_amt }}\r\n {{ val?.State_share_amt }}\r\n {{ val?.Subsidy_Amt_Farmer }}\r\n {{ val?.Status }}\r\n {{ val?.Remarks }}\r\n {{ val?.Fin_Year }}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-failed-mi-payment-rtf',\r\n templateUrl: './failed-mi-payment-rtf.component.html',\r\n styleUrls: ['./failed-mi-payment-rtf.component.scss']\r\n})\r\nexport class FailedMiPaymentRtfComponent implements OnInit {\r\n\r\n public tableData: any = [];\r\n public searchValue: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public displayDialog: boolean = false;\r\n public tableData2: any = [];\r\n public lotType: any;\r\n public lotNumber: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n // private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n public messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n \r\n this.lotType = 'rtf';\r\n this.loadTableData(this.lotType, this.userId);\r\n }\r\n\r\n loadTableData(lotType, userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIConsolidatedFailedLotData(lotType, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData = data;\r\n }else{\r\n this.tableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayDialog = false;\r\n this.lotNumber = null;\r\n this.tableData2 = [];\r\n }\r\n\r\n onViewLot(lotNo){\r\n this.displayDialog = true;\r\n this.lotNumber = lotNo;\r\n this.loadLotData(this.lotType, lotNo);\r\n }\r\n\r\n loadLotData(lotType, lotNo) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIFailedLotData(lotType, lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData2 = data;\r\n }else{\r\n this.tableData2 = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateLot(){\r\n let reqBody = {\r\n \"lotType\": this.lotType,\r\n \"lotNo\": this.lotNumber,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.updateLotData(reqBody);\r\n }\r\n\r\n updateLotData(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .updateMIFailedLot(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // this.loader.close();\r\n if(data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseDialog();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n\r\n","
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOTAL_APP' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ACTION' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ val?.Lot_No }}\r\n \r\n \r\n {{ val?.TotalApp }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'APP_ID' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'APPLICANT_TYPE' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CREATED_AT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CENTER_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATE_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'SUBSIDY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATUS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'REMARKS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'FINANCIAL_YEAR' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ val?.AppID }}\r\n {{ val?.ApplicationType }}\r\n {{ val?.CreatedDate | date:'mediumDate' }}\r\n {{ val?.Lot_No }}\r\n {{ val?.Centre_share_amt }}\r\n {{ val?.State_share_amt }}\r\n {{ val?.Subsidy_Amt_Farmer }}\r\n {{ val?.Status }}\r\n {{ val?.Remarks }}\r\n {{ val?.Fin_Year }}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-failed-mi-payment-stf',\r\n templateUrl: './failed-mi-payment-stf.component.html',\r\n styleUrls: ['./failed-mi-payment-stf.component.scss']\r\n})\r\nexport class FailedMiPaymentStfComponent implements OnInit {\r\n\r\n public tableData: any = [];\r\n public searchValue: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public displayDialog: boolean = false;\r\n public tableData2: any = [];\r\n public lotType: any;\r\n public lotNumber: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n // private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n public messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n \r\n this.lotType = 'stf';\r\n this.loadTableData(this.lotType, this.userId);\r\n }\r\n\r\n loadTableData(lotType, userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIConsolidatedFailedLotData(lotType, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData = data;\r\n }else{\r\n this.tableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayDialog = false;\r\n this.lotNumber = null;\r\n this.tableData2 = [];\r\n }\r\n\r\n onViewLot(lotNo){\r\n this.displayDialog = true;\r\n this.lotNumber = lotNo;\r\n this.loadLotData(this.lotType, lotNo);\r\n }\r\n\r\n loadLotData(lotType, lotNo) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIFailedLotData(lotType, lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData2 = data;\r\n }else{\r\n this.tableData2 = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateLot(){\r\n let reqBody = {\r\n \"lotType\": this.lotType,\r\n \"lotNo\": this.lotNumber,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.updateLotData(reqBody);\r\n }\r\n\r\n updateLotData(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .updateMIFailedLot(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // this.loader.close();\r\n if(data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseDialog();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\n","
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOTAL_APP' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ACTION' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ val?.Lot_No }}\r\n \r\n \r\n {{ val?.TotalApp }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'APP_ID' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'APPLICANT_TYPE' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CREATED_AT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CENTER_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATE_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'SUBSIDY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATUS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'REMARKS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'FINANCIAL_YEAR' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ val?.AppID }}\r\n {{ val?.ApplicationType }}\r\n {{ val?.CreatedDate | date:'mediumDate' }}\r\n {{ val?.Lot_No }}\r\n {{ val?.Centre_share_amt }}\r\n {{ val?.State_share_amt }}\r\n {{ val?.Subsidy_Amt_Farmer }}\r\n {{ val?.Status }}\r\n {{ val?.Remarks }}\r\n {{ val?.Fin_Year }}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-failed-mi-payment-stv',\r\n templateUrl: './failed-mi-payment-stv.component.html',\r\n styleUrls: ['./failed-mi-payment-stv.component.scss']\r\n})\r\nexport class FailedMiPaymentStvComponent implements OnInit {\r\n\r\n public tableData: any = [];\r\n public searchValue: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public displayDialog: boolean = false;\r\n public tableData2: any = [];\r\n public lotType: any;\r\n public lotNumber: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n // private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n public messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n \r\n this.lotType = 'stv';\r\n this.loadTableData(this.lotType, this.userId);\r\n }\r\n\r\n loadTableData(lotType, userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIConsolidatedFailedLotData(lotType, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData = data;\r\n }else{\r\n this.tableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayDialog = false;\r\n this.lotNumber = null;\r\n this.tableData2 = [];\r\n }\r\n\r\n onViewLot(lotNo){\r\n this.displayDialog = true;\r\n this.lotNumber = lotNo;\r\n this.loadLotData(this.lotType, lotNo);\r\n }\r\n\r\n loadLotData(lotType, lotNo) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getMIFailedLotData(lotType, lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData2 = data;\r\n }else{\r\n this.tableData2 = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateLot(){\r\n let reqBody = {\r\n \"lotType\": this.lotType,\r\n \"lotNo\": this.lotNumber,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.updateLotData(reqBody);\r\n }\r\n\r\n updateLotData(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .updateMIFailedLot(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // this.loader.close();\r\n if(data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseDialog();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n","
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOTAL_APP' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ACTION' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ val?.Lot_No }}\r\n \r\n \r\n {{ val?.TotalApp }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'APP_ID' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'APPLICANT_TYPE' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CREATED_AT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CENTER_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATE_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'SUBSIDY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATUS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'REMARKS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'FINANCIAL_YEAR' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ val?.AppID }}\r\n {{ val?.ApplicationType }}\r\n {{ val?.CreatedDate | date:'mediumDate' }}\r\n {{ val?.Lot_No }}\r\n {{ val?.Centre_share_amt }}\r\n {{ val?.State_share_amt }}\r\n {{ val?.Subsidy_Amt_Farmer }}\r\n {{ val?.Status }}\r\n {{ val?.Remarks }}\r\n {{ val?.Fin_Year }}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-failed-mi-payment',\r\n templateUrl: './failed-mi-payment.component.html',\r\n styleUrls: ['./failed-mi-payment.component.scss']\r\n})\r\nexport class FailedMiPaymentComponent implements OnInit {\r\n\r\n dropDownList: { type: any, value: any }[];\r\n applicationSelected: any;\r\n responseDate: any;\r\n cols: any[];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private ipService: IpAddressService, \r\n private caoService: CaoService, \r\n private messageService: MessageService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n autoId: any;\r\n appId: any;\r\n items: any[];\r\n userID: any;\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'Failed MI Payment', '', new Date(), 'Success');\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n\r\n // if(this.router.url.startsWith('/ew-department')){\r\n // this.dropDownList = [\r\n // // {\r\n // // type: 'Farmer Share To Vendor', value: `/all-subsidy-lot/mi-farmer-share-to-vendor/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Subsidy To Farmer', value: `/all-subsidy-lot/mi-subsidy-to-farmer/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Subsidy To Vendor', value: `/all-subsidy-lot/mi-subsidy-to-vendor/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Refund To Farmer', value: `/all-subsidy-lot/mi-refund-to-farmer/pfms`\r\n // // },\r\n // {\r\n // type: 'Stage 1 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage1/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 1 (ABY)', value: `/all-subsidy-lot/pond/tank-stage1/aby`\r\n // },\r\n // {\r\n // type: 'Stage 2 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage2/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 2 (ABY)', value: `/all-subsidy-lot/pond/tank-stage2/aby`\r\n // },\r\n // {\r\n // type: 'Stage 3 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage3/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 3 (ABY)', value: `/all-subsidy-lot/pond/tank-stage3/aby`\r\n // },\r\n // ]\r\n // }\r\n // else{\r\n // this.dropDownList = [\r\n // {\r\n // type: 'Farmer Share To Vendor (PDMC)', value: `/all-subsidy-lot/mi-farmer-share-to-vendor/pdmc`\r\n // },\r\n // // {\r\n // // type: 'Farmer Share To Farmer (ABY)', value: `/all-subsidy-lot/mi-farmer-share-to-farmer/aby`\r\n // // },\r\n // {\r\n // type: 'Subsidy To Farmer (PDMC)', value: `/all-subsidy-lot/mi-subsidy-to-farmer/pdmc`\r\n // },\r\n // {\r\n // type: 'Subsidy To Farmer (ABY)', value: `/all-subsidy-lot/mi-subsidy-to-farmer/aby`\r\n // },\r\n // {\r\n // type: 'Subsidy To Vendor (PDMC)', value: `/all-subsidy-lot/mi-subsidy-to-vendor/pdmc`\r\n // },\r\n // // {\r\n // // type: 'Subsidy To Vendor (ABY)', value: `/all-subsidy-lot/mi-subsidy-to-vendor/aby`\r\n // // },\r\n // {\r\n // type: 'Refund To Farmer (PDMC)', value: `/all-subsidy-lot/mi-refund-to-farmer/pdmc`\r\n // },\r\n // // {\r\n // // type: 'Refund To Farmer (ABY)', value: `/all-subsidy-lot/mi-refund-to-farmer/aby`\r\n // // },\r\n // // {\r\n // // type: 'Stage 1', value: `/all-subsidy-lot/pond/tank-stage1/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Stage 2', value: `/all-subsidy-lot/pond/tank-stage2/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Stage 3', value: `/all-subsidy-lot/pond/tank-stage3/pfms`\r\n // // },\r\n // ]\r\n // }\r\n \r\n this.dropDownList = [\r\n // {\r\n // type: 'Select', value: null\r\n // },\r\n {\r\n type: 'Farmer Share To Vendor', value: `/failed-mi-payment/fsv`\r\n },\r\n {\r\n type: 'Subsidy To Farmer', value: `/failed-mi-payment/stf`\r\n },\r\n {\r\n type: 'Subsidy To Vendor', value: `/failed-mi-payment/stv`\r\n },\r\n {\r\n type: 'Refund To Farmer', value: `/failed-mi-payment/rtf`\r\n },\r\n // {\r\n // type: 'Stage 1 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage1/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 1 (ABY)', value: `/all-subsidy-lot/pond/tank-stage1/aby`\r\n // },\r\n // {\r\n // type: 'Stage 2 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage2/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 2 (ABY)', value: `/all-subsidy-lot/pond/tank-stage2/aby`\r\n // },\r\n // {\r\n // type: 'Stage 3 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage3/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 3 (ABY)', value: `/all-subsidy-lot/pond/tank-stage3/aby`\r\n // },\r\n ]\r\n\r\n this.applicationSelected = {\r\n type: 'Farmer Share To Vendor', value: `/failed-mi-payment/fsv`\r\n }\r\n this.onApplicationTypeSelected({value: this.applicationSelected})\r\n // console.log(this.applicationSelected)\r\n }\r\n\r\n onApplicationTypeSelected(event) {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.router.navigate([`/${parentRoute.concat(event.value.value)}`])\r\n }\r\n\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-failed-pond-payment-s1',\r\n templateUrl: './failed-pond-payment-s1.component.html',\r\n styleUrls: ['./failed-pond-payment-s1.component.scss']\r\n})\r\nexport class FailedPondPaymentS1Component implements OnInit {\r\n\r\n public tableData: any = [];\r\n public searchValue: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public displayDialog: boolean = false;\r\n public tableData2: any = [];\r\n public lotType: any;\r\n public lotNumber: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n // private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n public messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n \r\n this.lotType = 'stage1';\r\n this.loadTableData(this.lotType, this.userId);\r\n }\r\n\r\n loadTableData(lotType, userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getPondConsolidatedFailedLotData(lotType, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData = data;\r\n }else{\r\n this.tableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayDialog = false;\r\n this.lotNumber = null;\r\n this.tableData2 = [];\r\n }\r\n\r\n onViewLot(lotNo){\r\n this.displayDialog = true;\r\n this.lotNumber = lotNo;\r\n this.loadPondData(this.lotType, lotNo);\r\n }\r\n\r\n loadPondData(lotType, lotNo) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getPondFailedLotData(lotType, lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData2 = data;\r\n }else{\r\n this.tableData2 = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateLot(){\r\n let reqBody = {\r\n \"lotType\": this.lotType,\r\n \"lotNo\": this.lotNumber,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.updateLotData(reqBody);\r\n }\r\n\r\n updateLotData(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .updatePondFailedLot(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // this.loader.close();\r\n if(data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseDialog();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n","
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOTAL_APP' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ACTION' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ val?.Lot_No }}\r\n \r\n \r\n {{ val?.TotalApp }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'APP_ID' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CREATED_AT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'PFMS_PAYMENT_DATE' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOP_UP_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ABY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CENTER_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATE_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'SUBSIDY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATUS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'REMARKS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'FINANCIAL_YEAR' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ val?.AppID }}\r\n {{ val?.CreatedDate | date:'mediumDate' }}\r\n {{ val?.Lot_No }}\r\n {{ val?.PFMSPaymentDate | date:'mediumDate' }}\r\n {{ val?.Topup }}\r\n {{ val?.ABY }}\r\n {{ val?.CenterShare_Amount }}\r\n {{ val?.StateShare_Amount }}\r\n {{ val?.Subsidy_Amt }}\r\n {{ val?.Status }}\r\n {{ val?.Remarks }}\r\n {{ val?.Fin_Year }}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-failed-pond-payment-s2',\r\n templateUrl: './failed-pond-payment-s2.component.html',\r\n styleUrls: ['./failed-pond-payment-s2.component.scss']\r\n})\r\nexport class FailedPondPaymentS2Component implements OnInit {\r\n\r\n public tableData: any = [];\r\n public searchValue: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public displayDialog: boolean = false;\r\n public tableData2: any = [];\r\n public lotType: any;\r\n public lotNumber: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n // private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n public messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n \r\n this.lotType = 'stage2';\r\n this.loadTableData(this.lotType, this.userId);\r\n }\r\n\r\n loadTableData(lotType, userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getPondConsolidatedFailedLotData(lotType, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData = data;\r\n }else{\r\n this.tableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayDialog = false;\r\n this.lotNumber = null;\r\n this.tableData2 = [];\r\n }\r\n\r\n onViewLot(lotNo){\r\n this.displayDialog = true;\r\n this.lotNumber = lotNo;\r\n this.loadPondData(this.lotType, lotNo);\r\n }\r\n\r\n loadPondData(lotType, lotNo) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getPondFailedLotData(lotType, lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData2 = data;\r\n }else{\r\n this.tableData2 = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateLot(){\r\n let reqBody = {\r\n \"lotType\": this.lotType,\r\n \"lotNo\": this.lotNumber,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.updateLotData(reqBody);\r\n }\r\n\r\n updateLotData(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .updatePondFailedLot(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // this.loader.close();\r\n if(data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseDialog();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n","
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOTAL_APP' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ACTION' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ val?.Lot_No }}\r\n \r\n \r\n {{ val?.TotalApp }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'APP_ID' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CREATED_AT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'PFMS_PAYMENT_DATE' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOP_UP_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ABY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CENTER_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATE_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'SUBSIDY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATUS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'REMARKS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'FINANCIAL_YEAR' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ val?.AppID }}\r\n {{ val?.CreatedDate | date:'mediumDate' }}\r\n {{ val?.ApplicationType }}\r\n {{ val?.Lot_No }}\r\n {{ val?.PFMSPaymentDate | date:'mediumDate' }}\r\n {{ val?.Topup }}\r\n {{ val?.ABY }}\r\n {{ val?.Centre_share_amt }}\r\n {{ val?.State_share_amt }}\r\n {{ val?.Subsidy_Amt }}\r\n {{ val?.Status }}\r\n {{ val?.Remarks }}\r\n {{ val?.Fin_Year }}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-failed-pond-payment-s3',\r\n templateUrl: './failed-pond-payment-s3.component.html',\r\n styleUrls: ['./failed-pond-payment-s3.component.scss']\r\n})\r\nexport class FailedPondPaymentS3Component implements OnInit {\r\n\r\n public tableData: any = [];\r\n public searchValue: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public displayDialog: boolean = false;\r\n public tableData2: any = [];\r\n public lotType: any;\r\n public lotNumber: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n // private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n public messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n \r\n this.lotType = 'stage3';\r\n this.loadTableData(this.lotType, this.userId);\r\n }\r\n\r\n loadTableData(lotType, userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getPondConsolidatedFailedLotData(lotType, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData = data;\r\n }else{\r\n this.tableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayDialog = false;\r\n this.lotNumber = null;\r\n this.tableData2 = [];\r\n }\r\n\r\n onViewLot(lotNo){\r\n this.displayDialog = true;\r\n this.lotNumber = lotNo;\r\n this.loadPondData(this.lotType, lotNo);\r\n }\r\n\r\n loadPondData(lotType, lotNo) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getPondFailedLotData(lotType, lotNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n console.log(data)\r\n // this.loader.close();\r\n if(data.length > 0){\r\n this.tableData2 = data;\r\n }else{\r\n this.tableData2 = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateLot(){\r\n let reqBody = {\r\n \"lotType\": this.lotType,\r\n \"lotNo\": this.lotNumber,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.updateLotData(reqBody);\r\n }\r\n\r\n updateLotData(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .updatePondFailedLot(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // this.loader.close();\r\n if(data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.onCloseDialog();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData2 = [];\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n","
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOTAL_APP' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ACTION' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ val?.Lot_No }}\r\n \r\n \r\n {{ val?.TotalApp }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ 'APP_ID' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CREATED_AT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'LOT_NO' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'PFMS_PAYMENT_DATE' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'TOP_UP_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'ABY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'CENTER_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATE_SHARE_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'SUBSIDY_AMOUNT' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'STATUS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'REMARKS' | translate }}\r\n \r\n
\r\n \r\n \r\n
\r\n {{ 'FINANCIAL_YEAR' | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ val?.AppID }}\r\n {{ val?.CreatedDate | date:'mediumDate' }}\r\n {{ val?.Lot_No }}\r\n {{ val?.PFMSPaymentDate | date:'mediumDate' }}\r\n {{ val?.Topup }}\r\n {{ val?.ABY }}\r\n {{ val?.CenterShare_Amount }}\r\n {{ val?.StateShare_Amount }}\r\n {{ val?.Subsidy_Amt }}\r\n {{ val?.Status }}\r\n {{ val?.Remarks }}\r\n {{ val?.Fin_Year }}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-failed-pond-payment',\r\n templateUrl: './failed-pond-payment.component.html',\r\n styleUrls: ['./failed-pond-payment.component.scss']\r\n})\r\nexport class FailedPondPaymentComponent implements OnInit {\r\n\r\n dropDownList: { type: any, value: any }[];\r\n applicationSelected: any;\r\n responseDate: any;\r\n cols: any[];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private ipService: IpAddressService, \r\n private caoService: CaoService, \r\n private messageService: MessageService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n autoId: any;\r\n appId: any;\r\n items: any[];\r\n userID: any;\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'Failed MI Payment', '', new Date(), 'Success');\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n\r\n // if(this.router.url.startsWith('/ew-department')){\r\n // this.dropDownList = [\r\n // // {\r\n // // type: 'Farmer Share To Vendor', value: `/all-subsidy-lot/mi-farmer-share-to-vendor/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Subsidy To Farmer', value: `/all-subsidy-lot/mi-subsidy-to-farmer/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Subsidy To Vendor', value: `/all-subsidy-lot/mi-subsidy-to-vendor/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Refund To Farmer', value: `/all-subsidy-lot/mi-refund-to-farmer/pfms`\r\n // // },\r\n // {\r\n // type: 'Stage 1 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage1/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 1 (ABY)', value: `/all-subsidy-lot/pond/tank-stage1/aby`\r\n // },\r\n // {\r\n // type: 'Stage 2 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage2/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 2 (ABY)', value: `/all-subsidy-lot/pond/tank-stage2/aby`\r\n // },\r\n // {\r\n // type: 'Stage 3 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage3/pdmc`\r\n // },\r\n // {\r\n // type: 'Stage 3 (ABY)', value: `/all-subsidy-lot/pond/tank-stage3/aby`\r\n // },\r\n // ]\r\n // }\r\n // else{\r\n // this.dropDownList = [\r\n // {\r\n // type: 'Farmer Share To Vendor (PDMC)', value: `/all-subsidy-lot/mi-farmer-share-to-vendor/pdmc`\r\n // },\r\n // // {\r\n // // type: 'Farmer Share To Farmer (ABY)', value: `/all-subsidy-lot/mi-farmer-share-to-farmer/aby`\r\n // // },\r\n // {\r\n // type: 'Subsidy To Farmer (PDMC)', value: `/all-subsidy-lot/mi-subsidy-to-farmer/pdmc`\r\n // },\r\n // {\r\n // type: 'Subsidy To Farmer (ABY)', value: `/all-subsidy-lot/mi-subsidy-to-farmer/aby`\r\n // },\r\n // {\r\n // type: 'Subsidy To Vendor (PDMC)', value: `/all-subsidy-lot/mi-subsidy-to-vendor/pdmc`\r\n // },\r\n // // {\r\n // // type: 'Subsidy To Vendor (ABY)', value: `/all-subsidy-lot/mi-subsidy-to-vendor/aby`\r\n // // },\r\n // {\r\n // type: 'Refund To Farmer (PDMC)', value: `/all-subsidy-lot/mi-refund-to-farmer/pdmc`\r\n // },\r\n // // {\r\n // // type: 'Refund To Farmer (ABY)', value: `/all-subsidy-lot/mi-refund-to-farmer/aby`\r\n // // },\r\n // // {\r\n // // type: 'Stage 1', value: `/all-subsidy-lot/pond/tank-stage1/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Stage 2', value: `/all-subsidy-lot/pond/tank-stage2/pfms`\r\n // // },\r\n // // {\r\n // // type: 'Stage 3', value: `/all-subsidy-lot/pond/tank-stage3/pfms`\r\n // // },\r\n // ]\r\n // }\r\n \r\n this.dropDownList = [\r\n // {\r\n // type: 'Select', value: null\r\n // },\r\n // {\r\n // type: 'Farmer Share To Vendor', value: `/failed-mi-payment/fsv`\r\n // },\r\n // {\r\n // type: 'Subsidy To Farmer', value: `/failed-mi-payment/stf`\r\n // },\r\n // {\r\n // type: 'Subsidy To Vendor', value: `/failed-mi-payment/stv`\r\n // },\r\n // {\r\n // type: 'Refund To Farmer', value: `/failed-mi-payment/rtf`\r\n // },\r\n {\r\n type: 'Stage 1', value: `/failed-pond-payment/stage1`\r\n },\r\n {\r\n type: 'Stage 2', value: `/failed-pond-payment/stage2`\r\n },\r\n {\r\n type: 'Stage 3', value: `/failed-pond-payment/stage3`\r\n },\r\n ]\r\n\r\n this.applicationSelected = {\r\n type: 'Stage 1', value: `/failed-pond-payment/stage1`\r\n }\r\n this.onApplicationTypeSelected({value: this.applicationSelected})\r\n // console.log(this.applicationSelected)\r\n }\r\n\r\n onApplicationTypeSelected(event) {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.router.navigate([`/${parentRoute.concat(event.value.value)}`])\r\n }\r\n\r\n}\r\n\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-app-change-request',\r\n templateUrl: './farmer-app-change-request.component.html',\r\n styleUrls: ['./farmer-app-change-request.component.scss']\r\n})\r\nexport class FarmerAppChangeRequestComponent implements OnInit {\r\n\r\n changeReqApplications: any = [];\r\n payload: any;\r\n\r\n subjectSub: any;\r\n selectedYear: any;\r\n subscriptions: any = [];\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService,\r\n private confirmationService: ConfirmationService, \r\n private jeService: JEService, \r\n private router: Router,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n // this.miVerificationTable.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(){\r\n this.loader.start();\r\n this.jeService.getApplicationsForPhysicalVerification(JSON.parse(this.payload)?.sub, '', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.changeReqApplications = data;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Physical Applications not loaded.' });\r\n }\r\n });\r\n }\r\n\r\n selectPhysicalVerAppln(application: any) {\r\n if (application.AutoId) {\r\n let encryptedAutoId = this.cryptoJsService.Encrypt(application.AutoId.toString());\r\n let encryptedAppId = this.cryptoJsService.Encrypt(application.AppID.toString());\r\n this.router.navigate([this.router.url.split('/')[1], 'application'], { queryParams: { autoId: encryptedAutoId, appId: encryptedAppId } });\r\n }else{\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n\r\n }\r\n\r\n deletePhysicalVerAppln(application : any){\r\n\r\n }\r\n \r\n\r\n}\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n
{{'FARMER_APPLICATION_FOR_CHANGE_REQUEST'| translate}}
\r\n
\r\n \r\n \r\n
\r\n
{{'MANAGE_APPLICATIONS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_REG'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME'| translate}}\r\n \r\n \r\n \r\n {{'AUTO_ID'| translate}}\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n\r\n {{'ESTIMATION_ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.AppID}}\r\n {{product.DateOfReg}}\r\n {{product.FarmerName}}\r\n {{product?.Caste_Description}}\r\n {{product.Village}}\r\n {{product.VendorName}}\r\n {{product.Scheme}}\r\n {{product.AutoId}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{ changeReqApplications ?\r\n changeReqApplications.length : 0 }} {{'DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-application-verification-completed',\r\n templateUrl: './farmer-application-verification-completed.component.html',\r\n styleUrls: ['./farmer-application-verification-completed.component.scss']\r\n})\r\nexport class FarmerApplicationVerificationCompletedComponent implements OnInit {\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n appVerificationItems: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n miDetailsByAppId: any;\r\n _appID: any;\r\n\r\n ipAddress: any;\r\n public userID: any;\r\n public status: any;\r\n public multiSortMeta: any;\r\n \r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private tokenService: TokenService,\r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.multiSortMeta = [];\r\n // this.multiSortMeta.push({field: 'registerationDate', order: 1});\r\n // this.multiSortMeta.push({field: 'PreviousActionDate', order: 1});\r\n this.multiSortMeta.push({field: 'AssignedDate', order: 1});\r\n sessionStorage.setItem('currentComponent', 'FarmerApplicationForApprovalApproved');\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'C', matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'App_Verification_List');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'App_Verification_List'\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n // this.appVerificationTable.clear();\r\n\r\n // let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem('FarmerApplicationForApprovalApproved') != 'null' && (sessionStorage.getItem('FarmerApplicationForApprovalApproved') && \r\n JSON.parse(window.sessionStorage.getItem('FarmerApplicationForApprovalApproved'))[0]?.FinYear == this.selectedYear)){\r\n this.appVerificationModel = JSON.parse(\r\n window.sessionStorage.getItem('FarmerApplicationForApprovalApproved')\r\n );\r\n // this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Approved)', '', new Date(), 'Success');\r\n\r\n } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .GetDepartmentDashboard(JSON.parse(payload)?.sub, 'Approved', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.AppVerification.forEach(e=>{\r\n e.registerationDate=new Date(e.registerationDate);\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n e.registerationDate_filter=e.registerationDate.toString().substring(4, 24)\r\n e.resubmissionAndRegistrationDate = e.PreviousActionDate != \"\" ? new Date(e.PreviousActionDate) : new Date(e.registerationDate)\r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Approved)', '', new Date(), 'Success');\r\n if (data.AppVerification?.length > 0) {\r\n this.appVerificationModel = data.AppVerification;\r\n sessionStorage.setItem(\r\n 'FarmerApplicationForApprovalApproved',\r\n JSON.stringify(this.appVerificationModel)\r\n );\r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.appVerificationModel=[]\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.appVerificationModel = []\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Approved)', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n // if ((JSON.parse(sessionStorage.getItem('FarmerApplicationForApproval'))?.appID) == this._appID) {\r\n // this.physicalVerficationData = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n }\r\n\r\n refreshTable() {\r\n sessionStorage.removeItem('FarmerApplicationForApprovalApproved');\r\n // this.loadData();\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppUserType', header: 'App User Type' },\r\n { field: 'appID', header: 'APP ID' },\r\n { field: 'CompName', header: 'Component Name' },\r\n { field: 'CropNames', header: 'Crop Name' },\r\n { field: 'farmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'ApplicantType', header: 'Applicant Type' },\r\n { field: 'NextLevelID', header: 'Next Level ID' },\r\n // { field: 'Scheme_Code', header: 'Scheme Code' },\r\n { field: 'TargetDays', header: 'Target Days' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'registerationDate', header: 'Registration Date' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'village', header: 'Village' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize:6 }});\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n // printForm(appId, statusCode) {\r\n // if (appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // // this.router.navigate(['department', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n // const link = this.router.serializeUrl(this.router.createUrlTree(['department', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // }\r\n printForm(appId, statusCode) {\r\n // if (appId) {\r\n // this.loader.start();\r\n // this.dashboard\r\n // .getMIDetailByAppID(appId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(\r\n // [\r\n // 'department',\r\n // 'print',\r\n // appId,\r\n // res[0]?.VendorId,\r\n // res[0]?.ProgId,\r\n // res[0]?.User_ID,\r\n // res[0]?.AutoId,\r\n // ],\r\n // { queryParams: { statusCode: statusCodeEncrypted } }\r\n // );\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log('error', err);\r\n // this.activityRecordService.activityRecord(this.userID, 'View Farmer Applications For Approval', appId, new Date(), err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // }\r\n // });\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(['department', 'print',appId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n // }\r\n if (appId) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n if(sessionStorage.getItem('isJEEW') === '1'){\r\n this.router.navigate(['ew-je', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n\r\n }else if(sessionStorage.getItem('isDDEW') === '1'){\r\n this.router.navigate(['ew-department', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n }else{\r\n this.router.navigate(['department', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n } }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App User Type': d.AppUserType,\r\n 'APP ID': d.appID,\r\n 'Component Name': d?.CompName,\r\n 'Crop Name': d?.CropNames,\r\n 'Farmer Name': d.farmerName,\r\n 'Caste': d.Caste_Description,\r\n 'Applicant Type': d.ApplicantType,\r\n 'Next Level ID': d.NextLevelID,\r\n // 'Scheme Code': d.Scheme_Code,\r\n 'Target Days': d.TargetDays,\r\n Block: d.block,\r\n District: d.district,\r\n 'Registration Date': d.registerationDate,\r\n Remarks: d.remarks,\r\n Status: d.status,\r\n Village: d.village,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n}\r\n\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_APPROVAL_(FURTHER_ACTION_TAKEN)'| translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'KYC_STATUS'| translate}}\r\n {{'APP_ID'| translate}}.\r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}.\r\n \r\n \r\n \r\n {{'CROP_NAME'| translate}}.\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'RESUBMISSION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'NEXT_LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TARGET_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{product?.IsAadharVerified == 1 ? 'Verified' : 'Not Verified'}}\r\n {{product.AppUserType}}\r\n {{product.appID}}\r\n {{product?.CompName}}\r\n {{product?.CropNames}}\r\n {{product.farmerName}}\r\n {{product?.Caste_Description}}\r\n {{product.AssignedDate | date:'medium'}}\r\n \r\n {{product.PreviousActionDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.ApplicantType}}\r\n {{product.NextLevelID}}\r\n {{product.TotalArea}}\r\n \r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.village}}\r\n {{product.block}}\r\n {{product.district}}\r\n {{product.status}}\r\n {{product.remarks}}\r\n {{product.Status_Ar}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{appVerificationModel ? appVerificationModel.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}.\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-application-verification-current',\r\n templateUrl: './farmer-application-verification-current.component.html',\r\n styleUrls: ['./farmer-application-verification-current.component.scss']\r\n})\r\nexport class FarmerApplicationVerificationCurrentComponent implements OnInit {\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n appVerificationItems: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n miDetailsByAppId: any;\r\n _appID: any;\r\n\r\n ipAddress: any;\r\n public userID: any;\r\n public status: any;\r\n public multiSortMeta: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private tokenService: TokenService,\r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.multiSortMeta = [];\r\n // this.multiSortMeta.push({field: 'registerationDate', order: 1});\r\n // this.multiSortMeta.push({field: 'PreviousActionDate', order: 1});\r\n this.multiSortMeta.push({field: 'AssignedDate', order: 1});\r\n sessionStorage.setItem('currentComponent', 'FarmerApplicationForApprovalCurrent');\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'App_Verification_List');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'App_Verification_List'\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n // this.appVerificationTable.clear();\r\n\r\n // let router=this.router.url\r\n // this.routePath=router.split('/')\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n // console.log('FarmerApplicationForApprovalCurrent',sessionStorage.getItem('FarmerApplicationForApprovalCurrent'), sessionStorage.getItem('FarmerApplicationForApprovalCurrent') == 'null', sessionStorage.getItem('FarmerApplicationForApprovalCurrent') != null)\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem('FarmerApplicationForApprovalCurrent') != 'null' && (sessionStorage.getItem('FarmerApplicationForApprovalCurrent') && \r\n JSON.parse(window.sessionStorage.getItem('FarmerApplicationForApprovalCurrent'))[0]?.FinYear == this.selectedYear)) {\r\n this.appVerificationModel = JSON.parse(\r\n window.sessionStorage.getItem('FarmerApplicationForApprovalCurrent')\r\n );\r\n // this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Current)', '', new Date(), 'Success');\r\n\r\n } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .GetDepartmentDashboard(JSON.parse(payload)?.sub, 'Current', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.AppVerification.forEach(e=>{\r\n e.registerationDate=new Date(e.registerationDate);\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n e.registerationDate_filter=e.registerationDate.toString().substring(4, 24)\r\n e.resubmissionAndRegistrationDate = e.PreviousActionDate != \"\" ? new Date(e.PreviousActionDate) : new Date(e.registerationDate)\r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Current)', '', new Date(), 'Success');\r\n if (data.AppVerification?.length > 0) {\r\n\r\n this.appVerificationModel = data.AppVerification;\r\n console.log('this.appVerificationModel', this.appVerificationModel)\r\n sessionStorage.setItem(\r\n 'FarmerApplicationForApprovalCurrent',\r\n JSON.stringify(this.appVerificationModel)\r\n );\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.appVerificationModel = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Current)', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n // if ((JSON.parse(sessionStorage.getItem('FarmerApplicationForApproval'))?.appID) == this._appID) {\r\n // this.physicalVerficationData = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n }\r\n\r\n refreshTable() {\r\n sessionStorage.removeItem('FarmerApplicationForApprovalCurrent');\r\n // this.loadData();\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppUserType', header: 'App User Type' },\r\n { field: 'appID', header: 'APP ID' },\r\n { field: 'CompName', header: 'Component Name' },\r\n { field: 'CropNames', header: 'Crop Name' },\r\n { field: 'farmerName', header: 'Farmer Name' }, \r\n { field: 'Caste_Description', header: 'Caste' }, \r\n { field: 'ApplicantType', header: 'Applicant Type' },\r\n { field: 'NextLevelID', header: 'Next Level ID' },\r\n // { field: 'Scheme_Code', header: 'Scheme Code' },\r\n { field: 'TargetDays', header: 'Target Days' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'registerationDate', header: 'Registration Date' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'village', header: 'Village' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n // printForm(appId, statusCode) {\r\n // if (appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // // this.router.navigate(['department', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n // const link = this.router.serializeUrl(this.router.createUrlTree(['department', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // }\r\n printForm(appId, statusCode) {\r\n // if (appId) {\r\n // this.loader.start();\r\n // this.dashboard\r\n // .getMIDetailByAppID(appId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(\r\n // [\r\n // 'department',\r\n // 'print',\r\n // appId,\r\n // res[0]?.VendorId,\r\n // res[0]?.ProgId,\r\n // res[0]?.User_ID,\r\n // res[0]?.AutoId,\r\n // ],\r\n // { queryParams: { statusCode: statusCodeEncrypted } }\r\n // );\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log('error', err);\r\n // this.activityRecordService.activityRecord(this.userID, 'View Farmer Applications For Approval', appId, new Date(), err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // }\r\n // });\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(['department', 'print',appId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n // }\r\n if (appId) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n if(sessionStorage.getItem('isJEEW') === '1'){\r\n this.router.navigate(['ew-je', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n\r\n }else if(sessionStorage.getItem('isDDEW') === '1'){\r\n this.router.navigate(['ew-department', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n }else{\r\n this.router.navigate(['department', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n }\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App User Type': d.AppUserType,\r\n 'APP ID': d.appID,\r\n 'Component Name': d?.CompName,\r\n 'Crop Name': d?.CropNames,\r\n 'Farmer Name': d.farmerName,\r\n 'Caste': d.Caste_Description,\r\n 'Applicant Type': d.ApplicantType,\r\n 'Next Level ID': d.NextLevelID,\r\n // 'Scheme Code': d.Scheme_Code,\r\n 'Target Days': d.TargetDays,\r\n Block: d.block,\r\n District: d.district,\r\n 'Registration Date': d.registerationDate,\r\n Remarks: d.remarks,\r\n Status: d.status,\r\n Village: d.village,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_APPROVAL_(CURRENT)'| translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'KYC_STATUS'| translate}}\r\n {{'APP_ID'| translate}}.\r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}.\r\n \r\n \r\n \r\n {{'CROP_NAME'| translate}}.\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'RESUBMISSION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'NEXT_LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TARGET_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{product?.IsAadharVerified == 1 ? 'Verified' : 'Not Verified'}}\r\n {{product.AppUserType}}\r\n {{product.appID}}\r\n {{product?.CompName}}\r\n {{product?.CropNames}}\r\n {{product.farmerName}}\r\n {{product?.Caste_Description}}\r\n {{product.AssignedDate | date:'medium'}}\r\n \r\n {{product.PreviousActionDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.ApplicantType}}\r\n {{product.NextLevelID}}\r\n {{product.TotalArea}}\r\n \r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.village}}\r\n {{product.block}}\r\n {{product.district}}\r\n {{product.status}}\r\n {{product.remarks}}\r\n {{product.Status_Ar}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{appVerificationModel ? appVerificationModel.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}.\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-application-verification-pending',\r\n templateUrl: './farmer-application-verification-pending.component.html',\r\n styleUrls: ['./farmer-application-verification-pending.component.scss']\r\n})\r\nexport class FarmerApplicationVerificationPendingComponent implements OnInit {\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n appVerificationItems: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n miDetailsByAppId: any;\r\n _appID: any;\r\n\r\n ipAddress: any;\r\n public userID: any;\r\n public status: any;\r\n public multiSortMeta: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n public tableHeight: any = '100px';\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private tokenService: TokenService,\r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.multiSortMeta = [];\r\n // this.multiSortMeta.push({field: 'registerationDate', order: 1});\r\n // this.multiSortMeta.push({field: 'PreviousActionDate', order: 1});\r\n this.multiSortMeta.push({field: 'AssignedDate', order: 1});\r\n sessionStorage.setItem('currentComponent', 'FarmerApplicationForApprovalPending');\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'App_Verification_List');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'App_Verification_List'\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n // this.appVerificationTable.clear();\r\n\r\n // let router=this.router.url\r\n // this.routePath=router.split('/')\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem('FarmerApplicationForApprovalPending') != 'null' && (sessionStorage.getItem('FarmerApplicationForApprovalPending') && \r\n JSON.parse(window.sessionStorage.getItem('FarmerApplicationForApprovalPending'))[0]?.FinYear == this.selectedYear)) {\r\n this.appVerificationModel = JSON.parse(\r\n window.sessionStorage.getItem('FarmerApplicationForApprovalPending')\r\n );\r\n if(this.appVerificationModel.length > 0){\r\n this.tableHeight = '700px';\r\n }else{\r\n this.tableHeight = '100px';\r\n }\r\n // this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Pending)', '', new Date(), 'Success');\r\n\r\n } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .GetDepartmentDashboard(JSON.parse(payload)?.sub, 'Pending', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.AppVerification.forEach(e=>{\r\n e.registerationDate=new Date(e.registerationDate);\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.registerationDate_filter=e.registerationDate.toString().substring(4, 24)\r\n e.resubmissionAndRegistrationDate = e.PreviousActionDate != \"\" ? new Date(e.PreviousActionDate) : new Date(e.registerationDate)\r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Pending)', '', new Date(), 'Success');\r\n if (data.AppVerification?.length > 0) {\r\n this.appVerificationModel = data.AppVerification;\r\n // console.log(\"abccccc\", data.AppVerification);\r\n sessionStorage.setItem(\r\n 'FarmerApplicationForApprovalPending',\r\n JSON.stringify(this.appVerificationModel)\r\n );\r\n }else{\r\n this.tableHeight = '100px';\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.tableHeight = '100px';\r\n this.appVerificationModel = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval(Pending)', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n // if ((JSON.parse(sessionStorage.getItem('FarmerApplicationForApproval'))?.appID) == this._appID) {\r\n // this.physicalVerficationData = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n }\r\n\r\n refreshTable() {\r\n sessionStorage.removeItem('FarmerApplicationForApprovalPending');\r\n // this.loadData();\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppUserType', header: 'App User Type' },\r\n { field: 'appID', header: 'APP ID' },\r\n { field: 'CompName', header: 'Component Name' },\r\n { field: 'CropNames', header: 'Crop Name' },\r\n { field: 'farmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'ApplicantType', header: 'Applicant Type' },\r\n { field: 'NextLevelID', header: 'Next Level ID' },\r\n // { field: 'Scheme_Code', header: 'Scheme Code' },\r\n { field: 'TargetDays', header: 'Target Days' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'registerationDate', header: 'Registration Date' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'village', header: 'Village' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n // this.cryptoJsService.Encrypt((appI)d, statusCode) {\r\n // if (appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // // this.router.navigate(['department', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n // const link = this.router.serializeUrl(this.router.createUrlTree(['department', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // }\r\n printForm(appId, statusCode) {\r\n // if (appId) {\r\n // this.router.navigate(['department', 'print', appId]);\r\n // this.loader.start();\r\n // this.dashboard\r\n // .getMIDetailByAppID(appId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(\r\n // [\r\n // 'department',\r\n // 'print',\r\n // appId,\r\n // res[0]?.VendorId,\r\n // res[0]?.ProgId,\r\n // res[0]?.User_ID,\r\n // res[0]?.AutoId,\r\n // ],\r\n // { queryParams: { statusCode: statusCodeEncrypted } }\r\n // );\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log('error', err);\r\n // this.activityRecordService.activityRecord(this.userID, 'View Farmer Applications For Approval', appId, new Date(), err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // }\r\n // });\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // this.router.navigate(['department', 'print',appId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n // }\r\n \r\n if (appId) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n // if(this.subjectSub)\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // console.log(payload, this.userID);\r\n if(sessionStorage.getItem('isJEEW') === '1'){\r\n this.router.navigate(['ew-je', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n\r\n }else if(sessionStorage.getItem('isDDEW') === '1'){\r\n this.router.navigate(['ew-department', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n }else{\r\n this.router.navigate(['department', 'appliaction-approval', 'print', this.cryptoJsService.Encrypt(appId)], { queryParams: { statusCode: statusCodeEncrypted } });\r\n }\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App User Type': d.AppUserType,\r\n 'APP ID': d.appID,\r\n 'Component Name': d?.CompName,\r\n 'Crop Name': d?.CropNames,\r\n 'Farmer Name': d.farmerName,\r\n 'Caste': d.Caste_Description,\r\n 'Applicant Type': d.ApplicantType,\r\n 'Next Level ID': d.NextLevelID,\r\n // 'Scheme Code': d.Scheme_Code,\r\n 'Target Days': d.TargetDays,\r\n Block: d.block,\r\n District: d.district,\r\n 'Registration Date': d.registerationDate,\r\n Remarks: d.remarks,\r\n Status: d.status,\r\n Village: d.village,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_APPROVAL_(PENDING)'| translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n {{'KYC_STATUS'| translate}}\r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}.\r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}.\r\n \r\n \r\n \r\n {{'CROP_NAME'| translate}}.\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'RESUBMISSION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'NEXT_LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TARGET_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{product?.IsAadharVerified == 1 ? 'Verified' : 'Not Verified'}}\r\n {{product.AppUserType}}\r\n {{product.appID}}\r\n {{product?.CompName}}\r\n {{product?.CropNames}}\r\n {{product.farmerName}}\r\n {{product?.Caste_Description}}\r\n {{product.AssignedDate | date:'medium'}}\r\n \r\n {{product.PreviousActionDate | date:'medium'}}\r\n {{product.ApplicantType}}\r\n {{product.NextLevelID}}\r\n {{product.TotalArea}}\r\n \r\n {{product.TargetDays}}\r\n {{product.PendingCompletedDays}}\r\n {{product.village}}\r\n {{product.block}}\r\n {{product.district}}\r\n {{product.status}}\r\n {{product.remarks}}\r\n {{product.Status_Ar}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{appVerificationModel ? appVerificationModel.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}.\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-application-verification',\r\n templateUrl: './farmer-application-verification.component.html',\r\n styleUrls: ['./farmer-application-verification.component.scss'],\r\n})\r\nexport class FarmerApplicationVerificationComponent implements OnInit {\r\n \r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n // this.autoId = params.autoId;\r\n // this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/farmer-applications/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/farmer-applications/current`},\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/farmer-applications/approved` }, \r\n ];\r\n }\r\n );\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-work-flow-all-status',\r\n templateUrl: './work-flow-all-status.component.html',\r\n styleUrls: ['./work-flow-all-status.component.scss']\r\n})\r\nexport class WorkFlowAllStatusComponent implements OnInit {\r\n\r\n @ViewChild('workFlowAllStatusTable', { static: true }) public workFlowAllStatusTable: Table;\r\n \r\n @Input() applicationId;\r\n public workFlowAllStatusModel: any = [];\r\n public userRole: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public showSubsidyDisbursmentDialogBox: boolean = false;\r\n public challanPaymentDetails: any=[];\r\n\r\n constructor(\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private route: ActivatedRoute,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n // this.userRole =sessionStorage.getItem('userRole')\r\n this.loadData(this.applicationId)\r\n\r\n // if(this.userRole == 'DD Associate'){\r\n // }else{\r\n // this.applicationId = this.route.snapshot.params.applicationId;\r\n // // console.log('applicationId', this.route.snapshot.params);\r\n // this.loadData(this.applicationId);\r\n // }\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n }\r\n\r\n loadData(applicationId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService \r\n .workFlowAllStatus(applicationId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('Response Data', data);\r\n // data.forEach(e=>{\r\n // e.AssignDateForSorting = new Date(e.AssignDate);\r\n // })\r\n this.workFlowAllStatusModel = data;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onClickSubsidyDisbursment(val){\r\n this.getChallanPaymentDetails(val?.AppID);\r\n }\r\n\r\n getChallanPaymentDetails(applicationId){\r\n this.loading = true;\r\n let sub = this.deptDashBoardService \r\n .getChallanPaymentDetails(applicationId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if(data && data.length>0){\r\n this.challanPaymentDetails = data[0][0];\r\n this.showSubsidyDisbursmentDialogBox = true;\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Not Found',\r\n });\r\n this.challanPaymentDetails = [];\r\n this.showSubsidyDisbursmentDialogBox = false;\r\n }\r\n },\r\n error: (err) => {\r\n this.showSubsidyDisbursmentDialogBox = false;\r\n this.challanPaymentDetails = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onCloseDialog(){\r\n this.showSubsidyDisbursmentDialogBox = false;\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
{{'WORK_FLOW_ALL_STATUS'| translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n {{'PROGRAM'| translate}}\r\n \r\n {{'ACTION'| translate}}\r\n \r\n {{'MI_SYSTEM'| translate}}\r\n \r\n {{'USER_ID'| translate}}\r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n {{'TRAGET_DAYS'| translate}}\r\n \r\n {{'ASSIGN_DATE'| translate}}\r\n \r\n {{'PENDING_COMPLETED'| translate}}\r\n \r\n {{'STATUS'| translate}}\r\n \r\n {{'REMARKS'| translate}}\r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n {{'NEXT_USER'| translate}}\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.AppID}}\r\n {{product.ProgramID}}\r\n {{product.Action}}\r\n {{product.Action}}\r\n {{product.ComponentName}}\r\n {{product.UserID}}\r\n {{product.LevelID}}\r\n {{product.TragetDays}}\r\n {{product.AssignDate | date : 'dd/MM/yyyy'}}\r\n {{product.PendingCompletedDays}}\r\n {{product.Status}}\r\n {{product.Remarks}}\r\n {{product.ActionDate | date : 'dd/MM/yyyy'}}\r\n {{product.NextUser}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{workFlowAllStatusModel ? workFlowAllStatusModel.length : 0\r\n }} {{'STATUS_ADDED' | translate}}.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n

\r\n

\r\n
\r\n \r\n

\r\n

\r\n
\r\n \r\n

\r\n

\r\n
\r\n \r\n

\r\n

\r\n
\r\n \r\n

\r\n

\r\n
\r\n \r\n

\r\n

\r\n
\r\n
\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-change-program',\r\n templateUrl: './change-program.component.html',\r\n styleUrls: ['./change-program.component.scss']\r\n})\r\nexport class ChangeProgramComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

change-program works!

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-change-vendor',\r\n templateUrl: './change-vendor.component.html',\r\n styleUrls: ['./change-vendor.component.scss'],\r\n})\r\nexport class ChangeVendorComponent implements OnInit {\r\n public applicationForm: FormGroup;\r\n public isSubmitted: boolean = false;\r\n public statusMessage: any;\r\n public pogramNameList: any;\r\n public isAppEditable: boolean = false;\r\n public showStatusArea: boolean = false;\r\n public actionType: any;\r\n public actionMasterList: any;\r\n public hideAppDetailsArea: boolean = false;\r\n public userID: any;\r\n public ipAddress: any = '000.000.000';\r\n public updatedProgramId: any;\r\n public updatedVendorId: any;\r\n public vendorNameList: any;\r\n public filteredVendorList: any;\r\n public selectedProgram: any;\r\n public selectedProgramList: any;\r\n\r\n public supportingDocPath: any;\r\n \r\n constructor(\r\n private fb: FormBuilder,\r\n private loader: AppLoaderService,\r\n private vendorDashboardService: VendorDashboardService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private ipService: IpAddressService, \r\n private uploadDocService: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.applicationForm = this.fb.group({\r\n applicationNo: ['', Validators.required],\r\n programId: [''],\r\n });\r\n\r\n this.getFarmerQueriesActionMaster();\r\n this.getIP();\r\n }\r\n\r\n get f() {\r\n return this.applicationForm.controls;\r\n }\r\n\r\n hideEditableArea(){\r\n this.isAppEditable = false;\r\n this.showStatusArea = false;\r\n this.actionType = null;\r\n }\r\n\r\n submitApplication() {\r\n this.hideEditableArea();\r\n this.isSubmitted = true;\r\n\r\n if (this.applicationForm.valid) {\r\n // console.log(this.applicationForm.value);\r\n this.getSelectedProgram(this.applicationForm.value['applicationNo'])\r\n }\r\n }\r\n\r\n checkAppStatus(reqBoady) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getAppLastStatus(reqBoady)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n if (resp.length > 0) {\r\n let respVal = resp[0];\r\n this.showStatusArea = true;\r\n\r\n this.statusMessage = respVal?.Status;\r\n\r\n if (respVal?.IsEditable == 1) {\r\n this.isAppEditable = true;\r\n this.hideAppDetailsArea = true;\r\n } else {\r\n this.isAppEditable = false;\r\n }\r\n // console.log(this.isAppEditable)\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getFarmerQueriesActionMaster() {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getFarmerQueriesActionMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n data = data.filter(item => item.Action_ID !== 1);\r\n this.actionMasterList = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n clearAppNo() {\r\n this.f.applicationNo.setValue(null);\r\n }\r\n\r\n getChangeProgram(event) {}\r\n\r\n\r\n getAllMIVendors(programId) {\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .getAllMIVendors(programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.vendorNameList = res;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Category not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getSelectedProgram(appId) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getSelectedProgram(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.selectedProgramList = data;\r\n if(data.length > 0){\r\n this.selectedProgram = data[0];\r\n this.f.programId.setValue(this.selectedProgram?.Program_Id);\r\n let reqBoady = {\r\n appId: this.applicationForm.value['applicationNo'],\r\n progId: this.selectedProgram?.Program_Id,\r\n };\r\n this.checkAppStatus(reqBoady);\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Programme name not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getProgramToBeChanged(appId) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getProgramToBeChanged(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.loader.close();\r\n this.pogramNameList = files;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitChangeRequest(){\r\n if(this.actionType == null || this.actionType == undefined){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select the Action Type',\r\n });\r\n return;\r\n }\r\n \r\n if(this.actionType == 3 && (this.updatedProgramId == null || this.updatedProgramId == undefined)){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Programme Name',\r\n });\r\n return;\r\n }else if(this.actionType == 2 && (this.updatedVendorId == null || this.updatedVendorId == undefined)){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Vendor Name',\r\n });\r\n return;\r\n }\r\n \r\n if(!this.applicationForm.valid){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select required field properly',\r\n });\r\n return;\r\n }\r\n\r\n if(this.supportingDocPath == null || this.supportingDocPath == undefined){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Upload Supporting Document',\r\n });\r\n return;\r\n }\r\n\r\n let reqBody = {\r\n appId: this.applicationForm.value['applicationNo'],\r\n docPath: this.supportingDocPath,\r\n // existingProgId: this.applicationForm.value['programId'],\r\n existingProgId: this.selectedProgram?.Program_Id,\r\n updatedProgId: this.actionType == 2 ? 0 : this.updatedProgramId,\r\n actionId: this.actionType,\r\n vendorId: this.actionType == 2 ? JSON.stringify(this.updatedVendorId?.Vendor_Code) : JSON.stringify(0),\r\n userId: this.userID,\r\n netWork_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n }\r\n this.submitFarmerChangeQueries(reqBody);\r\n\r\n }\r\n\r\n submitFarmerChangeQueries(reqBoady){\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBoady))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .addFarmerQueries(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n if(resp == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n this.cancelChangeRequest();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n cancelChangeRequest(){\r\n this.hideAppDetailsArea = false;\r\n this.actionType = null;\r\n this.showStatusArea = false;\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onChangeActionType(event){\r\n // console.log(event.value)\r\n this.vendorNameList = null;\r\n this.updatedVendorId = null;\r\n if(event.value == 2){\r\n this.updatedProgramId = null;\r\n // this.getAllMIVendors(this.applicationForm.value['programId']);\r\n this.getAllMIVendors(this.selectedProgram?.Program_Id);\r\n }else if(event.value == 3){\r\n this.updatedVendorId = null;\r\n this.getProgramToBeChanged(this.applicationForm.value['applicationNo']);\r\n }else{\r\n this.updatedProgramId = null;\r\n this.updatedVendorId = null;\r\n }\r\n }\r\n \r\n onVendorSelect(event){}\r\n\r\n filterMIVendor(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.vendorNameList.length; i++) {\r\n const vendor = this.vendorNameList[i];\r\n if (vendor.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendor);\r\n }\r\n }\r\n this.filteredVendorList = filtered;\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n this.loader.start();\r\n this.uploadDocService.uploadFile(data, 'farmer_query', formcontrol)\r\n .subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.supportingDocPath = resp.data;\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'resp',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n uploadElement.clear();\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
{{ \"CHANGE_VENDOR/PROGRAMME\" | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ \"CLEAR_APPLICATION_NO\" | translate }}\r\n
\r\n
\r\n {{ \"APPLICATION_NO_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'PROGRAM_NAME_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n Status: {{ statusMessage }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-unhide-application',\r\n templateUrl: './unhide-application.component.html',\r\n styleUrls: ['./unhide-application.component.scss']\r\n})\r\nexport class UnhideApplicationComponent implements OnInit {\r\n\r\n applicationForm: FormGroup;\r\n isSubmitted: boolean = false;\r\n userID: any;\r\n ipAddress: any = '000.000.000';\r\n\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private loader: AppLoaderService,\r\n private vendorDashboardService: VendorDashboardService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private uploadDocService: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.applicationForm = this.fb.group({\r\n applicationNo: ['', Validators.required],\r\n docPath: ['', Validators.required],\r\n });\r\n\r\n this.getIP();\r\n }\r\n\r\n get f() {\r\n return this.applicationForm.controls;\r\n }\r\n\r\n submitApplication() {\r\n this.isSubmitted = true;\r\n if (this.applicationForm.valid) {\r\n\r\n let reqBody = {\r\n appId: this.applicationForm.value['applicationNo'],\r\n docPath: this.applicationForm.value['docPath'],\r\n existingProgId: 0,\r\n updatedProgId: 0,\r\n actionId: 1,\r\n vendorId: '0',\r\n userId: this.userID,\r\n netWork_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n }\r\n this.hideAppStatus(reqBody);\r\n }\r\n }\r\n\r\n hideAppStatus(reqBoady) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBoady))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .addFarmerQueries(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n if (resp == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n clearAppNo() {\r\n this.f.applicationNo.setValue(null);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n \r\n this.loader.start();\r\n this.uploadDocService.uploadFile(data, 'farmer_query', formcontrol)\r\n .subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.applicationForm.patchValue({ [formcontrol]: resp.data });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'resp',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n\r\n uploadElement.clear();\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
{{ \"UNHIDE_APPLICATION\" | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ \"CLEAR_APPLICATION_NO\" | translate }}\r\n \r\n
\r\n {{ \"APPLICATION_NO_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'Supporting Doc is required' |\r\n translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n\r\n@Component({\r\n selector: 'app-je-survey-action-info',\r\n templateUrl: './je-survey-action-info.component.html',\r\n styleUrls: ['./je-survey-action-info.component.scss'],\r\n providers: [DatePipe]\r\n})\r\nexport class JeSurveyActionInfoComponent implements OnInit {\r\n exportMenu: MenuItem[];\r\n\r\n public tableData: any = [];\r\n public tableHeaderName = 'Applications For Approval';\r\n\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n public openReAssignDialog: boolean = false;\r\n public reAssignAppId: any;\r\n public reassignDate: any;\r\n public nextDate: Date;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService,\r\n private ipService: IpAddressService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private vendorService: VendorDashboardService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private confirmationService: ConfirmationService,\r\n private datePipe: DatePipe,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.nextDate = new Date();\r\n this.nextDate.setDate(this.nextDate.getDate() + 1);\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.exportMenu = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.tableData, `MI_${this.tableHeaderName}`);\r\n },\r\n }\r\n ];\r\n\r\n this.loadData();\r\n }\r\n\r\n\r\n loadData() {\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getAppIDAssignmentPlan(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.tableData = data;\r\n } else {\r\n this.tableData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP Id': d.APP_ID,\r\n 'Status': d.FarmerStatus,\r\n 'Farmer Name': d.farmerName,\r\n 'App Type': d.Applicant_type,\r\n 'Constituency': d.Constituency,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Scheme': d.Scheme,\r\n 'KYC Status': d.KYC_Status\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.FarmerStatus == 'A') {\r\n //light green\r\n return '#99e699'\r\n }\r\n else if (row.FarmerStatus == 'P') {\r\n // light yellow\r\n return '#ffffc5'\r\n }\r\n else if (row.FarmerStatus == 'R') {\r\n //red\r\n return '#ff8080';\r\n }\r\n else if (row.FarmerStatus == 'RP') {\r\n //orange\r\n return '#ffc966';\r\n }\r\n else return '#ffffff';\r\n }\r\n\r\n onClickAssign(val) {\r\n this.confirmationService.confirm({\r\n header: 'Confirmation',\r\n message: `Are you sure you want to assign the survey for App Id: ${val?.App_ID}`,\r\n acceptIcon: 'pi pi-check mr-2',\r\n rejectIcon: 'pi pi-times mr-2',\r\n rejectButtonStyleClass: 'p-button-sm',\r\n acceptButtonStyleClass: 'p-button-outlined p-button-sm',\r\n accept: () => {\r\n this.onAssignPlan(val?.App_ID);\r\n },\r\n reject: () => {\r\n this.messageService.add({ severity: 'error', summary: 'Rejected', detail: 'You have rejected', life: 3000 });\r\n }\r\n });\r\n }\r\n\r\n onClickReAssign(val) {\r\n this.reAssignAppId = val?.App_ID\r\n this.openReAssignDialog = true;\r\n\r\n }\r\n\r\n onAssignPlan(appId) {\r\n let reqBody = {\r\n app_ID: appId,\r\n }\r\n this.loader.start();\r\n let sub = this.deptDashBoardService\r\n .jeAssignSurveyPlan(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n }); \r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n \r\n onConfirmReAssign(){\r\n this.onReAssignPlan(this.reAssignAppId, this.datePipe.transform(new Date(this.reassignDate), 'MM-dd-yyyy'))\r\n }\r\n\r\n onReAssignPlan(appId, newDate) {\r\n let reqBody = {\r\n \"app_ID\": appId,\r\n \"assignReassignDate\": newDate\r\n }\r\n this.loader.start();\r\n let sub = this.deptDashBoardService\r\n .reAssignSurveyPlan(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let resp = data[0]?.Column1;\r\n if (resp.startsWith('Records successfully')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n }); \r\n this.loadData(); \r\n this.onCloseReAssignDialog();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onCloseReAssignDialog(){\r\n this.openReAssignDialog = false;\r\n this.reassignDate = null;\r\n }\r\n\r\n}\r\n\r\n","\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'APP_ID'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'SCHEME'| translate}}\r\n {{'SURVEY_ACTION_PLAN'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ ri + 1 }}\r\n {{val?.App_ID}}\r\n {{val?.VillageCode}}\r\n {{val?.AssignedDate | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n

{{ message.message }}

\r\n
\r\n
\r\n
\r\n\r\n\r\n Update Survey Date\r\n
\r\n \r\n

{{ reAssignAppId }}

\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-krishi-mapper',\r\n templateUrl: './krishi-mapper.component.html',\r\n styleUrls: ['./krishi-mapper.component.scss']\r\n})\r\nexport class KrishiMapperComponent implements OnInit {\r\n public appVerificationItems: MenuItem[];\r\n\r\n public userId: any;\r\n public ipAddress: any;\r\n\r\n public dataToShow: any = [];\r\n public columns: any = [];\r\n\r\n public typeList: any = [];\r\n public selectedType: any;\r\n public yearList: any = [];\r\n public selectedYear: any;\r\n public monthList: any = [];\r\n public selectedMonth: any;\r\n\r\n public showDataTable: boolean = false;\r\n public freezeDataDropdown: boolean = false;\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private ipService: IpAddressService,\r\n private fApplicationService: FarmersApplicationService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.dataToShow, `${this.selectedType.value}-${this.selectedYear.value}-${this.selectedMonth.value}`);\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'App_Verification_List'\r\n // );\r\n // },\r\n // },\r\n ];\r\n\r\n this.getIP();\r\n this.getTypeList();\r\n this.getYearList();\r\n this.getMonthList();\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n getTypeList() {\r\n // this.loader.start();\r\n // this.fApplicationService\r\n // .getOutletByContractor()\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // this.typeList = res;\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // this.typeList = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n\r\n setTimeout(() => {\r\n this.typeList = [\r\n {\r\n code: 1,\r\n value: 'Beneficiary Activity',\r\n },\r\n {\r\n code: 2,\r\n value: 'Beneficiary Transaction Details',\r\n },\r\n {\r\n code: 3,\r\n value: 'Beneficiary Crops',\r\n },\r\n {\r\n code: 4,\r\n value: 'Beneficiary Geo Fence Data',\r\n },\r\n {\r\n code: 5,\r\n value: 'Beneficiary GPS Master Data',\r\n },\r\n ];\r\n }, 100);\r\n }\r\n\r\n getYearList() {\r\n setTimeout(() => {\r\n this.yearList = [\r\n {\r\n code: 1008,\r\n value: '2022-23',\r\n },\r\n {\r\n code: 1009,\r\n value: '2023-24',\r\n },\r\n {\r\n code: 1010,\r\n value: '2024-25',\r\n },\r\n {\r\n code: 1011,\r\n value: '2025-26',\r\n }\r\n ];\r\n }, 100);\r\n }\r\n\r\n getMonthList() {\r\n setTimeout(() => {\r\n this.monthList = [\r\n {\r\n code: 1,\r\n value: 'January',\r\n },\r\n {\r\n code: 2,\r\n value: 'February',\r\n },\r\n {\r\n code: 3,\r\n value: 'March',\r\n },\r\n {\r\n code: 4,\r\n value: 'April',\r\n },\r\n {\r\n code: 5,\r\n value: 'May',\r\n },\r\n {\r\n code: 6,\r\n value: 'June',\r\n },\r\n {\r\n code: 7,\r\n value: 'July',\r\n },\r\n {\r\n code: 8,\r\n value: 'August',\r\n },\r\n {\r\n code: 9,\r\n value: 'September',\r\n },\r\n {\r\n code: 10,\r\n value: 'October',\r\n },\r\n {\r\n code: 11,\r\n value: 'November',\r\n },\r\n {\r\n code: 12,\r\n value: 'December',\r\n }\r\n ];\r\n }, 100);\r\n }\r\n\r\n refreshTable() {\r\n this.onClickGetData();\r\n }\r\n\r\n onClickGetData() {\r\n // console.log(this.selectedType)\r\n // console.log(this.selectedMonth)\r\n // console.log(this.selectedYear);\r\n\r\n let reqBody = {\r\n dataId: this.selectedType?.code,\r\n yearId: this.selectedYear?.code,\r\n monthId: this.selectedMonth?.code,\r\n userId: this.userId,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress\r\n }\r\n\r\n console.log(reqBody);\r\n\r\n if (this.selectedType?.code && this.selectedYear?.code && this.selectedMonth?.code) {\r\n // if(this.selectedType?.code != (null || undefined) && this.selectedYear?.code != (null || undefined) && this.selectedMonth?.code != (null || undefined)){\r\n if (this.selectedType?.code == 1) {\r\n this.getData('GetBeneficiaryToInsert', reqBody)\r\n // this.getBeneficiaryToInsert(reqBody);\r\n } else if (this.selectedType?.code == 2) {\r\n this.getData('GetBeneficiaryToInsertTransactionDetail', reqBody)\r\n // this.getBeneficiaryToInsertTransactionDetail(reqBody);\r\n } else if (this.selectedType?.code == 3) {\r\n this.getData('GetBeneficiaryCropDetail', reqBody)\r\n // this.getBeneficiaryGPSMasterData(reqBody);\r\n } else if (this.selectedType?.code == 4) {\r\n this.getData('GetBeneficiaryGeoFenceData', reqBody)\r\n // this.getBeneficiaryGeoFenceData(reqBody);\r\n } else if (this.selectedType?.code == 5) {\r\n this.getData('GetBeneficiaryGPSMasterData', reqBody)\r\n // this.getBeneficiaryCropDetail(reqBody);\r\n }\r\n }\r\n }\r\n\r\n clearFreezeOption(){\r\n this.freezeDataDropdown = false;\r\n this.showDataTable = false;\r\n this.dataToShow = [];\r\n }\r\n\r\n getData(api, reqBody) {\r\n this.loader.start();\r\n this.fApplicationService.getKrishiMapperData(api, reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.showDataTable = true;\r\n this.loader.close();\r\n console.log(res);\r\n if (res.length > 0) {\r\n this.freezeDataDropdown = true;\r\n this.dataToShow = res;\r\n this.columns = Object.keys(res[0]);\r\n console.log(this.columns);\r\n } else {\r\n this.freezeDataDropdown = false;\r\n this.dataToShow = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.freezeDataDropdown = false;\r\n this.showDataTable = false;\r\n this.loader.close();\r\n this.dataToShow = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // freezeDropdown(){\r\n // this.freezeDataDropdown = true;\r\n // }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData;\r\n // let dataToSave = modelData.map((d: any) => {\r\n // return {\r\n // 'App User Type': d.AppUserType,\r\n // 'APP ID': d.appID,\r\n // 'Component Name': d?.CompName,\r\n // 'Farmer Name': d.farmerName,\r\n // 'Caste': d.Caste_Description,\r\n // 'Applicant Type': d.ApplicantType,\r\n // 'Next Level ID': d.NextLevelID,\r\n // // 'Scheme Code': d.Scheme_Code,\r\n // 'Target Days': d.TargetDays,\r\n // Block: d.block,\r\n // District: d.district,\r\n // 'Registration Date': d.registerationDate,\r\n // Remarks: d.remarks,\r\n // Status: d.status,\r\n // Village: d.village,\r\n // };\r\n // });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onSubmitData(){\r\n\r\n let reqBody = {\r\n dataId: this.selectedType?.code,\r\n yearId: this.selectedYear?.code,\r\n monthId: this.selectedMonth?.code,\r\n userId: this.userId,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress\r\n }\r\n\r\n console.log(reqBody);\r\n\r\n if (this.selectedType?.code && this.selectedYear?.code && this.selectedMonth?.code) {\r\n // if(this.selectedType?.code != (null || undefined) && this.selectedYear?.code != (null || undefined) && this.selectedMonth?.code != (null || undefined)){\r\n if (this.selectedType?.code == 1) {\r\n this.submitData('InsertBeneficiary', reqBody)\r\n // this.getBeneficiaryToInsert(reqBody);\r\n } else if (this.selectedType?.code == 2) {\r\n this.submitData('InsertBeneficiaryTransactionDetail', reqBody)\r\n // this.getBeneficiaryToInsertTransactionDetail(reqBody);\r\n } else if (this.selectedType?.code == 3) {\r\n this.submitData('InsertBeneficiaryCropDetail', reqBody)\r\n // this.getBeneficiaryGPSMasterData(reqBody);\r\n } else if (this.selectedType?.code == 4) {\r\n this.submitData('InsertBeneficiaryGeoFenceDetail', reqBody)\r\n // this.getBeneficiaryGeoFenceData(reqBody);\r\n } else if (this.selectedType?.code == 5) {\r\n this.submitData('InsertBeneficiaryGPSMasterDetail', reqBody)\r\n // this.getBeneficiaryCropDetail(reqBody);\r\n }\r\n }\r\n }\r\n\r\n submitData(api, reqBody) {\r\n this.loader.start();\r\n this.fApplicationService.postKrishiMapperData(api, reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n console.log(data)\r\n this.loader.close();\r\n if(data == \"Data insertion completed successfully.\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.clearFreezeOption();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n // this.showDataTable = true;\r\n // console.log(res);\r\n // if (res.length > 0) {\r\n // this.freezeDataDropdown = true;\r\n // this.dataToShow = res;\r\n // this.columns = Object.keys(res[0]);\r\n // console.log(this.columns);\r\n // } else {\r\n // this.freezeDataDropdown = false;\r\n // this.dataToShow = [];\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Data not found',\r\n // });\r\n // }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
{{selectedType?.value}}{{\" - \"}}{{selectedMonth?.value}}{{\" -\r\n \"}}{{selectedYear?.value}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ col }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ rowData[col] }}\r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n \r\n
\r\n\r\n
0\" class=\"p-fluid p-formgrid justify-content-cente mt-3\" style=\"display: flex; flex-wrap:wrap\">\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { UIChart } from 'primeng/chart';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Router } from '@angular/router';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-mi-area-covered',\r\n templateUrl: './mi-area-covered.component.html',\r\n styleUrls: ['./mi-area-covered.component.scss']\r\n})\r\nexport class MiAreaCoveredComponent implements OnInit {\r\n @ViewChild(\"pieChart\") pieChartRef: UIChart;\r\n @ViewChild(\"lineChart\") lineChartRef: UIChart;\r\n data: any;\r\n multiAxisData: any;\r\n chartOptions: any;\r\n lineChartList: any[];\r\n public userID: any;\r\n pieCHartList: any[];\r\n public selectedYear: any;\r\n subjectSub: any;\r\n public subscriptions: any = [];\r\n\r\n constructor(\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private service: BaseService,\r\n private router: Router,\r\n private reportsService: ReportsService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.data = {\r\n labels: [],\r\n datasets: [\r\n {\r\n data: [],\r\n backgroundColor: [],\r\n }\r\n ]\r\n };\r\n this.multiAxisData = {\r\n labels: [],\r\n datasets: [{\r\n label: 'MI Area',\r\n fill: false,\r\n borderColor: '#42A5F5',\r\n data: []\r\n }, {\r\n label: 'No Of Applications',\r\n fill: false,\r\n borderColor: '#00bb7e',\r\n data: []\r\n }]\r\n };\r\n this.lineChart();\r\n this.pieChart();\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n let router = this.router.url;\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n this.selectedYear = res;\r\n\r\n // this.getChartData(this.selectedYear);\r\n });\r\n }\r\n\r\n getChartData(selectedYear: any) {\r\n // this.loading = true;\r\n \r\n let reqBody = {\r\n \"financialYear\": this.selectedYear,\r\n \"district\": '',\r\n \"block\": '',\r\n \"constituency\": '',\r\n \"village\": '',\r\n \"cropid\": 0,\r\n \"caste\": '',\r\n \"isABY\": ''\r\n }\r\n\r\n let sub = this.reportsService\r\n .getConsolidatedAggReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Chart Data',\r\n // '',\r\n // new Date(),\r\n // 'Success'\r\n // );\r\n \r\n if (data?.length > 0) {\r\n if (!window.sessionStorage.getItem(\"AggReport1Data\")) {\r\n window.sessionStorage.setItem(\"AggReport1Data\", JSON.stringify(data));\r\n }\r\n // this.summaryData = data[0];\r\n // this.graphData();\r\n } else {\r\n // this.summaryData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Chart Data',\r\n // '',\r\n // new Date(),\r\n // err\r\n // );\r\n \r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n }); \r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n lineChart() {\r\n this.deptDashBoardService.GetLineChartList().pipe(first()).subscribe({\r\n next: (data) => {\r\n console.log(data,'dataaaaaa')\r\n this.lineChartList = data\r\n let Agriculturelabels = [];\r\n let AgriculturemiAreaData = [];\r\n let AgricultureapplocationDataData = [];\r\n let Horticulturelabels = [];\r\n let HorticulturemiAreaData = [];\r\n let HorticultureapplocationDataData = [];\r\n let MICADAlabels = [];\r\n let MICADAmiAreaData = [];\r\n let MICADAapplocationDataData = [];\r\n for (let index = 0; index < this.lineChartList.length; index++) {\r\n if (this.lineChartList[index].Department == \"Agriculture\") {\r\n AgricultureapplocationDataData.push(this.lineChartList[index].NoOfApplications)\r\n AgriculturemiAreaData.push(this.lineChartList[index].Area)\r\n Agriculturelabels.push(this.lineChartList[index].FinYear)\r\n } else if (this.lineChartList[index].Department == \"Horticulture\") {\r\n HorticultureapplocationDataData.push(this.lineChartList[index].NoOfApplications)\r\n HorticulturemiAreaData.push(this.lineChartList[index].Area)\r\n Horticulturelabels.push(this.lineChartList[index].FinYear)\r\n } else {\r\n MICADAapplocationDataData.push(this.lineChartList[index].NoOfApplications)\r\n MICADAmiAreaData.push(this.lineChartList[index].Area)\r\n MICADAlabels.push(this.lineChartList[index].FinYear)\r\n }\r\n }\r\n this.multiAxisData.labels = [...Horticulturelabels, ...Agriculturelabels, ...MICADAlabels];\r\n this.multiAxisData.datasets[0].data = [...HorticulturemiAreaData, ...AgriculturemiAreaData, ...MICADAmiAreaData];\r\n this.multiAxisData.datasets[1].data = [...HorticultureapplocationDataData, ...AgricultureapplocationDataData, ...MICADAapplocationDataData];\r\n this.lineChartRef.reinit();\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Line Chart', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Line chart not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n pieChart() {\r\n this.deptDashBoardService.GetPieChartList().pipe(first()).subscribe({\r\n next: (res) => {\r\n this.pieCHartList = res\r\n let labels = [];\r\n let areaData = [];\r\n let backgroundColors = [];\r\n for (let index = 0; index < this.pieCHartList.length; index++) {\r\n labels.push(this.pieCHartList[index].FinYear)\r\n areaData.push(this.pieCHartList[index].Area)\r\n const randomColor = \"#\" + ((1 << 24) * Math.random() | 0).toString(16);\r\n backgroundColors.push(randomColor)\r\n }\r\n this.data.labels = labels;\r\n this.data.datasets[0].data = areaData;\r\n this.data.datasets[0].backgroundColor = backgroundColors;\r\n this.pieChartRef.reinit();\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Pie chart', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Pie chart not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n getLightTheme() {\r\n return {\r\n plugins: {\r\n legend: {\r\n labels: {\r\n color: '#495057'\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n getDarkTheme() {\r\n return {\r\n plugins: {\r\n legend: {\r\n labels: {\r\n color: '#ebedef'\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n
{{'MI_AREA_NOOF_BENEFICIARY'| translate}}
\r\n \r\n
\r\n
\r\n
{{'MI_AREA_OF_HARYANA'| translate}}
\r\n \r\n
\r\n
\r\n
","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { DepartmentESTVerificationModel } from 'src/app/models/department-est-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-mi-vendor-application-verification-approved',\r\n templateUrl: './mi-vendor-application-verification-approved.component.html',\r\n styleUrls: ['./mi-vendor-application-verification-approved.component.scss']\r\n})\r\n\r\nexport class MiVendorApplicationVerificationApprovedComponent implements OnInit {\r\n\r\n @ViewChild('estVerificationTable', { static: true }) public estVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n appVerificationItems: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n estVerificationModel: DepartmentESTVerificationModel[];\r\n\r\n public userID: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n sessionStorage.setItem('currentComponentName', 'miVendorApplicationForApprovalApproved');\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval', '', new Date(), 'Success');\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n // this.estVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n this.vendorEstVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportMiVendorExcel(this.estVerificationModel, \"Vendor_MI_EST_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadVendorMiSheetAsPdf(this.estVerificationModel, \"Vendor_MI_EST_List\");\r\n }\r\n },\r\n ];\r\n\r\n }\r\n\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n // this.estVerificationTable.clear();\r\n\r\n // let router=this.router.url\r\n // this.routePath=router.split('/')\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.estVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem(\"miVendorApplicationForApprovalApproved\") != 'null' && (sessionStorage.getItem(\"miVendorApplicationForApprovalApproved\") && \r\n JSON.parse(window.sessionStorage.getItem('miVendorApplicationForApprovalApproved'))[0]?.FinYear == this.selectedYear)){\r\n this.estVerificationModel = JSON.parse(window.sessionStorage.getItem(\"miVendorApplicationForApprovalApproved\"));\r\n // this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Approved)', '', new Date(), 'Success');\r\n // console.log(this.estVerificationModel,\"data\")\r\n } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub =this.deptDashBoardService.getVendorMIEstimationsForApproval(JSON.parse(payload)?.sub, 'Approved', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.AppEstimate.forEach(e=>{\r\n e.EstimationDate=new Date(e.EstimationDate);\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n\r\n e.EstimationDate_filter=e.EstimationDate.toString().substring(4, 24)\r\n })\r\n if (data.AppEstimate?.length > 0) {\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Approved)', '', new Date(), 'Success');\r\n this.estVerificationModel = data.AppEstimate;\r\n // console.log(this.estVerificationModel,\"data\")\r\n sessionStorage.setItem('miVendorApplicationForApprovalApproved', JSON.stringify(this.estVerificationModel));\r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.estVerificationModel=[]\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.estVerificationModel = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Pending)', '', new Date(), err);\r\n this.messageService.add({ \r\n severity: 'error', \r\n summary: 'Error Message', \r\n detail: err });\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n }\r\n\r\n refreshTable() {\r\n sessionStorage.removeItem('miVendorApplicationForApprovalApproved');\r\n // this.loadData();\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n miEstimationPrintForm(appId, vendorId, programId, statusCode) {\r\n if (appId) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'vendor-estimate', 'print', appId, vendorId, programId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n \r\n this.router.navigate(['department', 'vendor-estimate', 'print', this.cryptoJsService.Encrypt(appId), vendorId, programId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n //Vendor MI Estimation Download Options\r\n downloadVendorMiSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppUserType', header: 'App User Type'},\r\n { field: 'AppID', header: 'APP ID' },\r\n { field: 'Remarks', header: 'Remarks' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'District', header: 'District' },\r\n { field: 'VendorName', header: 'Vendor Name' },\r\n { field: 'Program', header: 'Program' },\r\n { field: 'PrograId', header: 'Program Id' },\r\n { field: 'VendorId', header: 'Vendor Id' },\r\n { field: 'EstimationDate', header: 'Estimation Date' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n exportMiVendorExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App User Type\": d.AppUserType,\r\n \"APP ID\": d.AppID,\r\n \"Remarks\": d.Remarks,\r\n \"Farmer Name\": d.FarmerName,\r\n \"Caste\": d.Caste_Description,\r\n \"Village\": d.Village,\r\n \"Block\": d.Block,\r\n \"District\": d.District,\r\n \"Vendor Name\": d.VendorName,\r\n \"Program\": d.Program,\r\n \"Program Id\": d.PrograId,\r\n \"Vendor Id\": d.VendorId,\r\n \"Estimation Date\": d.EstimationDate,\r\n \"Status\": d.Status,\r\n \"Current Status\": d.Status_Ar,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.Pending_CompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.Pending_CompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.Pending_CompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.Pending_CompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_VENDOR_MI_ESTIMATION_VERIFICATION'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_ID'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ID'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AppUserType}}\r\n {{product.AppID}}\r\n {{product?.ApplicantType}}\r\n {{product.FarmerName}}\r\n {{product?.Caste_Description}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n {{product.TotalArea}}\r\n {{product.VendorName}}\r\n {{product.Program}}\r\n {{product.PrograId}}\r\n {{product.VendorId}}\r\n {{product.EstimationDate | date:'medium'}}\r\n {{product.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.Pending_CompletedDays}}\r\n {{product.Status}}\r\n {{product.Remarks}}\r\n {{product.Status_Ar}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{estVerificationModel ? estVerificationModel.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { DepartmentESTVerificationModel } from 'src/app/models/department-est-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-mi-vendor-application-verification-current',\r\n templateUrl: './mi-vendor-application-verification-current.component.html',\r\n styleUrls: ['./mi-vendor-application-verification-current.component.scss']\r\n})\r\n\r\nexport class MiVendorApplicationVerificationCurrentComponent implements OnInit {\r\n\r\n @ViewChild('estVerificationTable', { static: true }) public estVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n appVerificationItems: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n estVerificationModel: DepartmentESTVerificationModel[];\r\n\r\n public userID: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n sessionStorage.setItem('currentComponentName', 'miVendorApplicationForApprovalCurrent');\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval', '', new Date(), 'Success');\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n // this.estVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n this.vendorEstVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportMiVendorExcel(this.estVerificationModel, \"Vendor_MI_EST_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadVendorMiSheetAsPdf(this.estVerificationModel, \"Vendor_MI_EST_List\");\r\n }\r\n },\r\n ];\r\n\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n // this.estVerificationTable.clear();\r\n\r\n // let router=this.router.url\r\n // this.routePath=router.split('/')\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.estVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem(\"miVendorApplicationForApprovalCurrent\") != 'null' && (sessionStorage.getItem(\"miVendorApplicationForApprovalCurrent\") && \r\n JSON.parse(window.sessionStorage.getItem('miVendorApplicationForApprovalCurrent'))[0]?.FinYear == this.selectedYear)) {\r\n this.estVerificationModel = JSON.parse(window.sessionStorage.getItem(\"miVendorApplicationForApprovalCurrent\"));\r\n // this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Current)', '', new Date(), 'Success');\r\n // console.log(this.estVerificationModel,\"data\")\r\n } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService.getVendorMIEstimationsForApproval(JSON.parse(payload)?.sub, 'Current', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.AppEstimate.forEach(e=>{\r\n e.EstimationDate=new Date(e.EstimationDate);\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n\r\n e.EstimationDate_filter=e.EstimationDate.toString().substring(4, 24)\r\n })\r\n if (data.AppEstimate?.length > 0) {\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Current)', '', new Date(), 'Success');\r\n this.estVerificationModel = data.AppEstimate;\r\n // console.log(this.estVerificationModel,\"data\")\r\n sessionStorage.setItem('miVendorApplicationForApprovalCurrent', JSON.stringify(this.estVerificationModel));\r\n }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Vendor MI Estimation Applications are Null.' });\r\n // }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.estVerificationModel=[]\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.estVerificationModel = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Current)', '', new Date(), err);\r\n this.messageService.add({ \r\n severity: 'error', \r\n summary: 'Error Message', \r\n detail: err });\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n }\r\n\r\n refreshTable() {\r\n sessionStorage.removeItem('miVendorApplicationForApprovalCurrent');\r\n // this.loadData();\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n miEstimationPrintForm(appId, vendorId, programId, statusCode) {\r\n if (appId) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'vendor-estimate', 'print', appId, vendorId, programId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n this.router.navigate(['department', 'vendor-estimate', 'print', this.cryptoJsService.Encrypt(appId), vendorId, programId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n //Vendor MI Estimation Download Options\r\n downloadVendorMiSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppUserType', header: 'App User Type'},\r\n { field: 'AppID', header: 'APP ID' },\r\n { field: 'ApplicantType', header: 'Applicant Type' },\r\n { field: 'Remarks', header: 'Remarks' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'District', header: 'District' },\r\n { field: 'TotalArea', header: 'total Area' },\r\n { field: 'VendorName', header: 'Vendor Name' },\r\n { field: 'Program', header: 'Program' },\r\n { field: 'PrograId', header: 'Program Id' },\r\n { field: 'VendorId', header: 'Vendor Id' },\r\n { field: 'EstimationDate', header: 'Estimation Date' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n exportMiVendorExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App User Type\": d.AppUserType,\r\n \"APP ID\": d.AppID,\r\n \"Applicant Type\": d.ApplicantType,\r\n \"Remarks\": d.Remarks,\r\n \"Farmer Name\": d.FarmerName,\r\n \"Caste\": d.Caste_Description,\r\n \"Village\": d.Village,\r\n \"Block\": d.Block,\r\n \"District\": d.District,\r\n \"Total Area\":d.TotalArea,\r\n \"Vendor Name\": d.VendorName,\r\n \"Program\": d.Program,\r\n \"Program Id\": d.PrograId,\r\n \"Vendor Id\": d.VendorId,\r\n \"Estimation Date\": d.EstimationDate,\r\n \"Status\": d.Status,\r\n \"Current Status\": d.Status_Ar,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.Pending_CompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.Pending_CompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.Pending_CompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.Pending_CompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_VENDOR_MI_ESTIMATION_VERIFICATION'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_ID'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ID'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AppUserType}}\r\n {{product.AppID}}\r\n {{product?.ApplicantType}}\r\n {{product.FarmerName}}\r\n {{product?.Caste_Description}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n {{product.TotalArea}}\r\n {{product.VendorName}}\r\n {{product.Program}}\r\n {{product.PrograId}}\r\n {{product.VendorId}}\r\n {{product.EstimationDate | date:'medium'}}\r\n {{product.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.Pending_CompletedDays}}\r\n {{product.Status}}\r\n {{product.Remarks}}\r\n {{product.Status_Ar}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{estVerificationModel ? estVerificationModel.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { DepartmentESTVerificationModel } from 'src/app/models/department-est-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-mi-vendor-application-verification-pending',\r\n templateUrl: './mi-vendor-application-verification-pending.component.html',\r\n styleUrls: ['./mi-vendor-application-verification-pending.component.scss']\r\n})\r\nexport class MiVendorApplicationVerificationPendingComponent implements OnInit {\r\n\r\n @ViewChild('estVerificationTable', { static: true }) public estVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n appVerificationItems: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n estVerificationModel: DepartmentESTVerificationModel[];\r\n\r\n public userID: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private router: Router, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n sessionStorage.setItem('currentComponentName', 'miVendorApplicationForApprovalPending');\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval', '', new Date(), 'Success');\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n // this.estVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n this.vendorEstVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportMiVendorExcel(this.estVerificationModel, \"Vendor_MI_EST_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadVendorMiSheetAsPdf(this.estVerificationModel, \"Vendor_MI_EST_List\");\r\n }\r\n },\r\n ];\r\n\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n // this.estVerificationTable.clear();\r\n\r\n // let router=this.router.url\r\n // this.routePath=router.split('/')\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.estVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem(\"miVendorApplicationForApprovalPending\") != 'null' && (sessionStorage.getItem(\"miVendorApplicationForApprovalPending\") && \r\n JSON.parse(window.sessionStorage.getItem('miVendorApplicationForApprovalPending'))[0]?.FinYear == this.selectedYear)) {\r\n this.estVerificationModel = JSON.parse(window.sessionStorage.getItem(\"miVendorApplicationForApprovalPending\"));\r\n // this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Pending)', '', new Date(), 'Success');\r\n // console.log(this.estVerificationModel,\"data\")\r\n } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService.getVendorMIEstimationsForApproval(JSON.parse(payload)?.sub, 'Pending', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.AppEstimate.forEach(e=>{\r\n e.EstimationDate = new Date(e.EstimationDate);\r\n e.AssignedDate = new Date(e.AssignedDate);\r\n\r\n e.EstimationDate_filter=e.EstimationDate.toString().substring(4, 24)\r\n })\r\n if (data.AppEstimate?.length > 0) {\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Pending)', '', new Date(), 'Success');\r\n this.estVerificationModel = data.AppEstimate;\r\n // console.log(this.estVerificationModel,\"data\")\r\n sessionStorage.setItem('miVendorApplicationForApprovalPending', JSON.stringify(this.estVerificationModel));\r\n }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Vendor MI Estimation Applications are Null.' });\r\n // }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.estVerificationModel=[]\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.estVerificationModel = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Estimation For Approval (Pending)', '', new Date(), err);\r\n this.messageService.add({ \r\n severity: 'error', \r\n summary: 'Error Message', \r\n detail: err \r\n });\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n }\r\n\r\n refreshTable() {\r\n sessionStorage.removeItem('miVendorApplicationForApprovalPending');\r\n // this.loadData();\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n miEstimationPrintForm(appId, vendorId, programId, statusCode) {\r\n if (appId) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'vendor-estimate', 'print', appId, vendorId, programId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n this.router.navigate(['department', 'vendor-estimate', 'print', this.cryptoJsService.Encrypt(appId), vendorId, programId], { queryParams: { statusCode: statusCodeEncrypted } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n //Vendor MI Estimation Download Options\r\n downloadVendorMiSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppUserType', header: 'App User Type'},\r\n { field: 'AppID', header: 'APP ID' },\r\n { field: 'ApplicantType', header: 'Applicant Type' },\r\n { field: 'Remarks', header: 'Remarks' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'District', header: 'District' },\r\n { field: 'VendorName', header: 'Vendor Name' },\r\n { field: 'Program', header: 'Program' },\r\n { field: 'PrograId', header: 'Program Id' },\r\n { field: 'VendorId', header: 'Vendor Id' },\r\n { field: 'EstimationDate', header: 'Estimation Date' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n exportMiVendorExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App User Type\": d.AppUserType,\r\n \"APP ID\": d.AppID,\r\n \"Applicant Type\": d.ApplicantType,\r\n \"Remarks\": d.Remarks,\r\n \"Farmer Name\": d.FarmerName,\r\n \"Caste\": d.Caste_Description,\r\n \"Village\": d.Village,\r\n \"Block\": d.Block,\r\n \"District\": d.District,\r\n \"Vendor Name\": d.VendorName,\r\n \"Program\": d.Program,\r\n \"Program Id\": d.PrograId,\r\n \"Vendor Id\": d.VendorId,\r\n \"Estimation Date\": d.EstimationDate,\r\n \"Status\": d.Status,\r\n \"Current Status\": d.Status_Ar,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.Pending_CompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.Pending_CompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.Pending_CompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.Pending_CompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_VENDOR_MI_ESTIMATION_VERIFICATION'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_ID'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ID'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AppUserType}}\r\n {{product.AppID}}\r\n {{product?.ApplicantType}}\r\n {{product.FarmerName}}\r\n {{product?.Caste_Description}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n {{product.TotalArea}}\r\n {{product.VendorName}}\r\n {{product.Program}}\r\n {{product.PrograId}}\r\n {{product.VendorId}}\r\n {{product.EstimationDate | date:'medium'}}\r\n {{product.AssignedDate | date:'medium'}}\r\n {{product.Pending_CompletedDays}}\r\n {{product.Status}}\r\n {{product.Remarks}}\r\n {{product.Status_Ar}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{estVerificationModel ? estVerificationModel.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-mi-vendor-application-verification',\r\n templateUrl: './mi-vendor-application-verification.component.html',\r\n styleUrls: ['./mi-vendor-application-verification.component.scss']\r\n})\r\n\r\nexport class MiVendorApplicationVerificationComponent implements OnInit {\r\n \r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n // this.autoId = params.autoId;\r\n // this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/vendor-mi-applications/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/vendor-mi-applications/current`},\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/vendor-mi-applications/approved` }, \r\n ];\r\n }\r\n );\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport * as XLSX from 'xlsx';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\ninterface Target {\r\n I_FinancialYear_ID: number;\r\n I_State_Code: number;\r\n I_Activity_ID: number;\r\n I_PT: number;\r\n I_FT: number;\r\n}\r\ninterface ExtendedTarget extends Target {\r\n I_District_Code: number;\r\n I_Crop_Code: number;\r\n}\r\n\r\n@Component({\r\n selector: 'app-physical-fin-target',\r\n templateUrl: './physical-fin-target.component.html',\r\n styleUrls: ['./physical-fin-target.component.scss']\r\n})\r\nexport class PhysicalFinTargetComponent implements OnInit {\r\n\r\n statePhyFinanceForm: FormGroup;\r\n districtPhyFinanceForm: FormGroup;\r\n statePhyFinanceData: Target[] = [];\r\n districtPhyFinanceData: any = [];\r\n\r\n blockSpace: RegExp = /^[^\\s,]([^,]*[^\\s,])?$/; \r\n\r\n public showStateFinStatus: boolean = false;\r\n public getStatePhyFinanceData: any = [];\r\n public showDistrictFinStatus: boolean = false;\r\n public getDistrictPhyFinanceData: any = [];\r\n public showDistrictAchievementDataStatus: boolean = false;\r\n public getDistrictPhyAchievementData: any = [];\r\n public showDistrictOSAchievementDataStatus: boolean = false;\r\n public getDistrictOSAchievementData: any = [];\r\n\r\n xslxToJsonData: any[] = [];\r\n uploadFile: any;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private fApplicationService: FarmersDetailsService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.statePhyFinanceForm = this.fb.group({\r\n I_FinancialYear_ID: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_State_Code: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_Activity_ID: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_PT: [null, [Validators.required, Validators.min(0)]],\r\n I_FT: [null, [Validators.required, Validators.min(0)]]\r\n });\r\n\r\n this.districtPhyFinanceForm = this.fb.group({\r\n I_FinancialYear_ID: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_State_Code: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_District_Code: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_Activity_ID: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_Crop_Code: [null, [Validators.required, Validators.pattern(/^\\d+$/)]],\r\n I_PT: [null, [Validators.required, Validators.min(0)]],\r\n I_FT: [null, [Validators.required, Validators.min(0)]]\r\n });\r\n }\r\n \r\n\r\n addStatePhyFinanceData() {\r\n if (this.statePhyFinanceForm.valid) {\r\n this.statePhyFinanceData.push(this.statePhyFinanceForm.value);\r\n this.statePhyFinanceForm.reset();\r\n } else {\r\n this.statePhyFinanceForm.markAllAsTouched();\r\n }\r\n\r\n }\r\n\r\n addDistPhyFinanceData() {\r\n if (this.districtPhyFinanceForm.valid) {\r\n this.districtPhyFinanceData.push(this.districtPhyFinanceForm.value);\r\n this.districtPhyFinanceForm.reset();\r\n } else {\r\n this.districtPhyFinanceForm.markAllAsTouched();\r\n }\r\n }\r\n\r\n deleteStatePhyTarget(index: number) {\r\n this.statePhyFinanceData.splice(index, 1);\r\n }\r\n\r\n deleteDistPhyTarget(index: number) {\r\n this.districtPhyFinanceData.splice(index, 1);\r\n }\r\n\r\n\r\n\r\n // state target\r\n onSubmitStatePhyTarDate() {\r\n // Handle target form submission\r\n console.log('Target form submitted', this.statePhyFinanceData);\r\n \r\n let reqBody = this.statePhyFinanceData;\r\n this.insertStatePhysicalFinData(reqBody);\r\n }\r\n\r\n insertStatePhysicalFinData(reqBody){\r\n this.loader.start();\r\n this.fApplicationService \r\n .insertStatePhysicalFinancialTarget(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n \r\n if(res.Success == true){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res.Message,\r\n });\r\n this.statePhyFinanceData = [];\r\n this.statePhyFinanceForm.reset();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res.Message,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onClickGetStateTarData(){\r\n this.showStateFinStatus = true;\r\n this.getStateFinTargetData();\r\n }\r\n\r\n getStateFinTargetData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .getStatePhysicalFinancialTarget()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n \r\n if(res.length > 0){\r\n this.getStatePhyFinanceData = res;\r\n }else{\r\n this.getStatePhyFinanceData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.getStatePhyFinanceData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSubmitStateFinData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .postStatePhysicalFinancialTarget()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n \r\n if(res['6'] == \"Test Data Inserted Sucessfully\"){\r\n this.showStateFinStatus = false;\r\n this.getStatePhyFinanceData = [];\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res['6'],\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Saved',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n\r\n // district target\r\n onSubmitDistrictPhyTarDate() {\r\n // Handle extended target form submission\r\n console.log('Extended target form submitted', this.districtPhyFinanceData);\r\n let reqBody = this.districtPhyFinanceData;\r\n this.insertDistrictPhysicalFinData(reqBody);\r\n }\r\n\r\n insertDistrictPhysicalFinData(reqBody){\r\n this.loader.start();\r\n this.fApplicationService \r\n .insertDistrictPhysicalFinancialTarget(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n \r\n if(res.Success == true){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res.Message,\r\n });\r\n this.districtPhyFinanceData = [];\r\n this.districtPhyFinanceForm.reset();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res.Message,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onClickDistrictTarData(){\r\n this.showDistrictFinStatus = true;\r\n this.getDistrictFinTargetData();\r\n }\r\n\r\n getDistrictFinTargetData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .getDistrictPhysicalFinancialTarget()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n \r\n if(res.length > 0){\r\n this.getDistrictPhyFinanceData = res;\r\n }else{\r\n this.getDistrictPhyFinanceData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.getDistrictPhyFinanceData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSubmitDistrictFinData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .postDistrictPhysicalFinancialTarget()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n console.log(res);\r\n \r\n console.log(res?.['9'])\r\n console.log(res['6'])\r\n if(res['6'] == \"Test Data Inserted Successfully\"){\r\n this.getDistrictPhyFinanceData = [];\r\n this.showDistrictFinStatus = false;\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res['6'],\r\n });\r\n }else if('Error' in res){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: res['Error'],\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // district achievement\r\n onClickDistrictAchieveData(){\r\n this.showDistrictAchievementDataStatus = true;\r\n this.getDistrictFinAchievementData();\r\n }\r\n\r\n getDistrictFinAchievementData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .getDistrictPhysicalFinancialAchievement()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n \r\n if(res.length > 0){\r\n this.getDistrictPhyAchievementData = res;\r\n }else{\r\n this.getDistrictPhyAchievementData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.getDistrictPhyAchievementData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSubmitDistrictFinAchievementData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .postDistrictPhysicalFinancialAchievement()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n console.log(res);\r\n \r\n // if(res.length > 0){\r\n // this.getStatePhyFinanceData = res;\r\n // }else{\r\n // this.getStatePhyFinanceData = [];\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Data Not Found',\r\n // });\r\n // }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // district other source achievement\r\n onClickDistrictOSAchieveData(){\r\n this.showDistrictOSAchievementDataStatus = true;\r\n this.getDistrictFinOSAchievementData();\r\n }\r\n\r\n getDistrictFinOSAchievementData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .getDistrictOtherSourceAchievement()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n \r\n if(res.length > 0){\r\n this.getDistrictOSAchievementData = res;\r\n }else{\r\n this.getDistrictOSAchievementData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.getDistrictOSAchievementData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSubmitDistrictOSAchievementData(){\r\n this.loader.start();\r\n this.fApplicationService \r\n .postDistrictOtherSourceAchievement()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n console.log(res);\r\n \r\n // if(res.length > 0){\r\n // this.getStatePhyFinanceData = res;\r\n // }else{\r\n // this.getStatePhyFinanceData = [];\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Data Not Found',\r\n // });\r\n // }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n\r\n // upload state fin target\r\n onUploadStateFinDetails(event, formcontrol, uploadElement) {\r\n this.uploadFile = [];\r\n let workBook = null;\r\n let jsonData = null;\r\n let sheetName = null\r\n const reader = new FileReader();\r\n let file = event.files[0];\r\n this.uploadFile = file;\r\n reader.onload = (event) => {\r\n const data = reader.result;\r\n workBook = XLSX.read(data, { type: 'binary', cellText:false, cellDates:true });\r\n jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n sheetName = name;\r\n const sheet = workBook.Sheets[name];\r\n initial[name] = XLSX.utils.sheet_to_json(sheet, {\r\n raw: true,\r\n dateNF:'yyyy-mm-dd',\r\n });\r\n return initial;\r\n }, {});\r\n const dataString = JSON.stringify(jsonData);\r\n let statePhyFinData = JSON.parse(dataString)[sheetName];\r\n // this.xslxToJsonDataPersonal = JSON.parse(dataString)[sheetName];\r\n // if (!(this.xslxToJsonDataPersonal)) {\r\n if (!(statePhyFinData)) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!' });\r\n // }else if(this.xslxToJsonDataPersonal.length == 0){\r\n }else if(statePhyFinData.length == 0){\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'The Uploaded file is empty!' });\r\n }else{\r\n this.addUploadedStateData(statePhyFinData);\r\n }\r\n }\r\n reader.readAsBinaryString(file);\r\n uploadElement.clear();\r\n }\r\n\r\n addUploadedStateData(value){\r\n console.log(value);\r\n this.statePhyFinanceData = value.map((val) => ({\r\n 'I_FinancialYear_ID': val?.['Financial Year'] ,\r\n 'I_State_Code': val?.['State Code'] ,\r\n 'I_Activity_ID': val?.['Activity Id'] ,\r\n 'I_PT': val?.['PT'] ,\r\n 'I_FT': val?.['FT']\r\n }))\r\n }\r\n\r\n clearStateUploadData(){\r\n this.statePhyFinanceData = [];\r\n }\r\n\r\n\r\n // upload state fin target\r\n onUploadDistrictFinDetails(event, formcontrol, uploadElement) {\r\n this.uploadFile = [];\r\n let workBook = null;\r\n let jsonData = null;\r\n let sheetName = null\r\n const reader = new FileReader();\r\n let file = event.files[0];\r\n this.uploadFile = file;\r\n reader.onload = (event) => {\r\n const data = reader.result;\r\n workBook = XLSX.read(data, { type: 'binary', cellText:false, cellDates:true });\r\n jsonData = workBook.SheetNames.reduce((initial, name) => {\r\n sheetName = name;\r\n const sheet = workBook.Sheets[name];\r\n initial[name] = XLSX.utils.sheet_to_json(sheet, {\r\n raw: true,\r\n dateNF:'yyyy-mm-dd',\r\n });\r\n return initial;\r\n }, {});\r\n const dataString = JSON.stringify(jsonData);\r\n let districtPhyFinData = JSON.parse(dataString)[sheetName];\r\n if (!(districtPhyFinData)) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'The Uploaded file has invalid data \"or\" Multiple sheet data is not supported!' });\r\n }else if(districtPhyFinData.length == 0){\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'The Uploaded file is empty!' });\r\n }else{\r\n this.addUploadedDistrictData(districtPhyFinData);\r\n }\r\n }\r\n reader.readAsBinaryString(file);\r\n uploadElement.clear();\r\n }\r\n\r\n addUploadedDistrictData(value){\r\n console.log(value);\r\n this.districtPhyFinanceData = value.map((val) => ({\r\n 'I_FinancialYear_ID': val?.['Financial Year'] ,\r\n 'I_State_Code': val?.['State Code'] ,\r\n 'I_District_Code': val?.['District Code'],\r\n 'I_Activity_ID': val?.['Activity Id'] ,\r\n 'I_Crop_Code': val?.['Crop Id'] ,\r\n 'I_PT': val?.['PT'] ,\r\n 'I_FT': val?.['FT']\r\n }))\r\n }\r\n\r\n clearDistrictUploadData(){\r\n this.districtPhyFinanceData = [];\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'Insert State Physical Financial Target'| translate}}
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n Download Sample Excel\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{'FINANCIAL_YEAR_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
{{'State Code is required'|\r\n translate}}
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
{{'Activity Id is required'|\r\n translate}}
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'PT is required and must be a positive\r\n number'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FT is required and must be a positive\r\n number'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
0\" class=\"dashboardTable\" style=\"margin: 5px;\">\r\n \r\n \r\n \r\n {{'Financial Year' | translate}}\r\n {{'State Code' | translate}}\r\n {{'Activity ID' | translate}}\r\n {{'PT' | translate}}\r\n {{'FT' | translate}}\r\n {{'Action' | translate}}\r\n \r\n \r\n \r\n \r\n {{target.I_FinancialYear_ID}}\r\n {{target.I_State_Code}}\r\n {{target.I_Activity_ID}}\r\n {{target.I_PT}}\r\n {{target.I_FT}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'Get State Physical\r\n Financial Target' |\r\n translate }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ 'Data Not Found'}}

\r\n
\r\n \r\n
0\">\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n {{'State Code'| translate}}\r\n {{'Activity Id'| translate}}\r\n {{'PT'| translate}}\r\n {{'FT'| translate}}\r\n \r\n \r\n \r\n \r\n {{product?.I_FinancialYear_ID}}\r\n {{product?.I_State_Code}}\r\n {{product?.I_Activity_ID}}\r\n {{product?.I_FT}}\r\n {{product?.I_PT}}\r\n \r\n \r\n
\r\n \r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'Insert District Physical Financial Target'| translate}}
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n Download Sample Excel\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{'FINANCIAL_YEAR_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
{{'State Code is\r\n required'|\r\n translate}}
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
{{'District Code is\r\n required'|\r\n translate}}
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{'Activity Id is required'| translate}}
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
{{'Crop Code is required.'|\r\n translate}}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
{{'PT is required and must be a\r\n positive number'| translate}}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
{{'FT is required and must be a\r\n positive number'| translate}}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
0\" class=\"dashboardTable\" style=\"margin: 5px;\">\r\n \r\n \r\n \r\n {{'Financial Year' | translate}}\r\n {{'State Code' | translate}}\r\n {{'District Code' | translate}}\r\n {{'Activity ID' | translate}}\r\n {{'Crop Code' | translate}}\r\n {{'PT' | translate}}\r\n {{'FT' | translate}}\r\n {{'Action' | translate}}\r\n \r\n \r\n \r\n \r\n {{target.I_FinancialYear_ID}}\r\n {{target.I_State_Code}}\r\n {{target.I_District_Code}}\r\n {{target.I_Activity_ID}}\r\n {{target.I_Crop_Code}}\r\n {{target.I_PT}}\r\n {{target.I_FT}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'Get District Physical\r\n Financial Target' |\r\n translate }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ 'Data Not Found'}}

\r\n
\r\n \r\n
0\">\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n {{'State Code'| translate}}\r\n {{'District Code'| translate}}\r\n {{'Activity Id'| translate}}\r\n {{'Crop Id'| translate}}\r\n {{'PT'| translate}}\r\n {{'FT'| translate}}\r\n \r\n \r\n \r\n \r\n {{product?.I_FinancialYear_ID}}\r\n {{product?.I_State_Code}}\r\n {{product?.I_District_Code}}\r\n {{product?.I_Activity_ID}}\r\n {{product?.I_Crop_Code}}\r\n {{product?.I_FT}}\r\n {{product?.I_PT}}\r\n \r\n \r\n
\r\n \r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n \r\n \r\n
\r\n

{{ 'Get District Physical\r\n Financial Achievement' |\r\n translate }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ 'Data Not Found'}}

\r\n
\r\n \r\n
0\">\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n {{'State Code'| translate}}\r\n {{'District Code'| translate}}\r\n {{'Activity Id'| translate}}\r\n {{'Crop Id'| translate}}\r\n {{'Month Id'| translate}}\r\n {{'PT'| translate}}\r\n {{'FT'| translate}}\r\n \r\n \r\n \r\n \r\n {{product?.I_FinancialYear_ID}}\r\n {{product?.I_State_Code}}\r\n {{product?.I_District_Code}}\r\n {{product?.I_Activity_ID}}\r\n {{product?.I_Crop_Code}}\r\n {{product?.I_Month_ID}}\r\n {{product?.I_FT}}\r\n {{product?.I_PT}}\r\n \r\n \r\n
\r\n \r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n

{{ 'Get District Other Source Achievement' |\r\n translate }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ 'Data Not Found'}}

\r\n
\r\n \r\n
0\">\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n {{'State Code'| translate}}\r\n {{'District Code'| translate}}\r\n {{'Activity Id'| translate}}\r\n {{'Crop Id'| translate}}\r\n {{'Month Id'| translate}}\r\n {{'PT'| translate}}\r\n {{'FT'| translate}}\r\n \r\n \r\n \r\n \r\n {{product?.I_FinancialYear_ID}}\r\n {{product?.I_State_Code}}\r\n {{product?.I_District_Code}}\r\n {{product?.I_Activity_ID}}\r\n {{product?.I_Crop_Code}}\r\n {{product?.I_Month_ID}}\r\n {{product?.I_FT}}\r\n {{product?.I_PT}}\r\n \r\n \r\n
\r\n \r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-print-farmers-challan',\r\n templateUrl: './print-farmers-challan.component.html',\r\n styleUrls: ['./print-farmers-challan.component.scss'],\r\n})\r\nexport class PrintFarmersChallanComponent implements OnInit {\r\n @ViewChild('appFarmerChallanTable', { static: true })\r\n public appFarmerChallanTable: Table;\r\n\r\n public selectedApplications: any = [];\r\n public appFarmerChallanModel: any = [];\r\n public viewChallan: boolean = false;\r\n\r\n public currentDate: Date;\r\n\r\n public challanPrintData: any = [];\r\n public remarks: any;\r\n public totalFarmerShareAmount: any = 0;\r\n\r\n public appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public date: any;\r\n public selectedData: any[];\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadData();\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n this.date = new Date();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.selectedApplications,\r\n `Selected Data For Bank Challan (${this.date})`\r\n );\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.selectedApplications,\r\n `Selected Data For Bank Challan (${this.date})`\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n loadData() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getDataToPrintMultipleChallanAtal('Pending')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // if (data?.length > 0) {\r\n this.appFarmerChallanModel = data;\r\n this.loader.close();\r\n this.appFarmerChallanModel = this.appFarmerChallanModel.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.AppId.concat(\"_\", row.ProgID) , \r\n }))\r\n console.log('dataa', this.appFarmerChallanModel);\r\n // }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Applications not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calSum();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calSum();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n printChallan() {\r\n console.log('printChallan', this.selectedApplications);\r\n if (\r\n this.selectedApplications.length == 0 ||\r\n this.selectedApplications == null\r\n ) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'No Application is selected',\r\n detail: 'Select the Application first.',\r\n });\r\n } else {\r\n let reqBody: any = [];\r\n this.selectedApplications.forEach((val) => {\r\n reqBody.push({ appId: val.AppId, progID: val.ProgID });\r\n });\r\n this.printMultipleChallanAtal(reqBody);\r\n this.viewChallan = true;\r\n this.loadData();\r\n }\r\n }\r\n\r\n calSum() {\r\n this.totalFarmerShareAmount = 0;\r\n this.selectedApplications.forEach((val) => {\r\n this.totalFarmerShareAmount += val.FarmerShare;\r\n });\r\n }\r\n\r\n printMultipleChallanAtal(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .printMultipleChallanAtal(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.currentDate = new Date();\r\n this.challanPrintData = data;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onPrint(divName) {\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n document.body.style.visibility=\"hidden\";\r\n document.getElementById(divName).style.visibility='visible'\r\n window.print();\r\n document.body.style.visibility=\"visible\";\r\n }\r\n\r\n onBack() {\r\n this.viewChallan = false;\r\n }\r\n\r\n onSubmit() {\r\n console.log('selectedApplications', this.selectedApplications);\r\n\r\n this.selectedData = [];\r\n\r\n this.selectedApplications.forEach((row) => {\r\n this.selectedData.push({\r\n appID: row.AppId,\r\n farmerId: row.FarmerId,\r\n programID: row.ProgID,\r\n });\r\n });\r\n\r\n let reqBody = {\r\n list: this.selectedData,\r\n remarks: this.remarks ? this.remarks : \"\",\r\n };\r\n console.log('reqBody', reqBody);\r\n\r\n this.approveOtherUsersChallan(reqBody);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppId', header: 'Application ID' },\r\n { field: 'FarmerId', header: 'Farmer Id' },\r\n { field: 'ProgID', header: 'Programme ID' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'VendorName', header: 'Vendor Name' },\r\n { field: 'AppUserType', header: 'App User Type' },\r\n { field: 'ChallanStatus', header: 'Challan Status' },\r\n { field: 'MIArea', header: 'MIArea' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'District', header: 'District' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Application Id': d.AppId,\r\n 'Farmer Id': d.FarmerId,\r\n 'Programme ID': d.ProgID,\r\n 'Programme Name': d.ProgrammeName,\r\n 'Vendor Name': d.VendorName,\r\n 'App User Type': d.AppUserType,\r\n 'Challan Status': d.ChallanStatus,\r\n 'MI Area': d.MIArea,\r\n Village: d.Village,\r\n Block: d.Block,\r\n District: d.District,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n\r\n approveOtherUsersChallan(reqBody) {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .approveOtherUsersChallan(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_BANK_CHALLAN'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'APP_USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AppId}}\r\n {{product.VendorName}}\r\n {{product.ProgrammeName}}\r\n {{product.AppUserType}}\r\n {{product.MIArea}}\r\n {{product.FarmerShare}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n {{product.ChallanStatus}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_SELECTED_FOR_BANK_CHALLAN'| translate}}: {{ selectedApplications.length }}
\r\n
\r\n
\r\n

{{'TOTAL_FARMER_SHARE_AMOUNT'| translate}}: {{ totalFarmerShareAmount }}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'FARMER_SHARE_CHALLAN'| translate}}

\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ currentDate | date : 'medium'}}
\r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'MICRO_IRRIGATION_&_COMMAND'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_2022'| translate}}\r\n \r\n
\r\n
\r\n
\r\n

{{'CHALLAN_FOR_PAYMENT_OF_DUE_DATE'| translate}}

\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'MODE_OF_PAYMENT'| translate}}

\r\n
\r\n

{{ challanPrintData?.PaymentMode }}

\r\n
\r\n

{{'NAME_OF_APPLICANT'| translate}}

\r\n
\r\n

{{ challanPrintData?.ApplicantName | uppercase }}\r\n

\r\n
\r\n

{{'CHALLAN_DATE'| translate}}

\r\n
\r\n

{{ challanPrintData?.ChallanDate | date:'medium'\r\n }}\r\n

\r\n
\r\n

{{'APPLICATION_NUMBER'| translate}}

\r\n
\r\n

{{ challanPrintData?.AppId }}

\r\n
\r\n

{{'BENEFICIARY_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryName }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'PAYMENT_DETAILS'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'BENEFICIARY_ACCOUNT_NO'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryAccountNo }}

\r\n
\r\n

{{'BANK_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BankName }}

\r\n
\r\n

{{'BRANCH_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BranchName }}

\r\n
\r\n

{{'IFSC_CODE'| translate}}

\r\n
\r\n

{{ challanPrintData?.IFSCCODE }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDeposted }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED_IN_WORDS'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDepostedInWords }}\r\n

\r\n
\r\n
\r\n
{{'DEPOSIT_DATE'| translate}}
\r\n
{{'SIGN_OF_DEPOSITOR'| translate}}
\r\n
\r\n
{{'BANK_RECEIVING_STAMP'| translate}}\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n
\r\n
Note: {{'PLEASE_DONT_MAKE_A_COPY_OF_CHALLAN'| translate}}\r\n
\r\n
{{'YOU_CAN_PAY_AT_ANY_BRANCH'| translate}}\r\n
\r\n
{{'CHALLAN_PAYMENT_NOTE'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
{{ currentDate | date : 'medium'}}
\r\n
\r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n \r\n {{'MICRO_IRRIGATION_&_COMMAND'| translate}}\r\n \r\n
\r\n {{'HARYANA'| translate}}
\r\n \r\n {{'FINANCIAL_YEAR_2022-23'| translate}}\r\n \r\n
\r\n
\r\n
\r\n

{{'CHALLAN_PAYMENT_DUE_AMOUNT_CUSTOMER_COPY'| translate}}

\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'MODE_OF_PAYMENT'| translate}}

\r\n
\r\n

{{ challanPrintData?.PaymentMode }}

\r\n
\r\n

{{'NAME_OF_APPLICANT'| translate}}

\r\n
\r\n

{{ challanPrintData?.ApplicantName | uppercase }}\r\n

\r\n
\r\n

{{'CHALLAN_DATE'| translate}}

\r\n
\r\n

{{ challanPrintData?.ChallanDate | date:'medium'\r\n }}\r\n

\r\n
\r\n

{{'APPLICATION_NUMBER'| translate}}

\r\n
\r\n

{{ challanPrintData?.AppId }}

\r\n
\r\n

{{'BENEFICIARY_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryName }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{'PAYMENT_DETAILS'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'BENEFICIARY_ACCOUNT_NO'| translate}}

\r\n
\r\n

{{ challanPrintData?.BeneficiaryAccountNo }}

\r\n
\r\n

{{'BANK_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BankName }}

\r\n
\r\n

{{'BRANCH_NAME'| translate}}

\r\n
\r\n

{{ challanPrintData?.BranchName }}

\r\n
\r\n

{{'IFSC_CODE'| translate}}

\r\n
\r\n

{{ challanPrintData?.IFSCCODE }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDeposted }}

\r\n
\r\n

{{'AMOUNT_TO_BE_DEPOSITED_IN_WORDS'| translate}}

\r\n
\r\n

{{ challanPrintData?.AmountToBeDepostedInWords }}\r\n

\r\n
\r\n
\r\n
{{'DEPOSIT_DATE'| translate}}
\r\n
{{'SIGN_OF_DEPOSITOR'| translate}}
\r\n
\r\n
{{'BANK_RECEIVING_STAMP'| translate}}\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n
\r\n
{{'NOTE'| translate}}: {{'PLEASE_DONT_MAKE_A_COPY_OF_CHALLAN'| translate}}.\r\n
\r\n
{{'YOU_CAN_PAY_AT_ANY_BRANCH'| translate}}.\r\n \r\n
\r\n
{{'CHALLAN_PAYMENT_NOTE'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
","import { Router } from '@angular/router';\r\nimport { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n@Component({\r\n selector: 'app-realtime-data-pdmc-scheme',\r\n templateUrl: './realtime-data-pdmc-scheme.component.html',\r\n styleUrls: ['./realtime-data-pdmc-scheme.component.scss']\r\n})\r\nexport class RealtimeDataPdmcSchemeComponent implements OnInit {\r\n // @ViewChild('appVerificationTable', { static: true })\r\n // public appVerificationTable: Table;\r\n @ViewChild('realtimeDataPdmcSchemeTable', { static: true }) public realtimeDataPdmcSchemeTable;\r\n @ViewChild('realtimeDataPdmcScheme2Table', { static: true }) public realtimeDataPdmcScheme2Table;\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n districtConsistencyItems: MenuItem[];\r\n onFarmerWaterTankItesms: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n miDetailsByAppId: any;\r\n _appID: any;\r\n\r\n ipAddress: any;\r\n public userID: any;\r\n public status: any;\r\n districtConsistencyList: any[];\r\n // canalTubewellReportList: any[];\r\n canalTubewellList: any;\r\n finalArray = [];\r\n disctrictConsistenceWiseData: any;\r\n realTimeSoucreListData: any;\r\n // tempArray =\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n public cd: ChangeDetectorRef\r\n ) { }\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.loadData();\r\n // this.realtimeDataPdmcSchemeTable.filters['Status_Ar'] = [\r\n // { value: '', matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n // this.realtimeDataPdmcScheme2Table.filters['Status_Ar'] = [\r\n // { value: '', matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n \r\n this.districtConsistencyItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelforDistrictandconstituency(this.disctrictConsistenceWiseData, 'Real time data of PDMC Scheme District and constituency wise detail');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.disctrictConsistenceWiseData,\r\n 'Real time data of PDMC Scheme District and constituency wise detail'\r\n );\r\n },\r\n },\r\n ];\r\n this.onFarmerWaterTankItesms = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelforOnFarmerTank(this.realTimeSoucreListData, 'On Farm Water Tank (Other Intervention component)');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf1(\r\n this.realTimeSoucreListData,\r\n 'On Farm Water Tank (Other Intervention component)'\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n onFiltering(event: any) {\r\n console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n\r\n loadData() {\r\n this.deptDashBoardService.GetMicroIrrigationSystem().pipe(first()).subscribe({\r\n next: (data) => {\r\n this.canalAndTubeWellBasedReport(data)\r\n this.consistenceWisedDataCalculation(data)\r\n this.cd.detectChanges();\r\n this.cd.reattach()\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userID, 'District and consistence wise data on clicking For Approval', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! District and consistence wise data on clicking not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n canalAndTubeWellBasedReport(data) {\r\n let waterSourceObj = {}\r\n this.canalTubewellList = data;\r\n for (let index = 0; index < this.canalTubewellList.length; index++) {\r\n if (waterSourceObj[this.canalTubewellList[index].Source_Name]) {\r\n waterSourceObj[this.canalTubewellList[index].Source_Name].push(this.canalTubewellList[index])\r\n } else if (!waterSourceObj[this.canalTubewellList[index].Source_Name]) {\r\n waterSourceObj[this.canalTubewellList[index].Source_Name] = []\r\n waterSourceObj[this.canalTubewellList[index].Source_Name].push(this.canalTubewellList[index])\r\n }\r\n }\r\n let waterSourceArray = Object.keys(waterSourceObj)\r\n let waterSourceWisedData = [];\r\n for (let index = 0; index < waterSourceArray.length; index++) {\r\n let waterSourceArrayList = waterSourceObj[waterSourceArray[index]]\r\n let verifiedAreaCount = 0;\r\n let incompleteAreaCount = 0;\r\n let verifiedApps = 0;\r\n let subsidyDisbursedDate = 0;\r\n let disbursedAmount = 0;\r\n let Area = 0;\r\n let Source_Name: any;\r\n let incomplete = 0\r\n let subsidyDisbursedDateCount = 0\r\n for (let l = 0; l < waterSourceArrayList.length; l++) {\r\n Source_Name = waterSourceArrayList[l].Source_Name\r\n if (waterSourceArrayList[l].TotalArea) {\r\n Area = Area + (waterSourceArrayList[l].TotalArea ? waterSourceArrayList[l].TotalArea : 0)\r\n }\r\n if (waterSourceArrayList[l].Status_Ar == 'A') {\r\n verifiedApps = verifiedApps + 1\r\n verifiedAreaCount = verifiedAreaCount + (waterSourceArrayList[l].TotalArea ? waterSourceArrayList[l].TotalArea : 0)\r\n }\r\n if ((waterSourceArrayList[l].Status_Ar == 'CP') || (waterSourceArrayList[l].Status_Ar == 'RP')) {\r\n incompleteAreaCount = incompleteAreaCount + (waterSourceArrayList[l].TotalArea ? waterSourceArrayList[l].TotalArea : 0)\r\n incomplete = incomplete + 1\r\n }\r\n if (waterSourceArrayList[l].Stage3DisbursedDate) {\r\n subsidyDisbursedDate = subsidyDisbursedDate + (waterSourceArrayList[l]).length\r\n subsidyDisbursedDateCount = subsidyDisbursedDate + 1\r\n }\r\n if(waterSourceArrayList[l].stage3DisbursedAmount) {\r\n disbursedAmount = disbursedAmount + (waterSourceArrayList[l].DisbursedAmount ? waterSourceArrayList[l].DisbursedAmount : 0)\r\n }\r\n }\r\n const Obj = {\r\n Source_Name: Source_Name,\r\n Verified_Apps : verifiedApps,\r\n Verified_Area_Count: verifiedAreaCount ? verifiedAreaCount.toFixed(2) : 0,\r\n Under_Process_of_Installation : incomplete ? incomplete.toFixed(2) : 0,\r\n Under_Process_Area : incompleteAreaCount ? incompleteAreaCount.toFixed(2) : 0,\r\n Assistance_Disbursed : subsidyDisbursedDateCount,\r\n Disbursed_Area: subsidyDisbursedDate,\r\n Disbursed_Amount: disbursedAmount,\r\n Noof_Benficiaries : verifiedApps\r\n }\r\n waterSourceWisedData.push(Obj);\r\n }\r\n waterSourceWisedData.forEach(e=>{\r\n e.Under_Process_Area=parseFloat(e.Under_Process_Area)\r\n e.Under_Process_of_Installation=parseFloat(e.Under_Process_of_Installation);\r\n e.Verified_Area_Count=parseFloat(e.Verified_Area_Count)\r\n })\r\n this.realTimeSoucreListData = waterSourceWisedData\r\n this.cd.detectChanges();\r\n this.cd.reattach()\r\n }\r\n consistenceWisedDataCalculation(data) {\r\n let constitutionsObj = {}\r\n if (data && data.length > 0) {\r\n this.districtConsistencyList = data\r\n for (let index = 0; index < this.districtConsistencyList.length; index++) {\r\n if (constitutionsObj[this.districtConsistencyList[index].Constituency]) {\r\n constitutionsObj[this.districtConsistencyList[index].Constituency].push(this.districtConsistencyList[index])\r\n } else if (!constitutionsObj[this.districtConsistencyList[index].Constituency]) {\r\n constitutionsObj[this.districtConsistencyList[index].Constituency] = []\r\n constitutionsObj[this.districtConsistencyList[index].Constituency].push(this.districtConsistencyList[index])\r\n }\r\n }\r\n let constitutionkeysArray = Object.keys(constitutionsObj)\r\n let tempConsistenceWisedData = [];\r\n for (let index = 0; index < constitutionkeysArray.length; index++) {\r\n let constituteArrayList = constitutionsObj[constitutionkeysArray[index]]\r\n let statusArray = {}\r\n let verifiedAreaCount = 0;\r\n let incompleteAreaCount = 0;\r\n let IntimationStage1 = 0;\r\n let VerifiedStage1 = 0;\r\n let IntimationStage2 = 0;\r\n let VerifiedStage2 = 0;\r\n let AssistanceDisbursedArea1 = 0\r\n let AssistanceDisbursedAmount1 = 0\r\n let AssistanceDisbursedArea2 = 0\r\n let AssistanceDisbursedAmount2 = 0\r\n let AssistanceDisbursedArea3 = 0\r\n let AssistanceDisbursedAmount3 = 0\r\n let IntimationStage3 = 0\r\n let VerifiedStage3 = 0\r\n let source_id : any;\r\n let Area = 0\r\n for (let l = 0; l < constituteArrayList.length; l++) {\r\n if (statusArray[constituteArrayList[l].Status_Ar]) {\r\n source_id = constituteArrayList[l].Source_ID\r\n if (constituteArrayList[l].APP_ID) {\r\n statusArray[constituteArrayList[l].Status_Ar].push(constituteArrayList[l])\r\n }\r\n if (constituteArrayList[l].TotalArea) {\r\n Area = Area + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Status_Ar == 'A') {\r\n verifiedAreaCount = verifiedAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n } if ((constituteArrayList[l].Status_Ar == 'CP') || (constituteArrayList[l].Status_Ar == 'RP')) {\r\n incompleteAreaCount = incompleteAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Stage1Intimation) {\r\n IntimationStage1 = IntimationStage1 + 1\r\n }\r\n if (constituteArrayList[l].stage1_VerifiedDate) {\r\n VerifiedStage1 = VerifiedStage1 + 1\r\n }\r\n if (constituteArrayList[l].Stage2Intimation) {\r\n IntimationStage2 = IntimationStage2 + 1\r\n }\r\n if (constituteArrayList[l].stage2_VerifiedDate) {\r\n VerifiedStage2 = VerifiedStage2 + 1\r\n }\r\n if (constituteArrayList[l].Stage3Intimation) {\r\n IntimationStage3 = IntimationStage3 + 1\r\n }\r\n if (constituteArrayList[l].stage3_VerifiedDate) {\r\n VerifiedStage3 = VerifiedStage3 + 1\r\n }\r\n if (constituteArrayList[l].Stage1DisbursedDate) {\r\n AssistanceDisbursedArea1 = AssistanceDisbursedArea1 + 1\r\n }\r\n if (constituteArrayList[l].stage1DisbursedAmount) {\r\n AssistanceDisbursedAmount1 = AssistanceDisbursedAmount1 + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Stage2DisbursedDate) {\r\n AssistanceDisbursedArea2 = AssistanceDisbursedArea2 + 1\r\n }\r\n if (constituteArrayList[l].stage2DisbursedAmount) {\r\n AssistanceDisbursedAmount2 = AssistanceDisbursedAmount2 + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Stage3DisbursedDate) {\r\n AssistanceDisbursedArea3 = AssistanceDisbursedArea3 + 1\r\n }\r\n if (constituteArrayList[l].stage3DisbursedAmount) {\r\n AssistanceDisbursedAmount3 = AssistanceDisbursedAmount3 + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n } else {\r\n statusArray[constituteArrayList[l].Status_Ar] = []\r\n if (constituteArrayList[l].APP_ID) {\r\n statusArray[constituteArrayList[l].Status_Ar].push(constituteArrayList[l])\r\n }\r\n if (constituteArrayList[l].TotalArea) {\r\n Area = Area + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Status_Ar == 'A') {\r\n verifiedAreaCount = verifiedAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if ((constituteArrayList[l].Status_Ar == 'CP') || (constituteArrayList[l].Status_Ar == 'RP')) {\r\n incompleteAreaCount = incompleteAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Stage1Intimation) {\r\n IntimationStage1 = IntimationStage1 + 1\r\n }\r\n if (constituteArrayList[l].stage1_VerifiedDate) {\r\n VerifiedStage1 = VerifiedStage1 + 1\r\n }\r\n if (constituteArrayList[l].Stage2Intimation) {\r\n IntimationStage2 = IntimationStage2 + 1\r\n }\r\n if (constituteArrayList[l].stage2_VerifiedDate) {\r\n VerifiedStage2 = VerifiedStage2 + 1\r\n }\r\n if (constituteArrayList[l].Stage3Intimation) {\r\n IntimationStage3 = IntimationStage3 + 1\r\n }\r\n if (constituteArrayList[l].stage3_VerifiedDate) {\r\n VerifiedStage3 = VerifiedStage3 + 1\r\n }\r\n if (constituteArrayList[l].Stage1DisbursedDate) {\r\n AssistanceDisbursedArea1 = AssistanceDisbursedArea1 + 1\r\n }\r\n if (constituteArrayList[l].stage1DisbursedAmount1) {\r\n AssistanceDisbursedAmount1 = AssistanceDisbursedAmount1 + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Stage2DisbursedDate) {\r\n AssistanceDisbursedArea2 = AssistanceDisbursedArea2 + 1\r\n }\r\n if (constituteArrayList[l].stage2DisbursedAmount) {\r\n AssistanceDisbursedAmount2 = AssistanceDisbursedAmount2 + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Stage3DisbursedDate) {\r\n AssistanceDisbursedArea3 = AssistanceDisbursedArea3 + 1\r\n }\r\n if (constituteArrayList[l].stage3DisbursedAmount) {\r\n AssistanceDisbursedAmount3 = AssistanceDisbursedAmount3 + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n }\r\n }\r\n const Obj = {\r\n Application_recevied: constituteArrayList.length,\r\n District: constituteArrayList[0].District,\r\n Constituency: constituteArrayList[0].Constituency,\r\n Area: Area,\r\n Approved: statusArray['A'] ? statusArray['A'].length : 0,\r\n Rejected: statusArray['R'] ? statusArray['R'].length : 0,\r\n Pending: statusArray['P'] ? statusArray['P'].length : 0,\r\n Incomplete: (statusArray['CP'] ? statusArray['CP'].length : 0) + (statusArray['RP'] ? statusArray['RP'].length : 0),\r\n Verified_Area_Count: verifiedAreaCount,\r\n Incomplete_Area_count: incompleteAreaCount,\r\n IntimationStage1 : IntimationStage1,\r\n VerifiedStage1: VerifiedStage1,\r\n IntimationStage2 : IntimationStage2,\r\n VerifiedStage2: VerifiedStage2,\r\n IntimationStage3 : IntimationStage3,\r\n VerifiedStage3: VerifiedStage3,\r\n Assistance_Disbursed_Stage1 : AssistanceDisbursedArea1,\r\n Disbursed_Amount_Stage1 : AssistanceDisbursedAmount1,\r\n Assistance_Disbursed_Stage2 : AssistanceDisbursedArea2,\r\n Disbursed_Amount_Stage2 : AssistanceDisbursedAmount2,\r\n Assistance_Disbursed_Stage3 : AssistanceDisbursedArea3,\r\n Disbursed_Amount_Stage3 : AssistanceDisbursedAmount3,\r\n NoofBeneficiary : statusArray['A'] ? statusArray['A'].length : 0,\r\n }\r\n tempConsistenceWisedData.push(Obj)\r\n }\r\n this.disctrictConsistenceWiseData = tempConsistenceWisedData\r\n this.cd.detectChanges();\r\n this.cd.reattach()\r\n }\r\n\r\n }\r\n refreshTable() {\r\n sessionStorage.removeItem('DistrictandconsistencewisedataonclickingApproval');\r\n this.loadData();\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'District', header: 'District' },\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Application_recevied', header: 'Application recevied' },\r\n { field: 'Area', header: 'Area' },\r\n { field: 'Approved', header: 'Verified App' },\r\n { field: 'Verified_Area_Count', header: 'Verified Area' },\r\n { field: 'Incomplete', header: 'Incomplete App' },\r\n { field: 'Rejected', header: 'Rejected App' },\r\n { field: 'Pending', header: 'Pending App' },\r\n { field: 'IntimationStage1', header: 'Intimation for earthwork completion (Stage-1)' },\r\n { field: 'VerifiedStage1', header: 'Verified (Stage-1) Subsidy' },\r\n { field: 'IntimationStage2', header: 'Intimation for civil construction completion (Stage-2)' },\r\n { field: 'VerifiedStage2', header: 'Verified (Stage-2) Subsidy' },\r\n { field: 'IntimationStage3', header: 'Intimation for installation of MI system (Stage-3)' },\r\n { field: 'VerifiedStage3', header: 'Verified (Stage-3) Subsidy' },\r\n { field: 'Assistance_Disbursed_Stage1', header: 'Assistance Disbursed Stage-1' },\r\n { field: 'Disbursed_Amount_Stage1', header: 'Amount' },\r\n { field: 'Assistance_Disbursed_Stage2', header: 'Assistance Disbursed Stage-2' },\r\n { field: 'Disbursed_Amount_Stage2', header: 'Amount' },\r\n { field: 'Assistance_Disbursed_Stage3', header: 'Assistance Disbursed Stage-3' },\r\n { field: 'Disbursed_Amount_Stage3', header: 'Amount' },\r\n { field: '', header: 'No. of Benficiary' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n printForm(appId, statusCode) {\r\n if (appId) {\r\n this.dashboard\r\n .getMIDetailByAppID(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n this.router.navigate(\r\n [\r\n 'department',\r\n 'print',\r\n this.cryptoJsService.Encrypt(appId),\r\n res[0]?.VendorId,\r\n res[0]?.ProgId,\r\n res[0]?.User_ID,\r\n res[0]?.AutoId,\r\n ],\r\n { queryParams: { statusCode: statusCodeEncrypted } }\r\n );\r\n },\r\n error: (err) => {\r\n console.log('error', err);\r\n this.activityRecordService.activityRecord(this.userID, 'View District and consistence wise data on clicking Approval', appId, new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n exportExcelforDistrictandconstituency(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'District': d.District,\r\n 'Constituency': d.Constituency,\r\n 'Application recevied': d.Application_recevied,\r\n 'Area': d.Area,\r\n 'Verified App': d.Approved,\r\n 'Verified Area': d.Verified_Area_Count,\r\n 'Incomplete App': d.Incomplete,\r\n 'Rejected App': d.Rejected,\r\n 'Pending App': d.Pending,\r\n 'Intimation for earthwork completion (Stage-1)': d.IntimationStage1,\r\n 'Verified (Stage-1) Subsidy': d.VerifiedStage1,\r\n 'Intimation for civil construction completion (Stage-2)': d.IntimationStage2,\r\n 'Verified (Stage-2) Subsidy': d.VerifiedStage2,\r\n 'Intimation for installation of MI system (Stage-3)': d.IntimationStage3,\r\n 'Verified (Stage-3) Subsidy': d.VerifiedStage3,\r\n 'Assistance Disbursed Stage-1': d.Assistance_Disbursed_Stage1,\r\n 'Assistance Disbursed Stage-1 Amount': d.Disbursed_Amount_Stage1,\r\n 'Assistance Disbursed Stage-2': d.Assistance_Disbursed_Stage2,\r\n 'Assistance Disbursed Stage-2 Amount': d.Disbursed_Amount_Stage2,\r\n 'Assistance Disbursed Stage-3': d.Assistance_Disbursed_Stage3,\r\n 'Assistance Disbursed Stage-3 Amount': d.Disbursed_Amount_Stage3,\r\n 'No. of Benficiary': d.Disbursed_Amount_Stage3\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n exportExcelforOnFarmerTank(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Water Source\" : d.Source_Name,\r\n 'Application Verified and Eligible for Assistance': d.Verified_Apps,\r\n 'MI Area (In Acre)': d.Verified_Area_Count,\r\n 'Application under process of Installation': d.Under_Process_of_Installation,\r\n 'Area (In Acre)' : d.Under_Process_Area,\r\n 'Assistance disbursed': d.Assistance_Disbursed,\r\n 'Assistance disbursed Area (In Acre)': d.Area,\r\n 'Amount (Rs. In lakh)': d.Disbursed_Amount,\r\n 'No. of Beneficiary': d.Noof_Benficiaries,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n downloadSheetAsPdf1(modelData, filename) {\r\n this.cols = [\r\n { field: 'Source_Name', header: 'Water Source' },\r\n { field: 'Verified_Apps', header: 'Application Verified and Eligible for Assistance' },\r\n { field: 'Verified_Area_Count', header: 'MI Area (In Acre)' },\r\n { field: 'Under_Process_of_Installation', header: 'Application under process of Installation' },\r\n { field: 'Under_Process_Area', header: 'Area (In Acre)' },\r\n { field: 'Assistance_Disbursed', header: 'Assistance disbursed' },\r\n { field: 'Area', header: 'Area (In Acre)' },\r\n { field: 'Disbursed_Amount', header: 'Amount (Rs. In lakh)' },\r\n { field: 'Noof_Benficiaries', header: 'No. of Beneficiary' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'ON_FARMER_WATER_TANK' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'WATER_SOURCE' | translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_VERIFIED' | translate}}\r\n \r\n \r\n \r\n {{'AREA_IN_ACRE' | translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_UNDER_CONSTRUCTION' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AREA_IN_ACRE' | translate}}\r\n \r\n \r\n \r\n {{'ASSISTANCE_DISBURSED' | translate}}\r\n \r\n \r\n \r\n {{'AREA_IN_ACRE' | translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_IN_LAKH' | translate}}\r\n \r\n \r\n \r\n {{'NOOF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Source_Name}}\r\n {{product.Verified_Apps}}\r\n {{product.Verified_Area_Count}}\r\n {{product?.Under_Process_of_Installation}}\r\n {{product?.Under_Process_Area}}\r\n {{product?.Assistance_Disbursed}}\r\n {{product?.Disbursed_Amount}}\r\n {{product?.Disbursed_Area}}\r\n {{product?.Noof_Benficiaries}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{realTimeSoucreListData ? realTimeSoucreListData.length\r\n : 0 }}\r\n {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'DRILL_DOWN_WILL_LEAD_TO_DISTRICT' | translate}}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_RECEIVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APP'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n {{'INCOMPLETE_APP'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APP'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_APP'| translate}}\r\n \r\n \r\n \r\n \r\n {{'INTIMATION_FOR_EARTHWORK'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED1_SUBSIDY'| translate}}\r\n \r\n \r\n \r\n {{'INTIMATION_FOR_CIVIL_CONSTRUCTION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED2_SUBSIDY'| translate}}\r\n \r\n \r\n \r\n {{'INTIMATION_FOR_INSTALLATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED3_SUBSIDY'| translate}}\r\n \r\n \r\n \r\n {{'ASSISTANCE_DISBURSED_STAGE1'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'ASSISTANCE_DISBURSED_STAGE2'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'ASSISTANCE_DISBURSED_STAGE3'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'NOOF_BENEFICIARY'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.District}}\r\n {{product?.Constituency}}\r\n {{product?.Application_recevied }}\r\n {{product?.Area}}\r\n {{product?.Approved}}\r\n {{product?.Verified_Area_Count}}\r\n {{product?.Incomplete}}\r\n {{product?.Rejected}}\r\n {{product?.Pending}}\r\n {{product?.IntimationStage1}}\r\n {{product?.VerifiedStage1}}\r\n {{product?.IntimationStage2}}\r\n {{product?.VerifiedStage2}}\r\n {{product?.IntimationStage3}}\r\n {{product?.VerifiedStage3}}\r\n {{product?.Assistance_Disbursed_Stage1}}\r\n {{product?.Disbursed_Amount_Stage1}}\r\n {{product?.Assistance_Disbursed_Stage2}}\r\n {{product?.Disbursed_Amount_Stage2}}\r\n {{product?.Assistance_Disbursed_Stage3}}\r\n {{product?.Disbursed_Amount_Stage3}}\r\n {{product?.NoofBeneficiary}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{disctrictConsistenceWiseData ?\r\n disctrictConsistenceWiseData.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-report-summary',\r\n templateUrl: './report-summary.component.html',\r\n styleUrls: ['./report-summary.component.scss']\r\n})\r\nexport class ReportSummaryComponent implements OnInit {\r\n\r\n @ViewChild('reportSummaryTable', { static: true })\r\n public reportSummaryTable: Table;\r\n\r\n public reportSummaryTableData: any = [];\r\n public userID: any;\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n\r\n constructor(\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.dashboardSummaryReport(this.selectedYear);\r\n }\r\n );\r\n }\r\n\r\n dashboardSummaryReport(selectedYear: any){\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .dashboardSummaryReport(this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'Application Abstract Report', '', new Date(), 'Success');\r\n this.reportSummaryTableData = res;\r\n console.log(\"reportSummaryTableData\", this.reportSummaryTableData);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'Application Abstract Report', '', new Date(), err);\r\n console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'REPORT_SUMMARY'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_APP_RECIEVED'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_APP_RECIEVED_TODAY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{'INCOMPLETE_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PENDING_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ product.District }}\r\n {{ product.TotalAppRecieved }}\r\n {{ product.TotalAppRecievedToday }}\r\n {{ product.VerifiedApplication }}\r\n {{ product.IncompleteApplication }}\r\n {{ product.RejectedApplication }}\r\n {{ product.PendingApplication }}\r\n {{ product.TotalArea }}\r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ reportSummaryTableData ? reportSummaryTableData.length : 0 }} {{'REPORT_DETAIL_AVAILABLE'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-app-verification-report',\r\n templateUrl: './app-verification-report.component.html',\r\n styleUrls: ['./app-verification-report.component.scss']\r\n})\r\nexport class AppVerificationReportComponent implements OnInit {\r\n\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/app-verification/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/app-verification/district-wise` },\r\n { label: 'User Wise', routerLink: `/${parentRoute}/report/app-verification/user-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/app-verification/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { DistrictWiseModel } from 'src/app/models/department-app-verification.model';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-district-wise-report',\r\n templateUrl: './district-wise-report.component.html',\r\n styleUrls: ['./district-wise-report.component.scss']\r\n})\r\nexport class DistrictWiseReportComponent implements OnInit {\r\n value:any;\r\n districtWise: any[];\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandMiArea:number;\r\n grandMiTotalArea:number;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: DistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n displayMaximizable_rejectedApp:any;\r\n name:any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getAppVerification_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this. calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.districtWise = [];\r\n this.appVerificationModel = [];\r\n this. calculateGrandTotal();\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"Verified MI Area\":d.MIArea,\r\n \"MI Total Area\":d.MITotalArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'MIArea', header: 'Verified MI Area' },\r\n { field: 'MITotalArea', header: 'MI Total Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n // selectFarmerApplication(application) {\r\n // if(application.Scheme_Specific_Id){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // }\r\n // onRowSelect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // onRowUnselect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // calculation(){\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n \r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id, \r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0, \r\n // amt_Disbus_to_Vendor: 0, \r\n // amt_Refund_to_Farmer: 0, \r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor, \r\n // state_share_amt: val.State_Share_Payment_Amount, \r\n // centre_share_amt: val.Center_Share_Payment_Amount, \r\n // }) \r\n // })\r\n // }\r\n calculateGrandTotal(){\r\n this.grandTotalApp=0;\r\n this.grandVerfApp=0;\r\n this.grandReturnProcessApp=0;\r\n this.grandOnTime=0;\r\n this.grandPendingByWeek=0;\r\n this.grandPendingMoreThanWeek=0;\r\n this.grandRegectedApp=0;\r\n this.grandMiArea=0;\r\n this.grandMiTotalArea=0;\r\n for(let districtWiseData of this.districtWise) {\r\n this.grandTotalApp += districtWiseData.TotalApplication;\r\n this.grandVerfApp += districtWiseData.VerifiedApplication;\r\n this.grandReturnProcessApp += districtWiseData.ReturnProcessApplication;\r\n this.grandOnTime += districtWiseData.PendingEarly;\r\n this.grandPendingByWeek += districtWiseData.Pending_1Week;\r\n this.grandPendingMoreThanWeek += districtWiseData.Pending_Morethan_1Weeks;\r\n this.grandRegectedApp += districtWiseData.RejectedApplication;\r\n this.grandMiArea += districtWiseData.MIArea;\r\n this.grandMiTotalArea += districtWiseData.MITotalArea;\r\n }\r\n }\r\n showMaximizableDialog(value:any,status:any) {\r\n \r\n this.name=status;\r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"AppVerification\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n status:status,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n} \r\nshowMaximizableDialog_totalApp(value:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"AppVerification\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_totalApp = true;\r\n\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\nshowMaximizableDialog_pending(value:any,duration:any) {\r\n \r\n if(duration=='early'){\r\n this.pendingType='On Time'\r\n }\r\n if(duration=='1Week'){\r\n this.pendingType='Pending by Week'\r\n }\r\n if(duration=='morethan_1Week'){\r\n this.pendingType='Pending more than one Week' \r\n }\r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"AppVerification\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n duration:duration,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_pendingApp = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\nshowMaximizableDialog_rejected(value:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"AppVerification\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_rejectedApp = true;\r\n \r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_MI_AREA'| translate}}\r\n \r\n \r\n \r\n {{'MI_TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.VerifiedApplication}}\r\n {{districtWise.ReturnProcessApplication}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.RejectedApplication}}\r\n {{districtWise.MIArea}}\r\n {{districtWise.MITotalArea}}\r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalApp| number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRegectedApp | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n {{grandMiTotalArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport saveAs from 'file-saver';\r\nimport { MonthWiseModel } from 'src/app/models/department-app-verification.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-month-wise-report',\r\n templateUrl: './month-wise-report.component.html',\r\n styleUrls: ['./month-wise-report.component.scss']\r\n})\r\nexport class MonthWiseReportComponent implements OnInit {\r\n\r\n value:any;\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n regectedApp:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n monthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: MonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n displayMaximizable_rejectedApp:any;\r\n name:any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n \r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n \r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n // onRowSelect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // onRowUnselect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // calculation(){\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n \r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id, \r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0, \r\n // amt_Disbus_to_Vendor: 0, \r\n // amt_Refund_to_Farmer: 0, \r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor, \r\n // state_share_amt: val.State_Share_Payment_Amount, \r\n // centre_share_amt: val.Center_Share_Payment_Amount, \r\n // }) \r\n // })\r\n // }\r\n // selectFarmerApplication(application) {\r\n // if(application.Scheme_Specific_Id){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // }\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService.getAppVerification_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (Month Wise)', '', new Date(), 'Success');\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data; \r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n else{\r\n this.monthWise =[] ;\r\n this.appVerificationModel =[] ; \r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"MI Area\": d.MIArea,\r\n\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'MIArea', header: 'MI Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.regectedApp=0;\r\n this.miArea=0;\r\n \r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.VerifiedApplication}}\r\n {{monthWise.ReturnProcessApplication}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.RejectedApplication}}\r\n {{monthWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{regectedApp | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRegectedApp | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { UserWiseModel } from 'src/app/models/department-app-verification.model';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-user-wise-report',\r\n templateUrl: './user-wise-report.component.html',\r\n styleUrls: ['./user-wise-report.component.scss']\r\n})\r\nexport class UserWiseReportComponent implements OnInit {\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n regectedApp:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempUserWise: any[];\r\n userWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: UserWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n displayMaximizable_rejectedApp:any;\r\n userName:any;\r\n name:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n \r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getAppVerification_UserWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (User Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.userWise = data;\r\n this.appVerificationModel = data;\r\n this.tempUserWise=data;\r\n this.appVerificationModel = data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.userWise = [];\r\n this.appVerificationModel =[] ;\r\n this.tempUserWise=[];\r\n this.appVerificationModel = [];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (User Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"User ID\" : d.UserID,\r\n \"Level ID\" : d.Level_ID,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"MI Area\": d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'UserID', header: 'User ID'},\r\n {field: 'Level_ID', header: 'Level ID'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'MIArea', header: 'MI Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n // selectFarmerApplication(application) {\r\n // if(application.Scheme_Specific_Id){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // }\r\n // onRowSelect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // onRowUnselect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // calculation(){\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n \r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id, \r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0, \r\n // amt_Disbus_to_Vendor: 0, \r\n // amt_Refund_to_Farmer: 0, \r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor, \r\n // state_share_amt: val.State_Share_Payment_Amount, \r\n // centre_share_amt: val.Center_Share_Payment_Amount, \r\n // }) \r\n // })\r\n // }\r\n tableDataFunction(event: any) {\r\n this.tempUserWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n // console.log(event);\r\n }\r\n calculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.regectedApp=0;\r\n this.miArea=0; \r\n for(let i=this.arrayIndex ;this.tempUserWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'USER_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THAN_A_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{userWise.UserID}}\r\n {{userWise.Level_ID}}\r\n {{userWise.TotalApplication}}\r\n {{userWise.VerifiedApplication}}\r\n {{userWise.ReturnProcessApplication}}\r\n {{userWise.PendingEarly}}\r\n {{userWise.Pending_1Week}}\r\n {{userWise.Pending_Morethan_1Weeks}}\r\n {{userWise.RejectedApplication}}\r\n {{userWise.MIArea}} \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { VendorWiseModel } from 'src/app/models/department-app-verification.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-vendor-wise-report',\r\n templateUrl: './vendor-wise-report.component.html',\r\n styleUrls: ['./vendor-wise-report.component.scss']\r\n})\r\nexport class VendorWiseReportComponent implements OnInit {\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n regectedApp:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n vendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: VendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n displayMaximizable_rejectedApp:any;\r\n vendorName:any;\r\n name:any;\r\n routePath:any;\r\n subjectSub:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n selectedYear:any\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n\r\n \r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub =this.reportsService.getAppVerification_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (Vendor Wise)', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.tempVendorWise=data;\r\n this.appVerificationModel = data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n else{\r\n this.vendorWise = [];\r\n this.tempVendorWise=[];\r\n this.appVerificationModel = [];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"Mi Area\": d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'MIArea', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n // selectFarmerApplication(application) {\r\n // if(application.Scheme_Specific_Id){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.Scheme_Specific_Id)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.Scheme_Specific_Id), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // }\r\n // onRowSelect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Selected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // onRowUnselect(event) {\r\n // this.calculation();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Product Unselected',\r\n // detail: event.data.name,\r\n // });\r\n // }\r\n // calculation(){\r\n // this.filteredData = [];\r\n // // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n \r\n // this.totalSelectedApp = this.filteredDataForExport.length;\r\n // this.filteredDataForExport.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // this.filteredDataForExport.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.Scheme_Specific_Id, \r\n // programID: val.ProgramID,\r\n // subsidy_Amt: 0, \r\n // amt_Disbus_to_Vendor: 0, \r\n // amt_Refund_to_Farmer: 0, \r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor, \r\n // state_share_amt: val.State_Share_Payment_Amount, \r\n // centre_share_amt: val.Center_Share_Payment_Amount, \r\n // }) \r\n // })\r\n // }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n // console.log(event);\r\n }\r\n calculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.regectedApp=0;\r\n this.miArea=0; \r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THAN_A_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.VerifiedApplication}}\r\n {{vendorWise.ReturnProcessApplication}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.RejectedApplication}}\r\n {{vendorWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{regectedApp | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRegectedApp | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { MonthWiseModel } from 'src/app/models/department-app-verification.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-atal-user',\r\n templateUrl: './atal-user.component.html',\r\n styleUrls: ['./atal-user.component.scss']\r\n})\r\nexport class AtalUserComponent implements OnInit {\r\n\r\n\r\n public atalUserData: any = [];\r\n public filterdDataForExport: any = [];\r\n \r\n \r\n appVerificationItems: MenuItem[];\r\n \r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n\r\n public userID: any;\r\n public routePath: any;\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n constructor(private reportsService:ReportsService,\r\n private messageService:MessageService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.loadData();\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n } \r\n );\r\n\r\n \r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.filterdDataForExport, \"ATAL_BHUJAL_USER_REPORT\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filterdDataForExport, \"7500_DEMO_REPORT\");\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService.getAtalReport(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Atal Bhujal User Report', '', new Date(), 'Success');\r\n \r\n if (data?.length > 0) {\r\n this.atalUserData = data;\r\n this.filterdDataForExport = data;\r\n }else if(data?.length == 0) {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.atalUserData = [];\r\n this.filterdDataForExport = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Atal Bhujal User Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n 'District': d.District,\r\n '':'',\r\n\r\n 'NoOfCases (Applications)': d.NoOfCases,\r\n 'NoOfApprovedCases (Applications)': d.NoOfApprovedCases, \r\n 'TotalArea (Applications)': d.TotalArea,\r\n ' ':'',\r\n 'NoOfCases (Estimation)': d.NoOfCasesEst,\r\n 'NoOfApprovedCases (Estimation)': d.NoOfApprovedCasesEstimation,\r\n 'TotalArea (Estimation)': d.TotalAreaEST,\r\n 'Amount (Estimation)': d.AmountEst,\r\n ' ':'',\r\n 'NoOfCases (PV)': d.NoOfCasesPV,\r\n 'NoOfApprovedCases (PV)': d.NoOfApprovedCasesPV,\r\n 'TotalArea (PV)': d.TotalAreaPV,\r\n 'Amount (PV)': d.AmountPV,\r\n ' ':'',\r\n 'NoOfCasesSubsidy (Subsidy Disbusment)': d.NoOfCasesSubsidy,\r\n 'ApprovedSubsidyApps (Subsidy Disbusment)': d.ApprovedSubsidyApps,\r\n 'TotalAreaSubsidy (Subsidy Disbusment)': d.TotalAreaSubsidy,\r\n 'AmountSubsidy (Subsidy Disbusment)': d.AmountSubsidy,\r\n 'SubsidyPaid (Subsidy Disbusment)': d.SubsidyPaid,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // {field: 'Date', header: 'Date'},\r\n // { field: 'ChallanDeposited', header: 'Challan Deposited' },\r\n // { field: 'AmountDeposited', header: 'Amount Deposited' },\r\n // { field: 'ChallanRejected', header: 'Challan Rejected' },\r\n // { field: 'AmountRejected', header: 'Amount Rejected' },\r\n // ];\r\n // this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n // import(\"jspdf\").then(jsPDF => {\r\n // import(\"jspdf-autotable\").then(x => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // })\r\n // })\r\n // }\r\n\r\n tableDataFunction(event: any) {\r\n this.filterdDataForExport = event.filteredValue\r\n // this.tempDayWise=event.filteredValue\r\n // //console.log(event);\r\n // this.arrayIndex=0;\r\n // // console.log(this.vendorWise);\r\n // this.calculateTotalApp() ;\r\n }\r\n\r\n onPage(event:any) {\r\n // this.arrayIndex=event.first;\r\n // this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\n\r\n// calculateTotalApp() {\r\n// this.totalChallanDeposited=0;\r\n// this.totalAmountDeposited=0;\r\n// this.totalChallanRejected=0;\r\n// this.totalAmountRejected=0;\r\n \r\n// for(let i=this.arrayIndex ;this.tempDayWise.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'ATAL_BHUJAL_USER_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n APPLICATIONS\r\n \r\n\r\n \r\n\r\n \r\n ESTIMATE\r\n \r\n \r\n\r\n \r\n\r\n \r\n PV\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n SUBSIDY DISBUSMENT\r\n \r\n \r\n \r\n\r\n \r\n {{'District'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_RS'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_RS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_RS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PAID'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{data.District}}\r\n \r\n\r\n {{data.NoOfCases}}\r\n {{data.NoOfApprovedCases}}\r\n {{data.TotalArea}}\r\n\r\n \r\n \r\n {{data.NoOfCasesEst}}\r\n {{data.NoOfApprovedCasesEstimation}}\r\n {{data.TotalAreaEST}}\r\n {{data.AmountEst}}\r\n\r\n \r\n \r\n \r\n {{data.NoOfCasesPV}}\r\n {{data.NoOfApprovedCasesPV}}\r\n {{data.TotalAreaPV}}\r\n {{data.AmountPV}}\r\n\r\n \r\n \r\n \r\n {{data.NoOfCasesSubsidy}}\r\n {{data.ApprovedSubsidyApps}}\r\n {{data.TotalAreaSubsidy}}\r\n {{data.AmountSubsidy}}\r\n {{data.SubsidyPaid}}\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { BoqDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-boq-district-wise-report',\r\n templateUrl: './boq-district-wise-report.component.html',\r\n styleUrls: ['./boq-district-wise-report.component.scss']\r\n})\r\nexport class BoqDistrictWiseReportComponent implements OnInit {\r\n value:any;\r\n districtWise: any[];\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandBoqAmount:number;\r\n grandMiArea:number;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: BoqDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n drilldownDetails:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getBoq_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this.calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.districtWise = [];\r\n this.appVerificationModel = [];\r\n this.calculateGrandTotal();\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"BOQ Amount\": d.BOQAmount,\r\n \"Mi Area\":d.Mi_Area,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n ); \r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'BOQAmount', header: 'BOQ Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n calculateGrandTotal(){\r\n this.grandTotalApp=0;\r\n this.grandVerfApp=0;\r\n this.grandBoqAmount=0;\r\n this.grandMiArea=0;\r\n for(let districtWiseData of this.districtWise) {\r\n this.grandTotalApp += districtWiseData.TotalApplication;\r\n this.grandVerfApp += districtWiseData.VerifiedApplication;\r\n this.grandBoqAmount += districtWiseData.BOQAmount;\r\n this.grandMiArea += districtWiseData.Mi_Area;\r\n }\r\n }\r\n showMaximizableDialog(value:any,status:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"BOQ\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n status:status,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\nshowMaximizableDialog_totalApp(value:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"BOQ\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_totalApp = true;\r\n\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\n\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.VerifiedApplication}}\r\n {{districtWise.BOQAmount}}\r\n {{districtWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandBoqAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { BoqMiTypeWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-boq-mi-type-report',\r\n templateUrl: './boq-mi-type-report.component.html',\r\n styleUrls: ['./boq-mi-type-report.component.scss']\r\n})\r\nexport class BoqMiTypeReportComponent implements OnInit {\r\n totalApp:number;\r\n verfApp:number;\r\n boqAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandBoqAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMiType: any[];\r\n miType: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: BoqMiTypeWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n drilldownDetails:any;\r\n value:any\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"MiType_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"MiType_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getBoq_MiType_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (MI Type)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miType = data;\r\n this.tempMiType=data;\r\n this.appVerificationModel = data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.miType = [];\r\n this.tempMiType=[];\r\n this.appVerificationModel = [];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (MI Type)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"MIType\" : d.MIType,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"BOQAmount\" : d.BOQAmount,\r\n \"Mi_Area\" : d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n {field: 'BOQAmount', header: 'BOQ Amount'},\r\n {field: 'Mi_Area', header: 'Mi Area'},\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMiType=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n // console.log(event);\r\n }\r\n calculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.boqAmount=0;\r\n this.miArea=0; \r\n for(let i=this.arrayIndex ;this.tempMiType.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MI_TYPE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'MI_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{miType.District}}\r\n {{miType.Block}}\r\n {{miType.MIType}}\r\n {{miType.TotalApplication}}\r\n {{miType.VerifiedApplication}}\r\n {{miType.BOQAmount}}\r\n {{miType.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n \r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{boqAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandBoqAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BoqMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-boq-month-wise-report',\r\n templateUrl: './boq-month-wise-report.component.html',\r\n styleUrls: ['./boq-month-wise-report.component.scss']\r\n})\r\nexport class BoqMonthWiseReportComponent implements OnInit {\r\n value:any;\r\n totalApp:number;\r\n verfApp:number;\r\n boqAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandBoqAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n monthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: BoqMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n drilldownDetails:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getBoq_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (Month Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.tempMonthWise=data;\r\n this.appVerificationModel = data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.monthWise =[] ;\r\n this.tempMonthWise=[];\r\n this.appVerificationModel = [];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"BOQ Amount\": d.BOQAmount,\r\n \"Mi Area\":d.Mi_Area,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n ); \r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'BOQAmount', header: 'BOQ Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n // console.log(event);\r\n }\r\n calculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.boqAmount=0;\r\n this.miArea=0; \r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.VerifiedApplication}}\r\n {{monthWise.BOQAmount}}\r\n {{monthWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{boqAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandBoqAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-boq-report',\r\n templateUrl: './boq-report.component.html',\r\n styleUrls: ['./boq-report.component.scss']\r\n})\r\nexport class BOQReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/boq/boq-month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/boq/boq-district-wise` },\r\n { label: 'MI Type', routerLink: `/${parentRoute}/report/boq/boq-mi-type` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/boq/boq-vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { BoqVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-boq-vendor-wise-report',\r\n templateUrl: './boq-vendor-wise-report.component.html',\r\n styleUrls: ['./boq-vendor-wise-report.component.scss']\r\n})\r\nexport class BoqVendorWiseReportComponent implements OnInit {\r\n totalApp:number;\r\n verfApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n boqAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandBoqAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n vendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: BoqVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n value:any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n drilldownDetails:any;\r\n vendorName:any;\r\n displayMaximizable_pendingApp:boolean;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getBoq_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (Vendor Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.tempVendorWise=data;\r\n this.appVerificationModel = data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.vendorWise = [];\r\n this.tempVendorWise=[];\r\n this.appVerificationModel = [];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'BOQ Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"BOQ Amount\": d.BOQAmount,\r\n \"Mi Area\": d.Mi_Area,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'BOQAmount', header: 'BOQ Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n // console.log(event);\r\n }\r\n calculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.boqAmount=0;\r\n this.miArea=0; \r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THAN_A_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.VerifiedApplication}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.BOQAmount}}\r\n {{vendorWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{boqAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandBoqAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { CanalAndTubewellBased } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-canal-and-tube-well-based-report',\r\n templateUrl: './canal-and-tube-well-based-report.component.html',\r\n styleUrls: ['./canal-and-tube-well-based-report.component.scss']\r\n})\r\nexport class CanalAndTubeWellBasedReportComponent implements OnInit {\r\n\r\n canalAndTubeWell: any[];\r\n totalAppReceived:number;\r\n totalArea:number;\r\n totalVerfApp:number;\r\n totalVerfArea:number;\r\n totalEstApproved:number;\r\n totalEstPending:number;\r\n totalBoqUploaded:number;\r\n totalBoqPending:number;\r\n totalPvApproved:number;\r\n totalPvPending:number;\r\n totalDmicadaApproved:number;\r\n totalDmicadaPending:number;\r\n grandtotalAppReceived:number;\r\n grandTotalArea:number;\r\n grandTotalVerfApp:number;\r\n grandTotalVerfArea:number;\r\n grandTotalEstApproved:number;\r\n grandTotalEstPending:number;\r\n grandTotalBoqUploaded:number;\r\n grandTotalBoqPending:number;\r\n grandTotalPvApproved:number;\r\n grandTotalPvPending:number;\r\n grandTotalDmicadaApproved:number;\r\n grandTotalDmicadaPending:number;\r\n arrayIndex:number;\r\n tempcanalAndTubeWell: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: CanalAndTubewellBased[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Stage3_Subsidy_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Stage3_Subsidy_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getCanalAndTubewell_BasedReport(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Canal and TubeWell Based Report', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.canalAndTubeWell = data;\r\n this.appVerificationModel = data;\r\n this.tempcanalAndTubeWell=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.canalAndTubeWell =[] ;\r\n this.appVerificationModel =[] ;\r\n this.tempcanalAndTubeWell=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Canal and TubeWell Based Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"Water Source\" : d.Water_Source,\r\n \"Application Recieved\" : d.ApplicationRecieved,\r\n \"Total Area\": d.TotalArea,\r\n \"Verified Application\": d.Verified_Application,\r\n \"App Verified Area\": d.App_Verified_Area,\r\n \"estimate Approved\": d.estimateApproved,\r\n \"estimate Pending\": d.estimatePending,\r\n \"BOQ Uploaded\": d.BOQ_Uploaded,\r\n \"BOQ Pending\": d.BOQ_Pending,\r\n \"PV Approved\": d.PV_Approved,\r\n \"PV Pending\": d.PV_Pending,\r\n \"DMICADA Approved\": d.DMICADA_Approved,\r\n \"DMICADA Pending\": d.DMICADA_Pending,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Water_Source', header: 'Water Source'},\r\n {field: 'ApplicationRecieved', header: 'Application Recieved'},\r\n {field: 'TotalArea', header: 'Total Area' },\r\n {field: 'Verified_Application', header: 'Verified Application' },\r\n {field: 'App_Verified_Area', header: 'App Verified Area'},\r\n {field: 'estimateApproved', header: 'estimate Approved'},\r\n {field: 'estimatePending', header: 'estimate Pending'},\r\n {field: 'BOQ_Uploaded', header: 'BOQ Uploaded'},\r\n {field: 'BOQ_Pending', header: 'BOQ Pending'},\r\n {field: 'PV_Approved', header: 'PV Approved'},\r\n {field: 'PV_Pending', header: 'PV Pending'},\r\n {field: 'DMICADA_Approved', header: 'DMICADA Approved'},\r\n {field: 'DMICADA_Pending', header: 'DMICADA Pending'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempcanalAndTubeWell=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalAppReceived=0;\r\n this.totalArea=0;\r\n this.totalVerfApp=0;\r\n this.totalVerfArea=0;\r\n this.totalEstApproved=0;\r\n this.totalEstPending=0;\r\n this.totalBoqUploaded=0;\r\n this.totalBoqPending=0;\r\n this.totalPvApproved=0;\r\n this.totalPvPending=0;\r\n this.totalDmicadaApproved=0;\r\n this.totalDmicadaPending=0;\r\n \r\n for(let i=this.arrayIndex ;this.tempcanalAndTubeWell.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'CANAL_AND_TUBE_WELL_BASED_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'WATER_SOURCE'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_RECIEVED'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'APP_VERIFIED_AREA'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATE_APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATE_PENDING'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_UPLOADED'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_PENDING'| translate}}\r\n \r\n \r\n \r\n {{'PV_APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'PV_PENDING'| translate}}\r\n \r\n \r\n \r\n {{'DMICADA_APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'DMICADA_PENDING'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{canalAndTubeWell.Water_Source}}\r\n {{canalAndTubeWell.ApplicationRecieved}}\r\n {{canalAndTubeWell.TotalArea | number:'1.0-2'}}\r\n {{canalAndTubeWell.Verified_Application}}\r\n {{canalAndTubeWell.App_Verified_Area | number:'1.0-2'}}\r\n {{canalAndTubeWell.estimateApproved}}\r\n {{canalAndTubeWell.estimatePending}}\r\n {{canalAndTubeWell.BOQ_Uploaded}}\r\n {{canalAndTubeWell.BOQ_Pending}}\r\n {{canalAndTubeWell.PV_Approved}}\r\n {{canalAndTubeWell.PV_Pending}}\r\n {{canalAndTubeWell.DMICADA_Approved}}\r\n {{canalAndTubeWell.DMICADA_Pending}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalAppReceived | number:'1.0-2'}}\r\n {{totalArea | number:'1.0-2'}}\r\n {{totalVerfApp | number:'1.0-2'}}\r\n {{totalVerfArea | number:'1.0-2'}}\r\n {{totalEstApproved | number:'1.0-2'}}\r\n {{totalEstPending | number:'1.0-2'}}\r\n {{totalBoqUploaded | number:'1.0-2'}}\r\n {{totalBoqPending | number:'1.0-2'}}\r\n {{totalPvApproved | number:'1.0-2'}}\r\n {{totalPvPending | number:'1.0-2'}}\r\n {{totalDmicadaApproved | number:'1.0-2'}}\r\n {{totalDmicadaPending | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandtotalAppReceived | number:'1.0-2'}}\r\n {{grandTotalArea | number:'1.0-2'}}\r\n {{grandTotalVerfApp | number:'1.0-2' }}\r\n {{grandTotalVerfArea | number:'1.0-2'}}\r\n {{grandTotalEstApproved | number:'1.0-2'}}\r\n {{grandTotalEstPending | number:'1.0-2'}}\r\n {{grandTotalBoqUploaded | number:'1.0-2'}}\r\n {{grandTotalBoqPending | number:'1.0-2'}}\r\n {{grandTotalPvApproved | number:'1.0-2'}}\r\n {{grandTotalPvPending | number:'1.0-2'}}\r\n {{grandTotalDmicadaApproved | number:'1.0-2'}}\r\n {{grandTotalDmicadaPending | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-challan-drill-down-report',\r\n templateUrl: './challan-drill-down-report.component.html',\r\n styleUrls: ['./challan-drill-down-report.component.scss']\r\n})\r\nexport class ChallanDrillDownReportComponent implements OnInit {\r\n\r\n @Input() drilldownDetails: any;\r\n drillDownData:any;\r\n drillDownDataStatus=false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n \r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n userId:any;\r\n isAssignedDate=false;\r\n isChallanAmount=false;\r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n // console.log(this.drilldownDetails,\"drilldownDetailsdrilldownDetailsdrilldownDetailsdrilldownDetails\")\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus=true;\r\n \r\n if(this.drilldownDetails.actionType!=\"challanRejected\"){\r\n let sub= this.reportsService.getChallanCompletedApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.status,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n if(e.Assigned_Date){\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n }\r\n \r\n })\r\n if(data[0].hasOwnProperty('Assigned_Date')){\r\n this.isAssignedDate=true\r\n } \r\n else{\r\n this.isAssignedDate=false\r\n }\r\n if(data[0].hasOwnProperty('ChallanAmount')){\r\n this.isChallanAmount=true\r\n } \r\n else{\r\n this.isChallanAmount=false\r\n }\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub= this.reportsService.getChallanTotalApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.status,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n if(e.Assigned_Date){\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n }\r\n \r\n })\r\n if(data[0].hasOwnProperty('Assigned_Date')){\r\n this.isAssignedDate=true\r\n } \r\n else{\r\n this.isAssignedDate=false\r\n }\r\n if(data[0].hasOwnProperty('ChallanAmount')){\r\n this.isChallanAmount=true\r\n } \r\n else{\r\n this.isChallanAmount=false\r\n }\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n } \r\n \r\n \r\n \r\n \r\n \r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n if(d.hasOwnProperty('Level_Id')){\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'component ':d.componentId,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.years,\r\n 'Area':d.Area\r\n }\r\n }\r\n if(d.hasOwnProperty('Level_ID')){\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_ID, \r\n 'UserId':d.UserID,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'component ':d.componentId,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.years,\r\n 'Area':d.Area\r\n }\r\n }\r\n \r\n \r\n \r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppId', header: 'AppId'},\r\n { field: 'ActionId', header: 'Action' },\r\n { field: 'Level_Id', header: 'Level_Id' },\r\n { field: 'UserId', header: 'UserId' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Action_Date_filter', header: 'Action Date' },\r\n { field: 'componentId', header: 'component' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Months', header: 'Months' },\r\n { field: 'years', header: 'Year' },\r\n { field: 'Area', header: 'Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'YEARS'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_AMT_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData.AppId}}\r\n {{drillDownData.ActionID}}\r\n {{drillDownData.ActionId}}\r\n {{drillDownData.Level_ID}}\r\n {{drillDownData.Level_Id}}\r\n {{drillDownData.UserID}}\r\n {{drillDownData.UserId}}\r\n {{drillDownData.Status}}\r\n {{drillDownData.Assigned_Date_filter}}\r\n {{drillDownData.Action_Date_filter}}\r\n {{drillDownData.ChallanAmount}}\r\n {{drillDownData.district}}\r\n {{drillDownData.District}}\r\n \r\n {{drillDownData.Months}}\r\n {{drillDownData.Years}}\r\n {{drillDownData.Area}}\r\n {{drillDownData.FarmerShare_to_Vendor}}\r\n {{drillDownData.Subsidy_to_Vendor}}\r\n {{drillDownData.Subsidy_Amt_Farmer}}\r\n {{drillDownData.Refund_to_Farmer}}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { first, shareReplay } from 'rxjs/operators';\r\nimport saveAs from 'file-saver';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-challan-reconciliation-day-drill-down-report',\r\n templateUrl: './challan-reconciliation-day-drill-down-report.component.html',\r\n styleUrls: ['./challan-reconciliation-day-drill-down-report.component.scss']\r\n})\r\nexport class ChallanReconciliationDayDrillDownReportComponent implements OnInit {\r\n\r\n @Input() drilldownDetails: any;\r\n public userId: any;\r\n public subjectSub: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public selectedYear: any;\r\n public appVerificationItems: MenuItem[];\r\n public drillDownData: any = [];\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJs: CryptoJsService,\r\n private service: BaseService,\r\n private reportsService: ReportsService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.userId = sessionStorage.getItem('User_name_while_login')\r\n this.userId = encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n // console.log(this.drilldownDetails,\"drilldownDetailsdrilldownDetailsdrilldownDetailsdrilldownDetails\")\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router = this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear = res\r\n\r\n this.loadData(this.selectedYear)\r\n }\r\n\r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadData(selectedYear: any) {\r\n // this.loader.start();\r\n this.loading = true;\r\n\r\n let reqBody = {\r\n \"actionType\": this.drilldownDetails.actionType,\r\n // \"userId\": this.userId,\r\n \"status\": this.drilldownDetails.status,\r\n \"filterType\": this.drilldownDetails.filterType,\r\n \"value\": this.drilldownDetails.value,\r\n \"miType\": this.drilldownDetails.MIType,\r\n \"financialyear\": selectedYear\r\n }\r\n\r\n let sub = this.reportsService.getChallanReconsillationrptDrilldown(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n }\r\n else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n exportExcel(modelData, filename) {\r\n\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'AppId': d.AppID,\r\n 'Program Name': d.Program_Name,\r\n 'District': d.District,\r\n 'Block': d.Block,\r\n 'Village': d.Village,\r\n }\r\n })\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n
\r\n
{{ 'Drill Down Report' }}
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{data.AppID}}\r\n {{data.Program_Name}}\r\n {{data.District}}\r\n {{data.Block}}\r\n {{data.Village}}\r\n \r\n \r\n\r\n\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { MonthWiseModel } from 'src/app/models/department-app-verification.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-challan-reconciliation-day-report',\r\n templateUrl: './challan-reconciliation-day-report.component.html',\r\n styleUrls: ['./challan-reconciliation-day-report.component.scss'],\r\n providers: [DatePipe]\r\n})\r\nexport class ChallanReconciliationDayReportComponent implements OnInit {\r\n\r\n \r\n \r\n dayWise: any[];\r\n totalChallanDeposited:number;\r\n totalAmountDeposited:number;\r\n totalChallanRejected:number;\r\n totalAmountRejected:number;\r\n grandTotalChallanDeposited:number;\r\n grandTotalAmountDeposited:number;\r\n grandTotalChallanRejected:number;\r\n grandTotalAmountRejected:number;\r\n tempDayWise: any[];\r\n arrayIndex:number;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: MonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n\r\n public userID: any;\r\n public value:any;\r\n public drilldownDetails:any;\r\n public challanName:any;\r\n public displayMaximizable:boolean;\r\n public status:any;\r\n\r\n public subjectSub:any;\r\n public selectedYear:any\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n\r\n constructor(private reportsService:ReportsService,\r\n private messageService:MessageService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private datePipe: DatePipe,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.loadData();\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n } \r\n );\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Challan_reconciliation_day_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Challan_reconciliation_day_report\");\r\n }\r\n },\r\n ];\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService.getChallan_Reconciliation_day_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Challan Reconciliation Report (day Wise)', '', new Date(), 'Success');\r\n data.forEach(e=>{\r\n if(e.Date.length>0){\r\n e.Date_sort=new Date(e.Date);\r\n e.Date_filter=e.Date_sort.toString().substr(4,11)\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n })\r\n \r\n \r\n if (data?.length > 0) {\r\n this.dayWise = data;\r\n this.appVerificationModel = data;\r\n this.tempDayWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n }\r\n else if(data?.length == 0) {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.dayWise = [];\r\n this.appVerificationModel = [];\r\n this.tempDayWise = [];\r\n this.arrayIndex = 0;\r\n this.calculateGrandTotal();\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Date\" : d.Date,\r\n \"Day\": d.DayOfWeekName,\r\n \"Challan Deposited\": d.ChallanDeposited,\r\n \"Amount Deposited\": d.AmountDeposited,\r\n \"Challan Rejected\": d.ChallanRejected,\r\n \"Amount Rejected\": d.AmountRejected,\r\n\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Date', header: 'Date'},\r\n {field: 'DayOfWeekName', header: 'Day'},\r\n { field: 'ChallanDeposited', header: 'Challan Deposited' },\r\n { field: 'AmountDeposited', header: 'Amount Deposited' },\r\n { field: 'ChallanRejected', header: 'Challan Rejected' },\r\n { field: 'AmountRejected', header: 'Amount Rejected' },\r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n tableDataFunction(event: any) {\r\n this.tempDayWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalChallanDeposited=0;\r\n this.totalAmountDeposited=0;\r\n this.totalChallanRejected=0;\r\n this.totalAmountRejected=0;\r\n \r\n for(let i=this.arrayIndex ;this.tempDayWise.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'CHALLAN_RECONCILIATION_DAY_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'DATE'| translate}}\r\n \r\n \r\n \r\n {{'DAY'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_REJECTED'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_REJECTED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{dayWise?.Date_filter}}\r\n {{dayWise?.DayOfWeekName}}\r\n {{dayWise.ChallanDeposited}}\r\n \r\n {{dayWise.AmountDeposited}}\r\n {{dayWise.ChallanRejected}}\r\n \r\n {{dayWise.AmountRejected}}\r\n\r\n \r\n \r\n \r\n \r\n Total\r\n {{totalChallanDeposited | number:'1.0-2'}}\r\n {{totalAmountDeposited | number:'1.0-2'}}\r\n {{totalChallanRejected | number:'1.0-2'}}\r\n {{totalAmountRejected | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalChallanDeposited | number:'1.0-2'}}\r\n {{grandTotalAmountDeposited | number:'1.0-2'}}\r\n {{grandTotalChallanRejected | number:'1.0-2'}}\r\n {{grandTotalAmountRejected | number:'1.0-2'}}\r\n \r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup , Validators} from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TankAbstract } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-challan-report-by-vendor-id',\r\n templateUrl: './challan-report-by-vendor-id.component.html',\r\n styleUrls: ['./challan-report-by-vendor-id.component.scss']\r\n})\r\n\r\nexport class ChallanReportByVendorIdComponent implements OnInit {\r\n\r\n tankAbstract: any[];\r\n tankApp: any;\r\n tankCoverageArea:any;\r\n tankVerifiedApp:any;\r\n tankRpApp:any;\r\n tankRejectedApp:any;\r\n tankVerifiedCoverageApp:any;\r\n grandTankApp:number;\r\n grandTankCoverageArea:number;\r\n grandTankVerifiedApp:number;\r\n grandTankRpApp:number;\r\n grandTankRejectedApp:number;\r\n grandTankVerifiedCoverageApp:number;\r\n arrayIndex:number;\r\n tempTankAbstract: any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: TankAbstract[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n drilldownDetails:any;\r\n public userID: any;\r\n value:any;\r\n displayMaximizable_all:any\r\n displayMaximizable_verified:any\r\n displayMaximizable_rp:any\r\n displayMaximizable_rejected:any\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public applicationForm: FormGroup;\r\n public isSubmitted: boolean = false;\r\n vendorId:any\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private fb: FormBuilder\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.vendorId=sessionStorage.getItem('officeCode');\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n // this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Challan_report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"Challan_report\");\r\n // }\r\n // },\r\n ];\r\n this.applicationForm = this.fb.group({\r\n vendorId: ['', Validators.required],\r\n programId: [''],\r\n });\r\n this.loadData(this.vendorId)\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(id:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getChallanReportByVendorId(id)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data.length)\r\n if (data?.length > 0) {\r\n this.tankAbstract = data;\r\n this.appVerificationModel = data;\r\n this.tempTankAbstract=data;\r\n this.arrayIndex=0;\r\n // this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.tankAbstract = [];\r\n this.appVerificationModel = [];\r\n this.tempTankAbstract=[];\r\n this.arrayIndex=0;\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"AppID\" : d.AppID,\r\n \"Program Name\" : d.Program_Name,\r\n \"Challan Type\": d.ChallanType,\r\n 'Challan Amount': d.ChallanAmount,\r\n 'Deposit Amount': d.Deposit_Amount,\r\n 'UTR': d.UTR,\r\n 'Account Number': d.FromAccountNumber,\r\n 'Bank Name': d.FromBankName,\r\n 'Payment Date': d.PaymentAcknowledgedByBankOn,\r\n 'Reference ID': d.ReferenceID,\r\n 'Remitter Name': d.RemitterName,\r\n 'Transfer Mode': d.TransferMode,\r\n \"Farmer Name\": d.farmerName,\r\n \"District\": d.District,\r\n \"Block\": d.Block,\r\n \"Village\": d.Village,\r\n \"Applicant type\": d.Applicant_type,\r\n \"Vendor Acknowledgement Status\": d.VendorAcknowledgmentStatus,\r\n \"Bank Acknowledgement Status\": d.BankAcknowledgementStatus,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppID', header: 'AppID'},\r\n {field: 'Program_Name', header: 'Program Name'},\r\n { field: 'ChallanType', header: 'Challan Type' },\r\n { field: 'farmerName', header: 'Farmer Name' },\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n {field: 'Village', header: 'Village'},\r\n {field: 'Applicant_type', header: 'Applicant type'},\r\n {field: 'VendorAcknowledgmentStatus', header: 'Vendor Acknowledgement Status'},\r\n {field: 'BankAcknowledgementStatus', header: 'Bank Acknowledgement Status'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default('l', 'mm', 'a4');\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempTankAbstract=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.tankApp=0;\r\n this.tankCoverageArea=0;\r\n this.tankVerifiedApp=0;\r\n this.tankRpApp=0;\r\n this.tankRejectedApp=0;\r\n this.tankVerifiedCoverageApp=0;\r\n for(let i=this.arrayIndex ;this.tempTankAbstract.length>10?i\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CHALLAN_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'DEPOSIT_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'UTR'| translate}}\r\n \r\n \r\n \r\n {{'ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n {{'REFERNCE_ID'| translate}}\r\n \r\n \r\n \r\n {{'REMITTER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TRANSFER_MODE'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACKNOWLEDGMENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'BANK_ACKNOWLEDGMENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{tankAbstract.AppID}}\r\n {{tankAbstract.Program_Name}}\r\n {{tankAbstract.ChallanType}}\r\n {{tankAbstract.ChallanAmount}}\r\n {{tankAbstract.Deposit_Amount}}\r\n {{tankAbstract.UTR}}\r\n {{tankAbstract.FromAccountNumber}}\r\n {{tankAbstract.FromBankName}}\r\n {{tankAbstract.PaymentAcknowledgedByBankOn | date:'mediumDate'}}\r\n {{tankAbstract.ReferenceID}}\r\n {{tankAbstract.RemitterName}}\r\n {{tankAbstract.TransferMode}}\r\n {{tankAbstract.farmerName}}\r\n {{tankAbstract.District}}\r\n {{tankAbstract.Block}}\r\n {{tankAbstract.Village}}\r\n {{tankAbstract.Applicant_type}}\r\n {{tankAbstract.VendorAcknowledgmentStatus}}\r\n {{tankAbstract.BankAcknowledgementStatus}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ChallanDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-challan-district-wise-report',\r\n templateUrl: './challan-district-wise-report.component.html',\r\n styleUrls: ['./challan-district-wise-report.component.scss']\r\n})\r\nexport class ChallanDistrictWiseReportComponent implements OnInit {\r\n\r\n districtWise: any[];\r\n grandChallanGenerated:number;\r\n grandChallanAmount:number;\r\n grandChallanDeposited:number;\r\n grandAmountDeposited:number;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: ChallanDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n value:any;\r\n drilldownDetails:any;\r\n challanName:any;\r\n displayMaximizable:boolean;\r\n subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n \r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getChallan_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Challan Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this. calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise = [];\r\n this.appVerificationModel = [];\r\n this. calculateGrandTotal();\r\n\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Challan Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Challan Generated\": d.ChallanGenerated,\r\n \"Challan Amount\": d.ChallanAmount,\r\n \"Challan Deposited\": d.ChallanDeposited,\r\n \"Amount Deposited\":d.AmountDeposited,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n ); \r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n { field: 'ChallanGenerated', header: 'Challan Generated' },\r\n { field: 'ChallanAmount', header: 'Challan Amount' },\r\n { field: 'ChallanDeposited', header: 'Challan Deposited' },\r\n { field: 'AmountDeposited', header: 'Amount Deposited' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n calculateGrandTotal(){\r\n this.grandChallanGenerated=0;\r\n this.grandChallanAmount=0;\r\n this.grandChallanDeposited=0;\r\n this.grandAmountDeposited=0;\r\n for(let districtWiseData of this.districtWise) {\r\n this.grandChallanGenerated += districtWiseData.ChallanGenerated;\r\n this.grandChallanAmount += districtWiseData.ChallanAmount;\r\n this.grandChallanDeposited += districtWiseData.ChallanDeposited;\r\n this.grandAmountDeposited += districtWiseData.AmountDeposited;\r\n }\r\n }\r\n showMaximizableDialog_challan(actionType:any,value:any) {\r\n \r\n if(actionType=='Challan'){\r\n this.challanName='Challan Generated'\r\n }\r\n if(actionType=='ChallanDeposited'){\r\n this.challanName='Challan Deposited'\r\n }\r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:actionType,\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n status:'Approved',\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_GENERATED'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.ChallanGenerated}}\r\n {{districtWise.ChallanAmount}}\r\n {{districtWise.ChallanDeposited}}\r\n {{districtWise.AmountDeposited}}\r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandChallanGenerated | number:'1.0-2'}}\r\n {{grandChallanAmount | number:'1.0-2'}}\r\n {{grandChallanDeposited | number:'1.0-2'}}\r\n {{grandAmountDeposited | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport saveAs from 'file-saver';\r\nimport { first } from 'rxjs';\r\nimport { ChallanMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-challan-month-wise-report',\r\n templateUrl: './challan-month-wise-report.component.html',\r\n styleUrls: ['./challan-month-wise-report.component.scss']\r\n})\r\nexport class ChallanMonthWiseReportComponent implements OnInit {\r\n\r\n monthWise: any[];\r\n challanGenerated:number;\r\n challanAmount:number;\r\n challanDeposited:number;\r\n amountDeposited:number;\r\n grandChallanGenerated:number;\r\n grandChallanAmount:number;\r\n grandChallanDeposited:number;\r\n grandAmountDeposited:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: ChallanMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n value:any;\r\n drilldownDetails:any;\r\n challanName:any;\r\n displayMaximizable:boolean;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getChallan_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'Challan Report (Month Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data;\r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise =[] ;\r\n this.appVerificationModel =[] ;\r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Challan Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Challan Generated\": d.ChallanGenerated,\r\n \"Challan Amount\": d.ChallanAmount,\r\n \"Challan Deposited\": d.ChallanDeposited,\r\n \"Amount Deposited\":d.AmountDeposited,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n ); \r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'ChallanGenerated', header: 'Challan Generated' },\r\n { field: 'ChallanAmount', header: 'Challan Amount' },\r\n { field: 'ChallanDeposited', header: 'Challan Deposited' },\r\n { field: 'AmountDeposited', header: 'Amount Deposited' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.challanGenerated=0;\r\n this.challanAmount=0;\r\n this.challanDeposited=0;\r\n this.amountDeposited=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_GENERATED'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.ChallanGenerated}}\r\n {{monthWise.ChallanAmount}}\r\n {{monthWise.ChallanDeposited}}\r\n {{monthWise.AmountDeposited}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{challanGenerated | number:'1.0-2'}}\r\n {{challanAmount | number:'1.0-2'}}\r\n {{challanDeposited | number:'1.0-2'}}\r\n {{amountDeposited | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandChallanGenerated | number:'1.0-2'}}\r\n {{grandChallanAmount | number:'1.0-2'}}\r\n {{grandChallanDeposited | number:'1.0-2'}}\r\n {{grandAmountDeposited | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-challan-report',\r\n templateUrl: './challan-report.component.html',\r\n styleUrls: ['./challan-report.component.scss']\r\n})\r\nexport class ChallanReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/challan/month-wise` },\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/challan/district-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/challan/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ChallanVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-challan-vendor-wise-report',\r\n templateUrl: './challan-vendor-wise-report.component.html',\r\n styleUrls: ['./challan-vendor-wise-report.component.scss']\r\n})\r\nexport class ChallanVendorWiseReportComponent implements OnInit {\r\n\r\n vendorWise: any[];\r\n challanGenerated:number;\r\n challanAmount:number;\r\n challanDeposited:number;\r\n amountDeposited:number;\r\n grandChallanGenerated:number;\r\n grandChallanAmount:number;\r\n grandChallanDeposited:number;\r\n grandAmountDeposited:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: ChallanVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n value:any;\r\n drilldownDetails:any;\r\n challanName:any;\r\n displayMaximizable:boolean;\r\n vendorName:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getChallan_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Challan Report (Vendor Wise)', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise =[] ;\r\n this.appVerificationModel = [];\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n // this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Challan Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Challan Generated\" : d.ChallanGenerated,\r\n \"Challan Amount\": d.ChallanAmount,\r\n \"Challan Deposited\": d.ChallanDeposited,\r\n \"Amount Deposited\": d.AmountDeposited,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n {field: 'ChallanGenerated', header: 'Challan Generated'},\r\n { field: 'ChallanAmount', header: 'Challan Amount' },\r\n { field: 'ChallanDeposited', header: 'Challan Deposited' },\r\n { field: 'AmountDeposited', header: 'Amount Deposited' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.challanGenerated=0;\r\n this.challanAmount=0;\r\n this.challanDeposited=0;\r\n this.amountDeposited=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_GENERATED'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.ChallanGenerated}}\r\n {{vendorWise.ChallanAmount}}\r\n {{vendorWise.ChallanDeposited}}\r\n {{vendorWise.AmountDeposited}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{challanGenerated | number:'1.0-2'}}\r\n {{challanAmount | number:'1.0-2'}}\r\n {{challanDeposited | number:'1.0-2'}}\r\n {{amountDeposited | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandChallanGenerated | number:'1.0-2'}}\r\n {{grandChallanAmount | number:'1.0-2'}}\r\n {{grandChallanDeposited | number:'1.0-2'}}\r\n {{grandAmountDeposited | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n ","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Chart } from 'chart.js';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { InnerPageLayoutComponent } from 'src/app/components/layouts/inner-page-layout/inner-page-layout.component';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport ChartDataLabels from 'chartjs-plugin-datalabels';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-consolidated-dashboard',\r\n templateUrl: './consolidated-dashboard.component.html',\r\n styleUrls: ['./consolidated-dashboard.component.scss']\r\n})\r\nexport class ConsolidatedDashboardComponent implements OnInit {\r\n\r\n @ViewChild('divClick') divClick: ElementRef;\r\n @ViewChild('miDrillDownData') miDrillDownData: ElementRef;\r\n @ViewChild('pondDrillDownData') pondDrillDownData: ElementRef;\r\n @ViewChild('miDistrictWiseDataCard') miDistrictWiseDataCard: ElementRef;\r\n @ViewChild('pondDistrictWiseDataCard') pondDistrictWiseDataCard: ElementRef;\r\n\r\n public pieChartData: any = [];\r\n public miDoughnutYearWiseData: any = [];\r\n public pondDoughnutYearWiseData: any = [];\r\n public options: any;\r\n public options1: any;\r\n public options2: any;\r\n public optionsLine: any;\r\n public optionsMIDW: any;\r\n public optionsPondDW: any;\r\n public optionsMIScheme: any;\r\n public optionsSubsidy: any;\r\n public optionsCaste: any;\r\n public optionsAppType: any;\r\n public optionsComponent: any;\r\n\r\n\r\n public miData: any;\r\n public miYearWiseData: any;\r\n public miBifurcatedData: any;\r\n\r\n public pondData: any;\r\n public pondYearWiseData: any;\r\n public pondBifurcatedData: any;\r\n\r\n public miDistrictWiseData: any;\r\n public miDistrictWiseDataForChart: any;\r\n public miDistrictWiseDashboardData: any;\r\n public miDistrictWiseDashboarSchemedData: any = [];\r\n public miDistrictWiseSchemeDataForGraph: any;\r\n\r\n public pondDistrictWiseData: any;\r\n public pondDistrictWiseDataForChart: any;\r\n public pondDistrictWiseDashboardData: any;\r\n public pondDistrictWiseDashboarSchemedData: any = [];\r\n public pondDistrictWiseSchemeDataForGraph: any;\r\n\r\n // public subsidyData: any;\r\n public subsidyDataForChart: any;\r\n\r\n public subsidyAreaDataForChart: any;\r\n public subsidyAmountDataForChart: any;\r\n public Paymentstage: any;\r\n\r\n // public casteData: any;\r\n public casteDataForChart: any;\r\n\r\n // public appTypeData: any;\r\n public appTypeDataForChart: any;\r\n\r\n // public componentData: any;\r\n public componentDataForChart: any;\r\n\r\n // public yearWiseData: any;\r\n public yearWiseDataForChart: any;\r\n\r\n public showMIUnderProcessDetails: boolean = false;\r\n public showMICompletedDetails: boolean = false;\r\n public showMIRejectedDetails: boolean = false;\r\n public showMIIncompletedDetails: boolean = false;\r\n public showMITotalDDDetails: boolean = false;\r\n public showMITotalDetails: boolean = false;\r\n\r\n public showPondCompletedDetails: boolean = false;\r\n public showPondUnderProcessDetails: boolean = false;\r\n public showPondRejectedDetails: boolean = false;\r\n public showPondIncompleteDetails: boolean = false;\r\n public showPondTotalDetails: boolean = false;\r\n\r\n public pieChartOptions: any = {}\r\n\r\n public districtWiseHeader = `All districts details`;\r\n\r\n public userId: any;\r\n\r\n public totalSubsidyDisbursed: number = 0;\r\n public totalAppCompleted: number = 0;\r\n public totalMIAreaCompleted: number = 0;\r\n\r\n public totalSubsidyDisbursedPond1STage: number = 0;\r\n public totalAppCompletedPond1STage: number = 0;\r\n public totalAreaCompletedPond1STage: number = 0;\r\n\r\n public totalSubsidyDisbursedPond2STage: number = 0;\r\n public totalAppCompletedPond2STage: number = 0;\r\n public totalAreaCompletedPond2STage: number = 0;\r\n\r\n public totalSubsidyDisbursedPond3STage: number = 0;\r\n public totalAppCompletedPond3STage: number = 0;\r\n public totalAreaCompletedPond3STage: number = 0;\r\n\r\n // private targetTotalSubsidyDisbursed = 0;\r\n // private targetTotalAppCompleted = 0;\r\n // private targetTotalMIAreaCompleted = 0;\r\n userType: any = ''\r\n public showMIDistrciData: boolean = false;\r\n public showPONDDistrciData: boolean = false;\r\n vendorCode: any = ''\r\n\r\n jeLogin: any;\r\n jeorxenLogin: any;\r\n xenLogin: any;\r\n ddAssociate: any;\r\n dmicada: any;\r\n dd_ew: any;\r\n admin: any;\r\n cao: any;\r\n\r\n yearHeaderColor: any = 'blacck';\r\n yearHeadertext: any = '2022-23 Onwards';\r\n\r\n public selectedYearForData: any = '';\r\n public filterTypeName: any = '';\r\n\r\n // public showDashboard: boolean = true;\r\n public showOnlyMI: boolean = false;\r\n public showOnlyPond: boolean = false;\r\n\r\n constructor(\r\n public appMain: InnerPageLayoutComponent,\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) {\r\n Chart.register(ChartDataLabels);\r\n\r\n const tokenData = sessionStorage.getItem('token') ? \r\n JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {};\r\n\r\n if (tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')) {\r\n this.jeLogin = true;\r\n this.jeorxenLogin = true;\r\n }\r\n if (tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')) {\r\n this.xenLogin = true;\r\n this.jeorxenLogin = true;\r\n }\r\n else if (tokenData && (tokenData.role == 'DD Associate')) {\r\n this.ddAssociate = true;\r\n }\r\n else if (tokenData && (tokenData.role == 'DMICADA')) {\r\n this.dmicada = true;\r\n }\r\n else if (tokenData && (tokenData.role == 'DD-EW')) {\r\n this.dd_ew = true;\r\n }\r\n else if (tokenData && ((tokenData.role == 'ADMIN') || (tokenData.role == 'WebAdmin'))) {\r\n this.admin = true;\r\n }\r\n else if (tokenData && (tokenData.role == 'CAO')) {\r\n this.cao = true;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.selectedYearForData = '';\r\n\r\n setTimeout(() => {\r\n this.divClick.nativeElement.click();\r\n }, 200);\r\n\r\n this.animateCounter('totalSubsidyDisbursed', this.totalSubsidyDisbursed);\r\n this.animateCounter('totalAppCompleted', this.totalAppCompleted);\r\n this.animateCounter('totalMIAreaCompleted', this.totalMIAreaCompleted);\r\n\r\n this.animateCounter('totalSubsidyDisbursedPond1STage', this.totalSubsidyDisbursedPond1STage);\r\n this.animateCounter('totalAppCompletedPond1STage', this.totalAppCompletedPond1STage);\r\n this.animateCounter('totalAreaCompletedPond1STage', this.totalAreaCompletedPond1STage);\r\n\r\n this.animateCounter('totalSubsidyDisbursedPond2STage', this.totalSubsidyDisbursedPond2STage);\r\n this.animateCounter('totalAppCompletedPond2STage', this.totalAppCompletedPond2STage);\r\n this.animateCounter('totalAreaCompletedPond2STage', this.totalAreaCompletedPond2STage);\r\n\r\n this.animateCounter('totalSubsidyDisbursedPond3STage', this.totalSubsidyDisbursedPond3STage);\r\n this.animateCounter('totalAppCompletedPond3STage', this.totalAppCompletedPond3STage);\r\n this.animateCounter('totalAreaCompletedPond3STage', this.totalAreaCompletedPond3STage);\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = (JSON.parse(payload)?.sub).toLowerCase();\r\n // this.userIdUpperCase = JSON.parse(payload)?.sub\r\n\r\n console.log(payload)\r\n\r\n\r\n if (this.dmicada) {\r\n this.loadMIYearWiseData();\r\n\r\n this.onPieChartClick({ element: { index: 0 } });\r\n } else if (this.dd_ew) {\r\n // this.loadPondData();\r\n this.loadPondYearWiseData();\r\n this.onPieChartClick({ element: { index: 1 } });\r\n } else {\r\n this.loadMIYearWiseData();\r\n this.loadPondYearWiseData();\r\n\r\n this.onPieChartClick({ element: { index: 100 } });\r\n // this.loadMIData();\r\n // this.loadPondData();\r\n }\r\n }\r\n\r\n private animateCounter(property: string, endValue: number): void {\r\n const duration = 2000; // Duration of the animation in milliseconds\r\n const frameRate = 60; // Number of updates per second\r\n const totalFrames = (duration / 1000) * frameRate;\r\n let frame = 0;\r\n\r\n const intervalId = setInterval(() => {\r\n frame++;\r\n const progress = frame / totalFrames;\r\n const currentCount = Math.floor(progress * endValue);\r\n\r\n this[property] = currentCount;\r\n\r\n if (frame >= totalFrames) {\r\n clearInterval(intervalId);\r\n this[property] = endValue; // Ensure the final value is set\r\n }\r\n }, 1000 / frameRate);\r\n }\r\n\r\n onClearFinYear(val) {\r\n this.filterTypeName = '';\r\n this.selectedYearForData = '';\r\n this.yearHeadertext = '2022-23 Onwards';\r\n this.yearHeaderColor = 'black';\r\n\r\n if (val == 'MI') {\r\n this.onPieChartClick({ element: { index: 0 } });\r\n } else if (val == 'Pond') {\r\n this.onPieChartClick({ element: { index: 1 } });\r\n }\r\n\r\n // if (this.dmicada) {\r\n // this.onPieMIYearWiseChartClick({ element: { index: 100 } });\r\n // } else if (this.dd_ew) {\r\n // this.onPiePondYearWiseChartClick({ element: { index: 100 } });\r\n // } else {\r\n // this.onPieMIYearWiseChartClick({ element: { index: 100 } });\r\n // this.onPiePondYearWiseChartClick({ element: { index: 100 } });\r\n // }\r\n }\r\n\r\n loadPondYearWiseData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .pondYearWiseTotalAppCount()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.pondYearWiseData = data;\r\n this.loadPondDoughnutYearWiseData();\r\n\r\n } else {\r\n this.pondYearWiseData = [];\r\n this.loadPondDoughnutYearWiseData();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.pondYearWiseData = [];\r\n this.loadPondDoughnutYearWiseData();\r\n\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMIYearWiseData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .miYearWiseTotalAppCount()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miYearWiseData = data;\r\n this.loadMIDoughnutYearWiseData();\r\n\r\n } else {\r\n this.miYearWiseData = [];\r\n this.loadMIDoughnutYearWiseData();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miYearWiseData = [];\r\n this.loadMIDoughnutYearWiseData();\r\n\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMIData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getMIAggregateTabsDataNew(this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miData = data[0];\r\n this.loadPieChartData();\r\n this.loadMIBifurcatedData();\r\n\r\n } else {\r\n this.miData = [];\r\n this.loadPieChartData();\r\n this.loadMIBifurcatedData();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miData = [];\r\n\r\n this.loadPieChartData();\r\n this.loadMIBifurcatedData();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadPondData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getPondAggregateTabsDataNew(this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.pondData = data[0];\r\n this.loadPieChartData();\r\n this.loadPondBifurcatedData();\r\n\r\n // //save data in session storage\r\n // if (finYear == '') {\r\n // window.sessionStorage.setItem('MIDataAll', JSON.stringify(data));\r\n // }\r\n // else if (finYear == '2022-23') {\r\n // window.sessionStorage.setItem('MIData2223', JSON.stringify(data));\r\n // }\r\n // else if (finYear == '2023-24') {\r\n // window.sessionStorage.setItem('MIData2324', JSON.stringify(data));\r\n // }\r\n\r\n } else {\r\n this.pondData = [];\r\n this.loadPieChartData();\r\n this.loadPondBifurcatedData();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.pondData = [];\r\n\r\n this.loadPieChartData();\r\n this.loadPondBifurcatedData();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadPieChartData1() {\r\n\r\n let miTotalCount = this.miData ? (this.miData?.totalApp ? this.miData?.totalApp : 0) : 0;\r\n let pondTotalCount = this.pondData ? (this.pondData?.totalApp ? this.pondData?.totalApp : 0) : 0;\r\n\r\n\r\n this.pieChartOptions = {\r\n animationEnabled: true,\r\n theme: \"dark2\",\r\n colorSet: \"customColorSet\",\r\n title: {\r\n text: \"Micor Irrigation Total Applications\"\r\n },\r\n data: [{\r\n type: \"doughnut\",\r\n indexLabel: \"{name}: {y}\",\r\n innerRadius: \"90%\",\r\n yValueFormatString: \"#,##0.00\",\r\n dataPoints: [\r\n { y: miTotalCount, name: `MI(PDMC)` },\r\n { y: pondTotalCount, name: `Pond/Tank` },\r\n ]\r\n }]\r\n }\r\n }\r\n\r\n loadPieChartData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n\r\n let miTotalCount = this.miData ? (this.miData?.totalApp ? this.miData?.totalApp : 0) : 0;\r\n let pondTotalCount = this.pondData ? (this.pondData?.totalApp ? this.pondData?.totalApp : 0) : 0;\r\n\r\n\r\n if (this.dmicada) {\r\n this.pieChartData = {\r\n labels: [`MI(PDMC): (${miTotalCount}) `],\r\n datasets: [\r\n {\r\n data: [miTotalCount, pondTotalCount],\r\n backgroundColor: [\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 102, 204)',\r\n '#2E7D32'\r\n ],\r\n hoverBackgroundColor: [\r\n '#2E7D32',\r\n // 'rgb(0, 102, 204)',\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n } else if (this.dd_ew) {\r\n this.pieChartData = {\r\n labels: [`Pond/Tank: (${pondTotalCount})`],\r\n datasets: [\r\n {\r\n data: [pondTotalCount],\r\n backgroundColor: [\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 102, 204)',\r\n '#0D47A1'\r\n ],\r\n hoverBackgroundColor: [\r\n '#0D47A1',\r\n // 'rgb(0, 102, 204)',\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n } else {\r\n this.pieChartData = {\r\n labels: [`MI(PDMC): (${miTotalCount}) `, `Pond/Tank: (${pondTotalCount})`],\r\n datasets: [\r\n {\r\n data: [miTotalCount, pondTotalCount],\r\n backgroundColor: [\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 102, 204)',\r\n '#2E7D32',\r\n '#0D47A1'\r\n ],\r\n hoverBackgroundColor: [\r\n '#2E7D32',\r\n '#0D47A1'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n }\r\n\r\n\r\n this.options = {\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: '#FFFFFF',\r\n offset: -7,\r\n font: {\r\n weight: 'bold',\r\n size: 8\r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n };\r\n }\r\n\r\n loadMIDoughnutYearWiseData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n\r\n const totalAppsArray = this.miYearWiseData.map(item => item.TotalApps);\r\n const finyearArray = this.miYearWiseData.map(item => `${item.finyear}(${item.TotalApps})`);\r\n\r\n // let miTotalCount = this.miYearWiseData ? (this.miYearWiseData?.totalApp ? this.miYearWiseData?.totalApp : 0) : 0;\r\n // let pondTotalCount = this.pondData ? (this.pondData?.totalApp ? this.pondData?.totalApp : 0) : 0;\r\n\r\n\r\n if (this.dmicada || this.admin || this.cao) {\r\n this.miDoughnutYearWiseData = {\r\n labels: finyearArray,\r\n datasets: [\r\n {\r\n data: totalAppsArray,\r\n backgroundColor: [\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 153, 115)',\r\n // 'rgb(153, 0, 0)',\r\n '#558B2F',\r\n '#8BC34A',\r\n '#C5E1A5',\r\n ],\r\n hoverBackgroundColor: [\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 153, 115)',\r\n // 'rgb(153, 0, 0)',\r\n '#558B2F',\r\n '#8BC34A',\r\n '#C5E1A5',\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n }\r\n\r\n\r\n this.options = {\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: '#FFFFFF',\r\n offset: -7,\r\n font: {\r\n weight: 'bold',\r\n size: 8\r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n };\r\n }\r\n\r\n loadPondDoughnutYearWiseData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n\r\n const totalAppsArray = this.pondYearWiseData.map(item => item.TotalApps);\r\n const finyearArray = this.pondYearWiseData.map(item => `${item.finyear}(${item.TotalApps})`);\r\n\r\n // let miTotalCount = this.miYearWiseData ? (this.miYearWiseData?.totalApp ? this.miYearWiseData?.totalApp : 0) : 0;\r\n // let pondTotalCount = this.pondData ? (this.pondData?.totalApp ? this.pondData?.totalApp : 0) : 0;\r\n\r\n\r\n if (this.dd_ew || this.admin || this.cao) {\r\n this.pondDoughnutYearWiseData = {\r\n labels: finyearArray,\r\n datasets: [\r\n {\r\n data: totalAppsArray,\r\n backgroundColor: [\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 153, 115)',\r\n // 'rgb(153, 0, 0)',\r\n '#063873',\r\n '#1e85b0',\r\n '#46aecb',\r\n ],\r\n hoverBackgroundColor: [\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 153, 115)',\r\n // 'rgb(153, 0, 0)',\r\n '#063873',\r\n '#1e85b0',\r\n '#46aecb',\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n }\r\n\r\n\r\n this.options = {\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: '#FFFFFF',\r\n offset: -7,\r\n font: {\r\n weight: 'bold',\r\n size: 8\r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n };\r\n }\r\n\r\n loadMIBifurcatedData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n this.miBifurcatedData = {\r\n // labels: [`MI(PDMC) Applications: (${miTotalCount}) `, `Pond/Tank Applications: (${pondTotalCount})`],\r\n labels: ['Completed', 'Under Process', 'Rejected', 'Incomplete'],\r\n datasets: [\r\n {\r\n data: [this.miData?.CompletedApps, this.miData?.UnProcessedApps, this.miData?.rejectedApp, this.miData?.InCompleteApps],\r\n backgroundColor: [\r\n '#2eb82e',\r\n '#e6e600',\r\n '#ff0000',\r\n '#ff9900',\r\n ],\r\n hoverBackgroundColor: [\r\n '#5cd65c',\r\n '#ffff00',\r\n '#ff6666',\r\n '#ffc266',\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n // y: {\r\n // type: 'logarithmic', // Use logarithmic scale\r\n // ticks: {\r\n // min: 0,\r\n // font: {\r\n // weight: 'bold',\r\n // color: 'black'\r\n // },\r\n // },\r\n // grid: {\r\n // display: false,\r\n // // color: this.surfaceBorder,\r\n // // drawBorder: false,\r\n // },\r\n // },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : (value / 1000) + 'K';\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n }\r\n };\r\n }\r\n\r\n loadPondBifurcatedData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n this.pondBifurcatedData = {\r\n // labels: [`MI(PDMC) Applications: (${miTotalCount}) `, `Pond/Tank Applications: (${pondTotalCount})`],\r\n labels: ['Completed', 'Under Process', 'Rejected', 'Incomplete'],\r\n datasets: [\r\n {\r\n data: [this.pondData?.CompletedApps, this.pondData?.UnProcessedApps, this.pondData?.rejectedApp, this.pondData?.InCompleteApps],\r\n backgroundColor: [\r\n\r\n '#2eb82e',\r\n '#e6e600',\r\n '#ff0000',\r\n '#ff9900',\r\n\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--yellow-500'),\r\n '#5cd65c',\r\n '#ffff00',\r\n '#ff6666',\r\n '#ffc266',\r\n // documentStyle.getPropertyValue('--pink-400'),\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n // y: {\r\n // type: 'logarithmic', // Use logarithmic scale\r\n // ticks: {\r\n // min: 0,\r\n // font: {\r\n // weight: 'bold',\r\n // color: 'black'\r\n // },\r\n // },\r\n\r\n // grid: {\r\n // display: false,\r\n // // color: this.surfaceBorder,\r\n // // drawBorder: false,\r\n // },\r\n // },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : (value / 1000) + 'K';\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n }\r\n };\r\n }\r\n\r\n onMIChartClick(event) {\r\n console.log('onMIChartClick', event?.element?.index)\r\n if (event?.element?.index == 0) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMICompletedDetails = true;\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n }\r\n else if (event?.element?.index == 1) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMIUnderProcessDetails = true;\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n } else if (event?.element?.index == 2) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n this.showMIRejectedDetails = true;\r\n this.showMIIncompletedDetails = false;\r\n }\r\n else if (event?.element?.index == 3) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = true;\r\n }\r\n else {\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n\r\n this.showMICompletedDetails = false;\r\n this.showPondCompletedDetails = false;\r\n\r\n this.showMIRejectedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n\r\n this.showPondIncompleteDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n }\r\n }\r\n\r\n onPondChartClick(event) {\r\n if (event?.element?.index == 0) {\r\n setTimeout(() => this.pondDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = true;\r\n this.showPondRejectedDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIUnderProcessDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n } else if (event?.element?.index == 1) {\r\n setTimeout(() => this.pondDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showPondUnderProcessDetails = true;\r\n this.showPondCompletedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIUnderProcessDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n } else if (event?.element?.index == 2) {\r\n setTimeout(() => this.pondDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = false;\r\n this.showPondRejectedDetails = true;\r\n this.showMICompletedDetails = false;\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n } else if (event?.element?.index == 3) {\r\n setTimeout(() => this.pondDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondIncompleteDetails = true;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n }\r\n else {\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n this.showPondCompletedDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showPondIncompleteDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n this.showPondRejectedDetails = false;\r\n }\r\n }\r\n\r\n onPieChartClick(event) {\r\n // console.log(event)\r\n // console.log(event?.element?.index ,\"event?.element?.index \")\r\n\r\n if (event?.element?.index == 0) {\r\n // console.log('MI');\r\n this.loadMIData();\r\n this.showOnlyMI = true;\r\n this.showOnlyPond = false;\r\n this.showPONDDistrciData = false;\r\n this.pondDistrictWiseDashboardData = false;\r\n this.pondDistrictWiseDashboarSchemedData = [];\r\n this.loadMIDistrictWiseData('');\r\n this.loadMIDistrictWiseDashboardData('');\r\n this.loadMIDistrictWiseDashboardSchemeData('');\r\n this.showMIDistrciData = true;\r\n this.districtWiseHeader = `All districts details`\r\n } else if (event?.element?.index == 1) {\r\n this.loadPondData();\r\n this.showOnlyMI = false;\r\n this.showOnlyPond = true;\r\n this.showMIDistrciData = false;\r\n this.miDistrictWiseDashboardData = false;\r\n this.miDistrictWiseDashboarSchemedData = [];\r\n this.loadPONDDistrictWiseData('');\r\n this.loadPONDDistrictWiseDashboardData('');\r\n this.loadPondDistrictWiseDashboardSchemeData('');\r\n this.showPONDDistrciData = true;\r\n this.districtWiseHeader = `All districts details`\r\n } else if (event?.element?.index == 100) { //in case of admin and cao login\r\n this.loadMIData();\r\n this.loadPondData();\r\n } else {\r\n // this.showMITotalDetails = false;\r\n }\r\n }\r\n\r\n onPieMIYearWiseChartClick(event) {\r\n console.log(event)\r\n console.log(event?.element?.index, \"event?.element?.index \");\r\n this.filterTypeName = 'MI';\r\n\r\n this.yearHeadertext = event?.element?.index == 0 ? '2022-23' : event?.element?.index == 1 ? '2023-24' : event?.element?.index == 2 ? '2024-25' : '2022-23 Onwards';\r\n this.selectedYearForData = event?.element?.index == 0 ? '2022-23' : event?.element?.index == 1 ? '2023-24' : event?.element?.index == 2 ? '2024-25' : '';\r\n this.yearHeaderColor = event?.element?.index == 0 ? '#990000' : event?.element?.index == 1 ? '#ff1a1a' : event?.element?.index == 2 ? '#ff6666' : 'black';\r\n // this.yearHeadertext = year;\r\n // this.selectedYearForData = year;\r\n\r\n // this.loadMIData();\r\n\r\n // this.showPONDDistrciData = false;\r\n // this.loadMIDistrictWiseData('');\r\n // this.pondDistrictWiseDashboardData = false;\r\n // this.pondDistrictWiseDashboarSchemedData = [];\r\n // this.loadMIDistrictWiseDashboardData('');\r\n // this.loadMIDistrictWiseDashboardSchemeData('');\r\n\r\n // this.showMIDistrciData = true;\r\n // this.districtWiseHeader = `All districts details`\r\n\r\n // this.onMIChartClick({ element: { index: 100 } });\r\n\r\n this.onPieChartClick({ element: { index: 0 } });\r\n this.onMIChartClick({ element: { index: 100 } });\r\n }\r\n\r\n onPiePondYearWiseChartClick(event) {\r\n console.log(event)\r\n console.log(event?.element?.index, \"event?.element?.index \");\r\n\r\n this.filterTypeName = 'Pond';\r\n\r\n this.yearHeadertext = event?.element?.index == 0 ? '2022-23' : event?.element?.index == 1 ? '2023-24' : event?.element?.index == 2 ? '2024-25' : '2022-23 Onwards';\r\n this.selectedYearForData = event?.element?.index == 0 ? '2022-23' : event?.element?.index == 1 ? '2023-24' : event?.element?.index == 2 ? '2024-25' : '';\r\n this.yearHeaderColor = event?.element?.index == 0 ? '#990000' : event?.element?.index == 1 ? '#ff1a1a' : event?.element?.index == 2 ? '#ff6666' : 'black';\r\n // this.yearHeadertext = year;\r\n // this.selectedYearForData = year;\r\n\r\n // this.loadPondData();\r\n\r\n // this.showMIDistrciData = false;\r\n // this.loadPONDDistrictWiseData('');\r\n // this.miDistrictWiseDashboardData = false;\r\n // this.miDistrictWiseDashboarSchemedData = [];\r\n // this.loadPONDDistrictWiseDashboardData('');\r\n // this.loadPondDistrictWiseDashboardSchemeData('');\r\n\r\n // this.showPONDDistrciData = true;\r\n // this.districtWiseHeader = `All districts details`\r\n\r\n // this.onPondChartClick({ element: { index: 100 } });\r\n\r\n this.onPieChartClick({ element: { index: 1 } });\r\n this.onPondChartClick({ element: { index: 100 } });\r\n }\r\n\r\n loadMIDistrictWiseData(districtData) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getDistrictWiseAllCountDashboard(districtData, this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miDistrictWiseData = data;\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n } else {\r\n this.miDistrictWiseData = [];\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miDistrictWiseData = [];\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMIDistrictWiseDashboardSchemeData(districtCode) {\r\n // this.loader.start();\r\n let sub = this.reportsService\r\n .getMISchemeWiseAppCount(districtCode, this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n if (data?.length > 0) {\r\n this.miDistrictWiseDashboarSchemedData = data;\r\n console.log(this.miDistrictWiseDashboarSchemedData);\r\n this.loadMISchemeBarDataDistrictWise();\r\n } else {\r\n this.miDistrictWiseDashboarSchemedData = [];\r\n this.loadMISchemeBarDataDistrictWise();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.miDistrictWiseDashboarSchemedData = [];\r\n this.loadMISchemeBarDataDistrictWise();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMIDistrictWiseDashboardData(districtCode) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getDataForDashboardGraphs(districtCode, this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miDistrictWiseDashboardData = data;\r\n console.log(this.miDistrictWiseDashboardData);\r\n this.loadPieDataDistrictWise();\r\n } else {\r\n this.miDistrictWiseDashboardData = [];\r\n this.loadPieDataDistrictWise();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miDistrictWiseDashboardData = [];\r\n this.loadPieDataDistrictWise();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMIDistrictWiseDataForChart() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n const districts = this.miDistrictWiseData.map(item => item.District);\r\n const totalApp = this.miDistrictWiseData.map(item => item.totalApp);\r\n const totalArea = this.miDistrictWiseData.map(item => (item.TotalArea).toFixed(2));\r\n\r\n\r\n const labels = totalApp.map((count, index) => `Count: ${count}. Area: ${totalArea[index]}`);\r\n\r\n this.miDistrictWiseDataForChart = {\r\n labels: districts,\r\n datasets: [\r\n {\r\n data: totalApp,\r\n backgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n hoverBackgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n label: labels\r\n },\r\n\r\n ],\r\n };\r\n \r\n\r\n this.optionsMIDW = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold',\r\n size: '10px'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n },\r\n tooltip: {\r\n callbacks: {\r\n label: function (tooltipItem) {\r\n const index = tooltipItem.dataIndex;\r\n return `Count: ${totalApp[index]}. Area: ${totalArea[index]}`;\r\n }\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n // min: 0,\r\n // stepSize: 200,\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : (value / 1000) + 'K';\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n // y: {\r\n // type: 'logarithmic', // Use logarithmic scale\r\n // ticks: {\r\n // min: 0,\r\n // font: {\r\n // weight: 'bold',\r\n // color: 'black'\r\n // },\r\n // },\r\n // grid: {\r\n // display: false,\r\n // // color: this.surfaceBorder,\r\n // // drawBorder: false,\r\n // },\r\n // },\r\n\r\n }\r\n };\r\n }\r\n\r\n loadPondDistrictWiseDashboardSchemeData(districtCode) {\r\n // this.loader.start();\r\n let sub = this.reportsService\r\n .getPondSchemeWiseAppCount(districtCode, this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n if (data?.length > 0) {\r\n this.pondDistrictWiseDashboarSchemedData = data;\r\n console.log(this.miDistrictWiseDashboarSchemedData);\r\n this.loadPondSchemeBarDataDistrictWise();\r\n } else {\r\n this.pondDistrictWiseDashboarSchemedData = [];\r\n this.loadPondSchemeBarDataDistrictWise();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.pondDistrictWiseDashboarSchemedData = [];\r\n this.loadPondSchemeBarDataDistrictWise();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadPONDDistrictWiseData(districtCode) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getDistrictWiseAllCountDashboardPond(districtCode, this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.pondDistrictWiseData = data;\r\n this.loadPondDistrictWiseDataForChart();\r\n\r\n } else {\r\n this.pondDistrictWiseData = [];\r\n this.loadPondDistrictWiseDataForChart();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.pondDistrictWiseData = [];\r\n this.loadPondDistrictWiseDataForChart();\r\n },\r\n });\r\n }\r\n loadPONDDistrictWiseDashboardData(districtCode) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getDataForDashboardGraphsPond(districtCode, this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.pondDistrictWiseDashboardData = data;\r\n console.log(this.pondDistrictWiseDashboardData);\r\n this.loadPondPieDataDistrictWise();\r\n } else {\r\n this.pondDistrictWiseDashboardData = [];\r\n this.loadPondPieDataDistrictWise();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.pondDistrictWiseDashboardData = [];\r\n this.loadPondPieDataDistrictWise();\r\n },\r\n });\r\n }\r\n\r\n loadPondDistrictWiseDataForChart() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n const districts = this.pondDistrictWiseData.map(item => item.District);\r\n const totalApp = this.pondDistrictWiseData.map(item => item.totalApp);\r\n const totalArea = this.miDistrictWiseData.map(item => (item.TotalArea).toFixed(2));\r\n\r\n const labels = totalApp.map((count, index) => `Count: ${count}. Area: ${totalArea[index]}`);\r\n\r\n this.pondDistrictWiseDataForChart = {\r\n labels: districts,\r\n datasets: [\r\n {\r\n data: totalApp,\r\n backgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n hoverBackgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n label: labels\r\n },\r\n ],\r\n };\r\n\r\n this.optionsPondDW = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold',\r\n size: '10px'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n },\r\n tooltip: {\r\n callbacks: {\r\n label: function (tooltipItem) {\r\n const index = tooltipItem.dataIndex;\r\n return `Count: ${totalApp[index]}. Area: ${totalArea[index]}`;\r\n }\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n // min: 0,\r\n // stepSize: 200,\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : (value / 1000) + 'K';\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n // y: {\r\n // type: 'logarithmic', // Use logarithmic scale\r\n // ticks: {\r\n // min: 0,\r\n // font: {\r\n // weight: 'bold',\r\n // color: 'black'\r\n // },\r\n // },\r\n // grid: {\r\n // display: false,\r\n // // color: this.surfaceBorder,\r\n // // drawBorder: false,\r\n // },\r\n // },\r\n\r\n }\r\n };\r\n }\r\n\r\n onDistrictChartClick(event) {\r\n let districtCode: any = '';\r\n let selectedDistrict: any = 'All District';\r\n let indexVal = event?.element?.index;\r\n if (indexVal == 0) {\r\n districtCode = '01'; //Ambala\r\n selectedDistrict = 'Ambala';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 1) {\r\n districtCode = '02'; // Bhiwani\r\n selectedDistrict = 'Bhiwani';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 3) {\r\n districtCode = '03'; // Faridabad\r\n selectedDistrict = 'Faridabad';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 4) {\r\n districtCode = '04'; // Fatehabad\r\n selectedDistrict = 'Fatehabad';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 5) {\r\n districtCode = '05'; // Gurugram\r\n selectedDistrict = 'Gurugram';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 6) {\r\n districtCode = '06'; // Hissar\r\n selectedDistrict = 'Hissar';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 7) {\r\n districtCode = '07'; // Jhajjar\r\n selectedDistrict = 'Jhajjar';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 8) {\r\n districtCode = '08'; // Jind\r\n selectedDistrict = 'Jind';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 9) {\r\n districtCode = '09'; // Kaithal\r\n selectedDistrict = 'Kaithal';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 10) {\r\n districtCode = '10'; // Karnal\r\n selectedDistrict = 'Karnal';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 11) {\r\n districtCode = '11'; // Kurukshetra\r\n selectedDistrict = 'Kurukshetra';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 12) {\r\n districtCode = '12'; // Mahindergarh\r\n selectedDistrict = 'Mahindergarh';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 15) {\r\n districtCode = '13'; // Panchkula\r\n selectedDistrict = 'Panchkula';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 16) {\r\n districtCode = '14'; // Panipat\r\n selectedDistrict = 'Panipat';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 17) {\r\n districtCode = '15'; // Rewari\r\n selectedDistrict = 'Rewari';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 18) {\r\n districtCode = '16'; // Rohtak\r\n selectedDistrict = 'Rohtak';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 19) {\r\n districtCode = '17'; // Sirsa\r\n selectedDistrict = 'Sirsa';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 20) {\r\n districtCode = '18'; // Sonipat\r\n selectedDistrict = 'Sonipat';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 21) {\r\n districtCode = '19'; // Yamunanagar\r\n selectedDistrict = 'Yamunanagar';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 13) {\r\n districtCode = '20'; // Nuh\r\n selectedDistrict = 'Nuh';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 14) {\r\n districtCode = '21'; // Palwal\r\n selectedDistrict = 'Palwal';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 2) {\r\n districtCode = '22'; // Charkhi Dadri\r\n selectedDistrict = 'Charkhi Dadri';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n } else {\r\n selectedDistrict = 'all district';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n this.loadMIDistrictWiseDashboardSchemeData(districtCode);\r\n }\r\n\r\n setTimeout(() => this.miDistrictWiseDataCard.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n this.districtWiseHeader = `District: ${selectedDistrict}`\r\n }\r\n\r\n onPondDistrictChartClick(event) {\r\n let districtCode: any = '';\r\n let selectedDistrict: any = 'All District';\r\n let indexVal = event?.element?.index;\r\n if (indexVal == 0) {\r\n districtCode = '01'; //Ambala\r\n selectedDistrict = 'Ambala';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 1) {\r\n districtCode = '02'; // Bhiwani\r\n selectedDistrict = 'Bhiwani';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 3) {\r\n districtCode = '04'; // Fatehabad\r\n selectedDistrict = 'Fatehabad';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 4) {\r\n districtCode = '06'; // Hissar\r\n selectedDistrict = 'Hissar';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 5) {\r\n districtCode = '07'; // Jhajjar\r\n selectedDistrict = 'Jhajjar';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 6) {\r\n districtCode = '08'; // Jind\r\n selectedDistrict = 'Jind';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 7) {\r\n districtCode = '09'; // Kaithal\r\n selectedDistrict = 'Kaithal';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 8) {\r\n districtCode = '11'; // Kurukshetra\r\n selectedDistrict = 'Kurukshetra';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 9) {\r\n districtCode = '12'; // Mahindergarh\r\n selectedDistrict = 'Mahindergarh';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 11) {\r\n districtCode = '13'; // Panchkula\r\n selectedDistrict = 'Panchkula';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 12) {\r\n districtCode = '16'; // Rohtak\r\n selectedDistrict = 'Rohtak';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 13) {\r\n districtCode = '17'; // Sirsa\r\n selectedDistrict = 'Sirsa';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 14) {\r\n districtCode = '19'; // Yamunanagar\r\n selectedDistrict = 'Yamunanagar';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n } else if (indexVal == 10) {\r\n districtCode = '21'; // Palwal\r\n selectedDistrict = 'Palwal';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n }\r\n else if (indexVal == 2) {\r\n districtCode = '22'; // Charkhi Dadri\r\n selectedDistrict = 'Charkhi Dadri';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n }\r\n else {\r\n selectedDistrict = 'all district';\r\n this.loadPONDDistrictWiseDashboardData(districtCode);\r\n this.loadPondDistrictWiseDashboardSchemeData(districtCode);\r\n }\r\n\r\n setTimeout(() => this.pondDistrictWiseDataCard.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n this.districtWiseHeader = `District: ${selectedDistrict}`\r\n }\r\n\r\n loadMISchemeBarDataDistrictWise() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n let scheme = [];\r\n let totalApp = []\r\n if (this.miDistrictWiseDashboarSchemedData.length > 0) {\r\n scheme = this.miDistrictWiseDashboarSchemedData.map(item => item.Scheme);\r\n totalApp = this.miDistrictWiseDashboarSchemedData.map(item => item.TotalApps);\r\n } else {\r\n scheme = [];\r\n totalApp = []\r\n }\r\n\r\n this.miDistrictWiseSchemeDataForGraph = {\r\n labels: scheme,\r\n datasets: [\r\n {\r\n data: totalApp,\r\n backgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n hoverBackgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.optionsMIScheme = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : value;\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n }\r\n };\r\n }\r\n\r\n loadPondSchemeBarDataDistrictWise() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n let scheme = [];\r\n let totalApp = []\r\n if (this.pondDistrictWiseDashboarSchemedData.length > 0) {\r\n scheme = this.pondDistrictWiseDashboarSchemedData.map(item => item.Scheme);\r\n totalApp = this.pondDistrictWiseDashboarSchemedData.map(item => item.TotalApps);\r\n } else {\r\n scheme = [];\r\n totalApp = []\r\n }\r\n\r\n this.pondDistrictWiseSchemeDataForGraph = {\r\n labels: scheme,\r\n datasets: [\r\n {\r\n data: totalApp,\r\n backgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n hoverBackgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.optionsMIScheme = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : value;\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n }\r\n };\r\n }\r\n\r\n loadPieDataDistrictWise() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n // user wise\r\n const atalUserData = this.miDistrictWiseDashboardData[0][0];\r\n const normalUserData = this.miDistrictWiseDashboardData[1][0];\r\n\r\n // caste wise\r\n const casteWiseData = this.miDistrictWiseDashboardData[2];\r\n\r\n // component wise\r\n const componentWiseData = this.miDistrictWiseDashboardData[3];\r\n\r\n // line graph for yearWise area\r\n const yearWiseArea = this.miDistrictWiseDashboardData[4];\r\n console.log(yearWiseArea);\r\n\r\n const completedAppReport = this.miDistrictWiseDashboardData[5][0];\r\n\r\n this.totalSubsidyDisbursed = completedAppReport?.paymentDoneCAO / 10000000;\r\n this.totalAppCompleted = completedAppReport?.Payment_Done_Application_By_CAO;\r\n this.totalMIAreaCompleted = completedAppReport?.Payment_done_MI_Area;\r\n\r\n if (this.showMIDistrciData) {\r\n this.animateCounter('totalSubsidyDisbursed', this.totalSubsidyDisbursed);\r\n this.animateCounter('totalAppCompleted', this.totalAppCompleted);\r\n this.animateCounter('totalMIAreaCompleted', this.totalMIAreaCompleted);\r\n }\r\n\r\n this.subsidyDataForChart = {\r\n labels: [`Application Completed (${atalUserData?.Payment_Done_Application_By_CAO + normalUserData?.Payment_Done_Application_By_CAO})`, `Application Pending (${(atalUserData?.totalApp + normalUserData?.totalApp) - (atalUserData?.Payment_Done_Application_By_CAO + normalUserData?.Payment_Done_Application_By_CAO)})`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.Payment_Done_Application_By_CAO + normalUserData?.Payment_Done_Application_By_CAO,\r\n (atalUserData?.totalApp + normalUserData?.totalApp) - (atalUserData?.Payment_Done_Application_By_CAO + normalUserData?.Payment_Done_Application_By_CAO)\r\n ],\r\n backgroundColor: [\r\n '#09b328',\r\n '#e8c123'\r\n ],\r\n hoverBackgroundColor: [\r\n '#09b328',\r\n '#e8c123'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.subsidyAreaDataForChart = {\r\n labels: [`Disbursed Area (${atalUserData?.Payment_done_MI_Area + normalUserData?.Payment_done_MI_Area})`, `Pending Area (${(atalUserData?.UnProcessedAppsArea) + (normalUserData?.UnProcessedAppsArea)})`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.Payment_done_MI_Area + normalUserData?.Payment_done_MI_Area,\r\n (atalUserData?.UnProcessedAppsArea) + (normalUserData?.UnProcessedAppsArea)],\r\n backgroundColor: [\r\n '#b300b3',\r\n '#0000e6'\r\n ],\r\n hoverBackgroundColor: [\r\n '#b300b3',\r\n '#0000e6'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.subsidyAmountDataForChart = {\r\n labels: [`Disbursed Amount (${atalUserData?.Payment_done_MI_Area + normalUserData?.Payment_done_MI_Area})`, `Pending Amount (${atalUserData?.pending + normalUserData?.pending})`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.Payment_done_MI_Area + normalUserData?.Payment_done_MI_Area, atalUserData?.pending + normalUserData?.pending],\r\n backgroundColor: [\r\n '#8c1aff',\r\n '#e67300'\r\n ],\r\n hoverBackgroundColor: [\r\n '#8c1aff',\r\n '#e67300'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.casteDataForChart = {\r\n labels: [`Gen (${casteWiseData[0]?.totalApp})`, `BC (${casteWiseData[1]?.totalApp})`, `SC/ST(${casteWiseData[2]?.totalApp})`],\r\n datasets: [\r\n {\r\n data: [casteWiseData[0]?.totalApp, casteWiseData[1]?.totalApp, casteWiseData[2]?.totalApp],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#37b4c4',\r\n '#0f48f5',\r\n '#b90cf2'\r\n ],\r\n hoverBackgroundColor: [\r\n '#37b4c4',\r\n '#0f48f5',\r\n '#b90cf2'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.appTypeDataForChart = {\r\n labels: [`ABY (${atalUserData?.totalApp})`, `Normal (${normalUserData?.totalApp})`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.totalApp, normalUserData?.totalApp],\r\n backgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.componentDataForChart = {\r\n labels: [`Portable (${componentWiseData[1]?.TotalApp})`, `Mini (${componentWiseData[0]?.TotalApp})`, `Drip (${componentWiseData[2]?.TotalApp})`],\r\n datasets: [\r\n {\r\n data: [componentWiseData[1]?.TotalApp, componentWiseData[0]?.TotalApp, componentWiseData[2]?.TotalApp],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#990073',\r\n '#6600ff',\r\n '#00b33c'\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n let yearName = yearWiseArea.map(item => item.FinYear);\r\n let yearVal = yearWiseArea.map(item => item.TotalArea);\r\n\r\n this.yearWiseDataForChart = {\r\n labels: yearName,\r\n datasets: [\r\n {\r\n data: yearVal,\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#990073',\r\n '#6600ff',\r\n '#00b33c'\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n fill: false,\r\n borderColor: documentStyle.getPropertyValue('--blue-500'),\r\n tension: 0.4\r\n },\r\n ],\r\n };\r\n\r\n this.optionsLine = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.6,\r\n plugins: {\r\n legend: {\r\n display: false // Hide the legend\r\n },\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: true\r\n }\r\n },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : value;\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n },\r\n };\r\n\r\n this.options2 = {\r\n responsive: true,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: 'white',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n animation: {\r\n animateScale: true,\r\n animateRotate: true\r\n },\r\n cutout: '0%',\r\n elements: {\r\n arc: {\r\n borderWidth: 0,\r\n borderAlign: 'center',\r\n offset: 30\r\n }\r\n },\r\n };\r\n }\r\n\r\n loadPondPieDataDistrictWise() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n // user wise\r\n const atalUserData = this.pondDistrictWiseDashboardData[0][0];\r\n const normalUserData = this.pondDistrictWiseDashboardData[1][0];\r\n\r\n // caste wise\r\n const casteWiseData = this.pondDistrictWiseDashboardData[2];\r\n\r\n // component wise\r\n // const componentWiseData = this.pondDistrictWiseDashboardData[3];\r\n\r\n // line graph for yearWise area\r\n const yearWiseArea = this.pondDistrictWiseDashboardData[4];\r\n\r\n const completedAppReport = this.pondDistrictWiseDashboardData[5][0];\r\n\r\n this.totalSubsidyDisbursedPond1STage = completedAppReport?.PaymentAmtStage1CAO / 10000000;\r\n this.totalAppCompletedPond1STage = completedAppReport?.PaymentDoneCAOStage1;\r\n this.totalAreaCompletedPond1STage = completedAppReport?.PaymentDoneCAOStage1Area;\r\n\r\n this.totalSubsidyDisbursedPond2STage = completedAppReport?.PaymentAmtStage2CAO / 10000000;\r\n this.totalAppCompletedPond2STage = completedAppReport?.PaymentDoneCAOStage2;\r\n this.totalAreaCompletedPond2STage = completedAppReport?.PaymentDoneCAOStage2Area;\r\n\r\n this.totalSubsidyDisbursedPond3STage = completedAppReport?.PaymentAmtStage3CAO / 10000000;\r\n this.totalAppCompletedPond3STage = completedAppReport?.PaymentDoneCAOStage3;\r\n this.totalAreaCompletedPond3STage = completedAppReport?.PaymentDoneCAOStage3Area;\r\n\r\n\r\n\r\n if (this.showPONDDistrciData) {\r\n this.animateCounter('totalSubsidyDisbursedPond1STage', this.totalSubsidyDisbursedPond1STage);\r\n this.animateCounter('totalAppCompletedPond1STage', this.totalAppCompletedPond1STage);\r\n this.animateCounter('totalAreaCompletedPond1STage', this.totalAreaCompletedPond1STage);\r\n\r\n this.animateCounter('totalSubsidyDisbursedPond2STage', this.totalSubsidyDisbursedPond2STage);\r\n this.animateCounter('totalAppCompletedPond2STage', this.totalAppCompletedPond2STage);\r\n this.animateCounter('totalAreaCompletedPond2STage', this.totalAreaCompletedPond2STage);\r\n\r\n this.animateCounter('totalSubsidyDisbursedPond3STage', this.totalSubsidyDisbursedPond3STage);\r\n this.animateCounter('totalAppCompletedPond3STage', this.totalAppCompletedPond3STage);\r\n this.animateCounter('totalAreaCompletedPond3STage', this.totalAreaCompletedPond3STage);\r\n }\r\n\r\n this.subsidyDataForChart = {\r\n labels: [`Completed App Stage 1 (${completedAppReport?.PaymentDoneCAOStage1})`, `Completed App Stage 2 (${completedAppReport?.PaymentDoneCAOStage2})`, `Completed App Stage 3 (${completedAppReport?.PaymentDoneCAOStage3})`],\r\n datasets: [\r\n {\r\n data: [completedAppReport?.PaymentDoneCAOStage1, completedAppReport?.PaymentDoneCAOStage2, completedAppReport?.PaymentDoneCAOStage3\r\n ],\r\n backgroundColor: [\r\n '#09b328',\r\n '#e8c123',\r\n '#b300b3'\r\n ],\r\n hoverBackgroundColor: [\r\n '#09b328',\r\n '#e8c123',\r\n '#b300b3'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.subsidyAreaDataForChart = {\r\n labels: [`Disbursed Amt Stage 1 (${completedAppReport?.PaymentAmtStage1CAO})`, `Disbursed Amt Stage 2 (${completedAppReport?.PaymentAmtStage2CAO})`, `Disbursed Amt Stage 3 (${completedAppReport?.PaymentAmtStage3CAO})`],\r\n datasets: [\r\n {\r\n data: [completedAppReport?.PaymentAmtStage1CAO, completedAppReport?.PaymentAmtStage2CAO, completedAppReport?.PaymentAmtStage3CAO,\r\n ],\r\n backgroundColor: [\r\n '#b300b3',\r\n '#0000e6',\r\n '#09b328'\r\n ],\r\n hoverBackgroundColor: [\r\n '#b300b3',\r\n '#0000e6',\r\n '#09b328'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.Paymentstage = {\r\n labels: [`Completed Area Stage 1 (${completedAppReport?.PaymentDoneCAOStage1Area})`, `Completed Area Stage 2 (${completedAppReport?.PaymentDoneCAOStage2Area})`, `Completed Area Stage 3 (${completedAppReport?.PaymentDoneCAOStage3Area})`],\r\n datasets: [\r\n {\r\n data: [completedAppReport?.PaymentDoneCAOStage1Area, completedAppReport?.PaymentDoneCAOStage2Area, completedAppReport?.PaymentDoneCAOStage3Area],\r\n backgroundColor: [\r\n '#8c1aff',\r\n '#e67300',\r\n '#09b328'\r\n ],\r\n hoverBackgroundColor: [\r\n '#8c1aff',\r\n '#e67300',\r\n '#09b328'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.casteDataForChart = {\r\n labels: [`Gen (${casteWiseData[0]?.totalApp})`, `BC (${casteWiseData[1]?.totalApp})`, `SC/ST (${casteWiseData[2]?.totalApp})`],\r\n datasets: [\r\n {\r\n data: [casteWiseData[0]?.totalApp, casteWiseData[1]?.totalApp, casteWiseData[2]?.totalApp],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#37b4c4',\r\n '#0f48f5',\r\n '#b90cf2'\r\n ],\r\n hoverBackgroundColor: [\r\n '#37b4c4',\r\n '#0f48f5',\r\n '#b90cf2'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.appTypeDataForChart = {\r\n labels: [`ABY (${atalUserData?.totalApp})`, `Normal (${normalUserData?.totalApp})`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.totalApp, normalUserData?.totalApp],\r\n backgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n // this.componentDataForChart = {\r\n // labels: [`Portable`, `Mini`, `Drip` ],\r\n // datasets: [\r\n // {\r\n // data: [componentWiseData[0]?.TotalApp, componentWiseData[1]?.TotalApp, componentWiseData[2]?.TotalApp],\r\n // backgroundColor: [\r\n // // documentStyle.getPropertyValue('--cyan-700'),\r\n // // documentStyle.getPropertyValue('--pink-600'),\r\n // '#990073',\r\n // '#6600ff',\r\n // '#00b33c'\r\n // ],\r\n // hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n // ],\r\n // borderWidth: 2\r\n // },\r\n // ],\r\n // };\r\n\r\n let yearName = yearWiseArea.map(item => item.FinYear);\r\n let yearVal = yearWiseArea.map(item => item.TotalArea);\r\n\r\n this.yearWiseDataForChart = {\r\n labels: yearName,\r\n datasets: [\r\n {\r\n data: yearVal,\r\n backgroundColor: [\r\n '#990073',\r\n '#6600ff',\r\n '#00b33c'\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n fill: false,\r\n borderColor: documentStyle.getPropertyValue('--blue-500'),\r\n tension: 0.4\r\n },\r\n ],\r\n };\r\n\r\n this.optionsLine = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.6,\r\n plugins: {\r\n legend: {\r\n display: false // Hide the legend\r\n },\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: true\r\n }\r\n },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : value;\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n },\r\n };\r\n\r\n this.options2 = {\r\n responsive: true,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: 'white',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n animation: {\r\n animateScale: true,\r\n animateRotate: true\r\n },\r\n cutout: '0%',\r\n elements: {\r\n arc: {\r\n borderWidth: 0,\r\n borderAlign: 'center',\r\n offset: 15\r\n }\r\n },\r\n };\r\n }\r\n\r\n viewMIConsolidatedReport() {\r\n if (this.userId == 'admin') {\r\n // this.router.navigate(['admin', 'report', 'mi-total-app-report']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['admin', 'report', 'mi-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'cao') {\r\n // this.router.navigate(['cao', 'report', 'mi-total-app-report']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['cao', 'report', 'mi-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'webadmin') {\r\n // this.router.navigate(['cao', 'report', 'mi-total-app-report']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['webadmin', 'report', 'mi-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n else {\r\n // this.router.navigate(['department', 'report', 'mi-total-app-report']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['department', 'report', 'mi-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n }\r\n\r\n viewMIConsolidatedDetails() {\r\n if (this.userId == 'admin') {\r\n // this.router.navigate(['admin', 'report', 'mi-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['admin', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'cao') {\r\n // this.router.navigate(['cao', 'report', 'mi-consolidated-details']);\r\n\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['cao', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'webadmin') {\r\n // this.router.navigate(['cao', 'report', 'mi-consolidated-details']);\r\n\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['webadmin', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else {\r\n // this.router.navigate(['department', 'report', 'mi-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['department', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n }\r\n\r\n\r\n viewPondConsolidatedReport() {\r\n if (this.userId == 'admin') {\r\n // this.router.navigate(['admin', 'report', 'pond-total-app-report']);\r\n // \r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['admin', 'report', 'pond-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'cao') {\r\n // this.router.navigate(['cao', 'report', 'pond-total-app-report']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['cao', 'report', 'pond-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'webadmin') {\r\n // this.router.navigate(['cao', 'report', 'pond-total-app-report']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['webadmin', 'report', 'pond-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n else {\r\n // this.router.navigate(['department', 'report', 'pond-total-app-report']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['department', 'report', 'pond-total-app-report']));\r\n window.open(url, '_blank');\r\n }\r\n }\r\n\r\n viewPondConsolidatedDetails() {\r\n if (this.userId == 'admin') {\r\n // this.router.navigate(['admin', 'report', 'pond-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['admin', 'report', 'pond-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'cao') {\r\n // this.router.navigate(['cao', 'report', 'pond-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['cao', 'report', 'pond-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else if (this.userId == 'webadmin') {\r\n // this.router.navigate(['cao', 'report', 'pond-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['webadmin', 'report', 'pond-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else {\r\n // this.router.navigate(['department', 'report', 'pond-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['department', 'report', 'pond-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n }\r\n}\r\n","\r\n
\r\n\r\n
\r\n \r\n

Dashboard & Consolidated Report Portal 2.0 (FY: {{yearHeadertext}})

\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ 'Selected Fin Year: ' }}{{ yearHeadertext }} Clear Year Filter

\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ 'Selected Fin Year: ' }}{{ yearHeadertext }} Clear Year Filter

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'Subsidy Disbursed (₹): '}}
\r\n
{{ totalSubsidyDisbursed | number}}  Cr.
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'No of Beneficiaries:'}}
\r\n
{{ totalAppCompleted | number}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'Total Benefited Area: '}}
\r\n
{{ totalMIAreaCompleted | number}}  Acre.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n
\r\n
    \r\n
  • \r\n {{ 'Subsidy Disbursed (₹): '}}  \r\n {{ totalSubsidyDisbursed | number }}  Cr.\r\n
  • \r\n
  • \r\n {{ 'Application Completed: '}}  \r\n {{ totalAppCompleted | number }}\r\n
  • \r\n
  • \r\n {{ 'MI Area Completed: '}}  \r\n {{ totalMIAreaCompleted | number }}  Acr.\r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

{{ districtWiseHeader }}

\r\n\r\n \r\n\r\n
\r\n
0\" class=\"field md:col-12 col-12\">\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n {{ 'Stage-I Subsidy Disbursed (₹): '}}  \r\n {{ totalSubsidyDisbursedPond1STage | number: \"1.2-2\" }} Cr.\r\n \r\n
  • \r\n {{ 'Stage-I Completed No.: '}}  \r\n {{ totalAppCompletedPond1STage | number }}\r\n
  • \r\n \r\n
\r\n
\r\n\r\n
\r\n
    \r\n
  • \r\n {{ 'Stage-II Subsidy Disbursed (₹): '}}  \r\n {{ totalSubsidyDisbursedPond2STage | number: \"1.2-2\" }} Cr.\r\n
  • \r\n
  • \r\n {{ 'Stage-II Completed No.: '}}  \r\n {{ totalAppCompletedPond2STage | number }}\r\n
  • \r\n \r\n
\r\n
\r\n\r\n
\r\n
    \r\n
  • \r\n {{ 'Stage-III Subsidy Disbursed (₹): '}}  \r\n {{ totalSubsidyDisbursedPond3STage | number: \"1.2-2\" }} Cr.\r\n
  • \r\n
  • \r\n {{ 'Stage-III Completed No.: '}}  \r\n {{ totalAppCompletedPond3STage | number }}\r\n
  • \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

{{ districtWiseHeader }}

\r\n
\r\n
0\" class=\"field md:col-12 col-12\">\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { VendorMiArea } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { UIChart } from 'primeng/chart';\r\nimport { InnerPageLayoutComponent } from 'src/app/components/layouts/inner-page-layout/inner-page-layout.component';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-consolidated-report',\r\n templateUrl: './consolidated-report.component.html',\r\n styleUrls: ['./consolidated-report.component.scss'],\r\n})\r\nexport class ConsolidatedReportComponent implements OnInit {\r\n @ViewChild('pieChart') pieChartRef: UIChart;\r\n // @ViewChild(\"lineChart\") lineChartRef: UIChart;\r\n consolidateData: any = [];\r\n totalApp: any;\r\n totalArea: any;\r\n verifiedApp: any;\r\n verifiedAppArea: any;\r\n pendingApp: any;\r\n incompleteApp: any;\r\n incompleteAppArea: any;\r\n rejectApp: any;\r\n totalEstimatedApp: any;\r\n totalEstimatedArea: any;\r\n verifiedEstimateApp: any;\r\n verifiedEstimateArea: any;\r\n pendingEstimateApp: any;\r\n verifiedEstApproved: any;\r\n verifiedEstApprovedArea: any;\r\n pendingEstApproved: any;\r\n rejectedEstVerified: any;\r\n challanGenerated: any;\r\n challanDeposited: any;\r\n BOQUploaded: any;\r\n BOQMIArea: any;\r\n BOQPending: any;\r\n PVCompleted: any;\r\n PV_MI_Area: any;\r\n PV_Pending_with_JE: any;\r\n PV_Pending_with_XEN: any;\r\n pending_Subsidy_Calculation: any;\r\n applicationswithDMIforSubsidy_Approval: any;\r\n applications_Approved_at_Administartion: any;\r\n subsisdy_Approved_MI_Area: any;\r\n assistanceAmount: any;\r\n pending_Application_For_Payment_By_CAO: any;\r\n payment_Done_Application_By_CAO: any;\r\n payment_done_MI_Area: any;\r\n\r\n grandTotalApp: any;\r\n grandTotalArea: any;\r\n grandVerifiedApp: any;\r\n grandVerifiedAppArea: any;\r\n grandPendingApp: any;\r\n grandIncompleteApp: any;\r\n grandIncompleteAppArea: any;\r\n grandRejectApp: any;\r\n grandTotalEstimatedApp: any;\r\n grandTotalEstimatedArea: any;\r\n grandVerifiedEstimateApp: any;\r\n grandVerifiedEstimateArea: any;\r\n grandPendingEstimateApp: any;\r\n grandVerifiedEstApproved: any;\r\n grandVerifiedEstApprovedArea: any;\r\n grandPendingEstApproved: any;\r\n grandRejectedEstVerified: any;\r\n grandChallanGenerated: any;\r\n grandChallanDeposited: any;\r\n grandBOQUploaded: any;\r\n grandBOQMIArea: any;\r\n grandBOQPending: any;\r\n grandPVCompleted: any;\r\n grandPV_MI_Area: any;\r\n grandPV_Pending_with_JE: any;\r\n grandPV_Pending_with_XEN: any;\r\n grandPending_Subsidy_Calculation: any;\r\n grandApplicationswithDMIforSubsidy_Approval: any;\r\n grandApplications_Approved_at_Administartion: any;\r\n grandSubsisdy_Approved_MI_Area: any;\r\n grandAssistanceAmount: any;\r\n grandPending_Application_For_Payment_By_CAO: any;\r\n grandPayment_Done_Application_By_CAO: any;\r\n grandPayment_done_MI_Area: any;\r\n\r\n arrayIndex: number;\r\n tempConsolidateData: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: VendorMiArea[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n public displayMaximizable: boolean;\r\n public displayMaximizable_totalApp: boolean;\r\n public displayMaximizable_pendingApp: boolean;\r\n public drilldownDetails: any;\r\n public pendingType: any;\r\n public displayMaximizable_rejectedApp: any;\r\n public vendorName: any;\r\n public name: any;\r\n public selectedYear: any;\r\n public financialYears: any[] = [];\r\n public routePath: any;\r\n public subjectSub: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public isChartLoading: boolean = false;\r\n\r\n public displayPendingDetailUser: boolean = false;\r\n public displayPendingDetailUserWise: boolean = false;\r\n public summaryData: any = [];\r\n\r\n public data: any;\r\n public data1: any;\r\n public options: any;\r\n public options1: any;\r\n public count: number = 0;\r\n public isFinYearChanged: boolean = false;\r\n public cropTypeList: any[];\r\n public cropBasedNames: any;\r\n public selectedCrop: any;\r\n public selectedProgram: any;\r\n public program: any;\r\n public caste: any;\r\n public selectedCaste: any;\r\n public appType: any;\r\n public selectedAppType: any;\r\n public districtsArray: any = [];\r\n public distWiseTotalApp: any = [];\r\n\r\n public finYearData: any = [\r\n {\r\n year: 'All',\r\n code: 0,\r\n },\r\n {\r\n year: '2022-23',\r\n code: 1,\r\n },\r\n {\r\n year: '2023-24',\r\n code: 2,\r\n },\r\n ];\r\n public selectedFinYear: any = { year: 'All', code: 0 };\r\n\r\n // for MI\r\n public pieChartData: any = [];\r\n public lineGraphData: any = [];\r\n public card1CountData: any = [];\r\n public districtWiseData: any = [];\r\n\r\n // for Pond\r\n public pondCard1CountData: any = [];\r\n\r\n // for solar\r\n public solarCard1CountData: any = [];\r\n\r\n // for waterCourse\r\n public waterCourseCard1CountData: any = [];\r\n\r\n \r\n public isAdminLogin: boolean = false;\r\n public isMIChecked: boolean = false;\r\n public isPondChecked: boolean = false;\r\n public isSolarChecked: boolean = false;\r\n public isWaterCourseChecked: boolean = false;\r\n\r\n public userIdUpperCase: any;\r\n @ViewChild('divClick') divClick: ElementRef;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private flService: FarmerLandDetailService,\r\n private vendorService: VendorDashboardService,\r\n public appMain: InnerPageLayoutComponent,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n // setTimeout(() => {\r\n // this.divClick.nativeElement.click();\r\n // }, 200);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userIdUpperCase = JSON.parse(payload)?.sub\r\n\r\n this.userID = (JSON.parse(payload)?.sub).toLowerCase();\r\n\r\n console.log(this.userID);\r\n\r\n this.isMIChecked = true;\r\n this.isPondChecked = false;\r\n this.isSolarChecked = false;\r\n this.isWaterCourseChecked = false;\r\n\r\n // if (sessionStorage.getItem('financialYear')) {\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n // }\r\n console.log(this.userID)\r\n if(this.userID == 'admin'){\r\n this.isAdminLogin = true;\r\n // this.isAdminLogin = false;\r\n }else{\r\n this.isAdminLogin = false;\r\n }\r\n \r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'MI_Consolidate_report');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'MI_Consolidate_report'\r\n );\r\n },\r\n },\r\n ];\r\n if(this.userID =='dd-ew'){\r\n this.isMIChecked = false;\r\n this.isPondChecked = true;\r\n }\r\n console.log(this.userID.length ,\"this.userID \")\r\n console.log(this.userID =='dd-ew',this.isPondChecked,\"kkk\");\r\n\r\n if(this.userID == 'dd-ew'){\r\n this.onComponentBoxClick('Pond')\r\n }else{\r\n this.onComponentBoxClick('MI')\r\n // this.onFinYearChange();\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n onComponentBoxClick(val){\r\n if(val == 'MI'){\r\n this.isMIChecked = true;\r\n this.isPondChecked = false;\r\n this.isSolarChecked = false;\r\n this.isWaterCourseChecked = false;\r\n }else if(val == 'Pond'){\r\n this.isMIChecked = false;\r\n this.isPondChecked = true;\r\n this.isSolarChecked = false;\r\n this.isWaterCourseChecked = false;\r\n }else if(val == 'Solar'){\r\n this.isMIChecked = false;\r\n this.isPondChecked = false;\r\n this.isSolarChecked = true;\r\n this.isWaterCourseChecked = false;\r\n }else if(val == 'WaterCourse'){\r\n this.isMIChecked = false;\r\n this.isPondChecked = false;\r\n this.isSolarChecked = false;\r\n this.isWaterCourseChecked = true;\r\n }\r\n\r\n this.onFinYearChange();\r\n }\r\n\r\n refreshData(){\r\n let val = this.selectedFinYear.year;\r\n if (this.selectedFinYear.year == 'All') {\r\n val = '';\r\n }\r\n\r\n if(this.userID == 'admin' || this.userID == 'cao'){\r\n if(this.isMIChecked){\r\n // this.checkMIDataInSessionStorage(val);\r\n this.getMICard1CountData(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }else if(this.isPondChecked){\r\n // this.checkPondDataInSessionStorage(val);\r\n this.getPondCard1CountData(val);\r\n }\r\n // else if(this.isSolarChecked){\r\n // this.getSolarCard1CountData(val);\r\n // }else if(this.isWaterCourseChecked){\r\n // this.getWaterCourseCard1CountData(val);\r\n // }\r\n }else if(this.userID == 'dmicada'){\r\n // this.checkMIDataInSessionStorage(val);\r\n this.getMICard1CountData(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }else if(this.userID == 'dd-ew'){\r\n // this.checkPondDataInSessionStorage(val);\r\n this.getPondCard1CountData(val);\r\n }\r\n }\r\n\r\n onFinYearChange() {\r\n // console.log(this.selectedFinYear);\r\n let val = this.selectedFinYear.year;\r\n if (this.selectedFinYear.year == 'All') {\r\n val = '';\r\n }\r\n\r\n if(this.userID == 'admin' || this.userID == 'cao'){\r\n if(this.isMIChecked){\r\n // this.getMICard1CountData(val);\r\n this.checkMIDataInSessionStorage(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }else if(this.isPondChecked){\r\n // this.getPondCard1CountData(val);\r\n this.checkPondDataInSessionStorage(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }else if(this.isSolarChecked){\r\n this.getSolarCard1CountData(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }else if(this.isWaterCourseChecked){\r\n this.getWaterCourseCard1CountData(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }\r\n }else if(this.userID == 'dmicada'){\r\n // this.getMICard1CountData(val);\r\n this.checkMIDataInSessionStorage(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }else if(this.userID == 'dd-ew'){\r\n // this.getPondCard1CountData(val);\r\n this.checkPondDataInSessionStorage(val);\r\n // this.getDistrictWiseData(val);\r\n // this.getLineGraphData(val);\r\n }\r\n }\r\n\r\n onClickMIBox(name, actionId){\r\n const finYear = this.selectedFinYear.year;\r\n\r\n // console.log(this.selectedFinYear)\r\n console.log(this.userID,\"this.userID\");\r\n if(this.userID == 'admin'){\r\n this.router.navigate(['admin', 'report', 'consolidated-report', actionId, finYear]);\r\n }\r\n else if(this.userID == 'cao'){\r\n this.router.navigate(['cao', 'report', 'consolidated-report', actionId, finYear]);\r\n }\r\n else{\r\n this.router.navigate(['department', 'report', 'consolidated-report', actionId, finYear]);\r\n }\r\n }\r\n\r\n onClickPondBox(name, actionId){\r\n const finYear = this.selectedFinYear.year;\r\n\r\n // console.log(this.selectedFinYear)\r\n console.log(this.userID,\"this.userID\");\r\n if(this.userID == 'admin'){\r\n this.router.navigate(['admin', 'report', 'pond-report', actionId, finYear]);\r\n\r\n }\r\n else if(this.userID == 'cao'){\r\n this.router.navigate(['cao', 'report', 'pond-report', actionId, finYear]);\r\n }\r\n else{\r\n this.router.navigate(['ew-department', 'report', 'pond-report', actionId, finYear]);\r\n }\r\n }\r\n\r\n onClickSolarBox(name, count){\r\n\r\n }\r\n\r\n onClickWaterCourseBox(name, count){\r\n\r\n }\r\n\r\n checkPondDataInSessionStorage(finYear){\r\n if (finYear == '' && window.sessionStorage.getItem('PondDashboardDataAll')) {\r\n let val = JSON.parse(window.sessionStorage.getItem('PondDashboardDataAll'));\r\n this.pondCard1CountData = val[0];\r\n this.loadPieChartData();\r\n }\r\n else if (finYear == '2022-23' && window.sessionStorage.getItem('PondDashboardData2223')) {\r\n let val = JSON.parse(window.sessionStorage.getItem('PondDashboardData2223'));\r\n this.pondCard1CountData = val[0];\r\n this.loadPieChartData();\r\n }\r\n else if (finYear == '2023-24' && window.sessionStorage.getItem('PondDashboardData2324')) {\r\n let val = JSON.parse(window.sessionStorage.getItem('PondDashboardData2324'));\r\n this.pondCard1CountData = val[0];\r\n this.loadPieChartData();\r\n }\r\n else{\r\n this.getPondCard1CountData(finYear);\r\n }\r\n }\r\n\r\n checkMIDataInSessionStorage(finYear){\r\n if (finYear == '' && window.sessionStorage.getItem('MIDashboardDataAll')) {\r\n let val = JSON.parse(window.sessionStorage.getItem('MIDashboardDataAll'));\r\n this.card1CountData = val[0];\r\n this.loadPieChartData();\r\n }\r\n else if (finYear == '2022-23' && window.sessionStorage.getItem('MIDashboardData2223')) {\r\n let val = JSON.parse(window.sessionStorage.getItem('MIDashboardData2223'));\r\n this.card1CountData = val[0];\r\n this.loadPieChartData();\r\n }\r\n else if (finYear == '2023-24' && window.sessionStorage.getItem('MIDashboardData2324')) {\r\n let val = JSON.parse(window.sessionStorage.getItem('MIDashboardData2324'));\r\n this.card1CountData = val[0];\r\n this.loadPieChartData();\r\n }\r\n else{\r\n this.getMICard1CountData(finYear);\r\n }\r\n }\r\n\r\n getMICard1CountData(finYear) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getMIAggregateTabsDataNew(finYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.card1CountData = data[0];\r\n this.loadPieChartData();\r\n\r\n //save data in session storage\r\n if (finYear == '') {\r\n window.sessionStorage.setItem('MIDashboardDataAll', JSON.stringify(data));\r\n }\r\n else if (finYear == '2022-23') {\r\n window.sessionStorage.setItem('MIDashboardData2223', JSON.stringify(data));\r\n }\r\n else if (finYear == '2023-24') {\r\n window.sessionStorage.setItem('MIDashboardData2324', JSON.stringify(data));\r\n }\r\n\r\n } else {\r\n this.card1CountData = [];\r\n this.loadPieChartData();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.card1CountData = [];\r\n this.loadPieChartData();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n getLineGraphData(finYear) {\r\n let sub = this.reportsService\r\n .getSubsidyDisbursedAgg(finYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.lineGraphData = data;\r\n this.loadLineGraphData();\r\n } else {\r\n this.lineGraphData = [];\r\n this.loadBarGraphData();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n getDistrictWiseData(finYear) {\r\n let sub = this.reportsService\r\n .aggDataDistrictWiseForGraph(finYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.districtWiseData = data;\r\n this.loadBarGraphData();\r\n // this.loadPieChartData();\r\n // this.loadPieChartData();\r\n } else {\r\n this.districtWiseData = [];\r\n this.loadBarGraphData();\r\n // this.loadPieChartData();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.districtWiseData = [];\r\n this.loadBarGraphData();\r\n // this.loadPieChartData();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getPondCard1CountData(finYear) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getPondAggregateTabsDataNew(finYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.pondCard1CountData = data[0];\r\n this.loadPieChartData();\r\n\r\n //save data in session storage\r\n if (finYear == '') {\r\n window.sessionStorage.setItem('PondDashboardDataAll', JSON.stringify(data));\r\n }\r\n else if (finYear == '2022-23') {\r\n window.sessionStorage.setItem('PondDashboardData2223', JSON.stringify(data));\r\n }\r\n else if (finYear == '2023-24') {\r\n window.sessionStorage.setItem('PondDashboardData2324', JSON.stringify(data));\r\n }\r\n\r\n } else {\r\n this.pondCard1CountData = [];\r\n this.loadPieChartData();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.pondCard1CountData = [];\r\n this.loadPieChartData();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getSolarCard1CountData(finYear) {\r\n // let sub = this.reportsService\r\n // .getConsolidatedAggReportNew2(finYear)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // if (data?.length > 0) {\r\n // this.pondCard1CountData = data[0];\r\n // } else {\r\n // this.pondCard1CountData = [];\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Data Not Available',\r\n // });\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.pondCard1CountData = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n\r\n this.solarCard1CountData = {\r\n // totalApp: 50000,\r\n // TotalApprovedApp: 45000,\r\n // challanGenerated: 30450,\r\n // installDone: 21500,\r\n totalApp: 0,\r\n TotalApprovedApp: 0,\r\n challanGenerated: 0,\r\n installDone: 0,\r\n }\r\n this.loadPieChartData();\r\n }\r\n\r\n getWaterCourseCard1CountData(finYear) {\r\n // let sub = this.reportsService\r\n // .getConsolidatedAggReportNew2(finYear)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // if (data?.length > 0) {\r\n // this.pondCard1CountData = data[0];\r\n // } else {\r\n // this.pondCard1CountData = [];\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Data Not Available',\r\n // });\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.pondCard1CountData = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n\r\n this.waterCourseCard1CountData = {\r\n // totalApp: 45300,\r\n // TotalApprovedApp: 34200,\r\n // workDone: 20500,\r\n totalApp: 0,\r\n TotalApprovedApp: 0,\r\n workDone: 0\r\n }\r\n this.loadPieChartData();\r\n }\r\n\r\n // graph1\r\n loadBarGraphData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const textColorSecondary = documentStyle.getPropertyValue('--text-color-secondary');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n \r\n const districtArray = this.districtWiseData.map((item) => item['District']);\r\n const totalApp = this.districtWiseData.map((item) => item['totalApp']);\r\n const verifiedApp = this.districtWiseData.map(\r\n (item) => item['VerifiedApp']\r\n );\r\n const incomplete = this.districtWiseData.map(\r\n (item) => item['IncompleteApp']\r\n );\r\n // const rejected = this.districtWiseData.map(item => item[\"rejectApp\"]);\r\n\r\n // console.log(districtArray);\r\n this.data1 = {\r\n labels: districtArray,\r\n datasets: [\r\n {\r\n label: 'Total App',\r\n backgroundColor: documentStyle.getPropertyValue('--blue-500'),\r\n borderColor: documentStyle.getPropertyValue('--blue-500'),\r\n data: totalApp,\r\n },\r\n {\r\n label: 'Verified App',\r\n backgroundColor: documentStyle.getPropertyValue('--green-500'),\r\n borderColor: documentStyle.getPropertyValue('--green-500'),\r\n data: verifiedApp,\r\n },\r\n {\r\n label: 'Incomplete',\r\n backgroundColor: documentStyle.getPropertyValue('--pink-500'),\r\n borderColor: documentStyle.getPropertyValue('--pink-500'),\r\n data: incomplete,\r\n },\r\n ],\r\n };\r\n\r\n // this.options1 = {\r\n // scales: {\r\n // yAxes: [{\r\n // ticks: {\r\n // stepSize: 2, // Set the step size for the y-axis ticks\r\n // beginAtZero: true // Start the y-axis at zero\r\n // }\r\n // }]\r\n // }\r\n // };\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n legend: {\r\n labels: {\r\n color: textColor,\r\n },\r\n },\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: textColorSecondary,\r\n font: {\r\n weight: 800,\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false,\r\n },\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 200,\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n },\r\n // scales: {\r\n // yAxes: [{\r\n // ticks: {\r\n // stepSize: 2,\r\n // beginAtZero: true\r\n // }\r\n // }]\r\n // }\r\n // scales: {\r\n // y: [{\r\n // scaleLabel: {\r\n // display: true,\r\n // labelString: '100' // Change this to your desired y-axis label\r\n // }\r\n // }]\r\n // }\r\n };\r\n }\r\n\r\n // graph2\r\n loadPieChartData() {\r\n // let labels = [];\r\n // let areaData = [];\r\n // let backgroundColors = [];\r\n // for (let index = 0; index < this.districtWiseData.length; index++) {\r\n // labels.push(this.districtWiseData[index].District)\r\n // areaData.push(this.districtWiseData[index].totalApp)\r\n // const randomColor = \"#\" + ((1 << 24) * Math.random() | 0).toString(16);\r\n // backgroundColors.push(randomColor)\r\n // }\r\n // this.pieChartData.labels = labels;\r\n // this.pieChartData.datasets[0].data = areaData;\r\n // this.pieChartData.datasets[0].backgroundColor = backgroundColors;\r\n // this.pieChartRef.reinit();\r\n\r\n\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n\r\n let totalApproved = 0;\r\n let totalPending = 0;\r\n let totalRejectedApp = 0;\r\n\r\n if(this.isMIChecked){\r\n totalApproved = this.card1CountData?.CompletedApps;\r\n totalPending = this.card1CountData?.UnProcessedApps;\r\n totalRejectedApp = this.card1CountData?.rejectedApp;\r\n }else if(this.isPondChecked){\r\n totalApproved = this.pondCard1CountData?.CompletedApps;\r\n totalPending = this.pondCard1CountData?.UnProcessedApps;\r\n totalRejectedApp = this.pondCard1CountData?.rejectedApp\r\n }else if(this.isSolarChecked){\r\n totalApproved = this.solarCard1CountData?.TotalApprovedApp;\r\n totalPending = this.solarCard1CountData?.PendingApp;\r\n totalRejectedApp = this.solarCard1CountData?.rejectedApp; \r\n }else if(this.isWaterCourseChecked){\r\n totalApproved = this.waterCourseCard1CountData?.TotalApprovedApp;\r\n totalPending = this.waterCourseCard1CountData?.PendingApp;\r\n totalRejectedApp = this.waterCourseCard1CountData?.rejectedApp;\r\n }\r\n\r\n this.pieChartData = {\r\n labels: [`Total Completed Application (${totalApproved})`, `Under Process Applications (${totalPending})`, `Rejected Applications (${totalRejectedApp})`],\r\n datasets: [\r\n {\r\n data: [totalApproved, totalPending, totalRejectedApp],\r\n backgroundColor: [\r\n documentStyle.getPropertyValue('--green-500'),\r\n documentStyle.getPropertyValue('--blue-500'),\r\n documentStyle.getPropertyValue('--pink-500'),\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--green-400'),\r\n documentStyle.getPropertyValue('--blue-400'),\r\n documentStyle.getPropertyValue('--pink-400'),\r\n ],\r\n },\r\n ],\r\n };\r\n\r\n this.options = {\r\n plugins: {\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: textColor,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n\r\n // graph3\r\n loadLineGraphData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const textColorSecondary = documentStyle.getPropertyValue(\r\n '--text-color-secondary'\r\n );\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n let month = this.lineGraphData.map((val) => val['MonthYear']);\r\n let recievedCount = this.lineGraphData.map((val) => val['TotalAppForLot']);\r\n let disbursedCount = this.lineGraphData.map(\r\n (val) => val['TotalAppDisbursed']\r\n );\r\n\r\n this.lineGraphData = {\r\n labels: month,\r\n datasets: [\r\n {\r\n label: 'Recieved Count',\r\n data: recievedCount,\r\n fill: false,\r\n borderColor: documentStyle.getPropertyValue('--blue-500'),\r\n tension: 0.4,\r\n },\r\n {\r\n label: 'Disbursed Dataset',\r\n data: disbursedCount,\r\n fill: false,\r\n borderColor: documentStyle.getPropertyValue('--green-500'),\r\n tension: 0.4,\r\n },\r\n ],\r\n };\r\n\r\n this.options = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.6,\r\n plugins: {\r\n legend: {\r\n labels: {\r\n color: textColor,\r\n },\r\n },\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: textColorSecondary,\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false,\r\n },\r\n },\r\n y: {\r\n ticks: {\r\n color: textColorSecondary,\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false,\r\n },\r\n },\r\n },\r\n };\r\n\r\n // this.lineGraphData.labels = [...Horticulturelabels, ...Agriculturelabels, ...MICADAlabels];\r\n // this.lineGraphData.datasets[0].data = [...HorticulturemiAreaData, ...AgriculturemiAreaData, ...MICADAmiAreaData];\r\n // this.lineGraphData.datasets[1].data = [...HorticultureapplocationDataData, ...AgricultureapplocationDataData, ...MICADAapplocationDataData];\r\n // this.lineChartRef.reinit();\r\n }\r\n\r\n\r\n // not in use\r\n getChartData(selectedYear: any) {\r\n this.isChartLoading = true;\r\n\r\n let reqBody = {\r\n \"financialYear\": selectedYear,\r\n \"district\": '',\r\n \"block\": '',\r\n \"constituency\": '',\r\n \"village\": '',\r\n \"cropid\": 0,\r\n \"caste\": '',\r\n \"isABY\": ''\r\n }\r\n\r\n let sub = this.reportsService\r\n .getConsolidatedAggReport(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.isChartLoading = false;\r\n if (data?.length > 0) {\r\n this.summaryData = data[0];\r\n this.graphData();\r\n } else {\r\n this.summaryData = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.isChartLoading = false;\r\n this.summaryData = [];\r\n this.graphData();\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Chart Data',\r\n // '',\r\n // new Date(),\r\n // err\r\n // );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n // not in use\r\n loadAllMIGraphData() {\r\n let sub = this.reportsService\r\n .miCanalTubewellApplicationFromTBL()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log(data);\r\n\r\n if (data?.length > 0) {\r\n // console.log(data);\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n // not in use\r\n loadAllPondGraphData() {\r\n let sub = this.reportsService\r\n .pondCanalTubewellApplicationFromTBL()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log(data);\r\n\r\n if (data?.length > 0) {\r\n // console.log(data);\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n // not in use\r\n loadData(selectedYear: any) {\r\n this.loading = true;\r\n\r\n let sub = this.reportsService\r\n .getConsolidated_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Report',\r\n // '',\r\n // new Date(),\r\n // 'Success'\r\n // );\r\n // // this.loader.close();\r\n\r\n if (data?.length > 0) {\r\n this.consolidateData = data;\r\n // console.log(this.consolidateData);\r\n this.districtsArray = this.consolidateData.map(\r\n (item) => item['District']\r\n );\r\n this.distWiseTotalApp = this.consolidateData.map(\r\n (item) => item['totalApp']\r\n );\r\n // console.log(this.districtsArray);\r\n // this.loadPieChartData();\r\n\r\n this.appVerificationModel = data;\r\n this.tempConsolidateData = data;\r\n this.arrayIndex = 0;\r\n this.calculateGrandTotal();\r\n // this.applyNewGraph1Data();\r\n this.loading = false;\r\n } else {\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Report',\r\n // '',\r\n // new Date(),\r\n // err\r\n // );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Financial Year': this.selectedYear == '' ? 'All' : this.selectedYear,\r\n District: d.District,\r\n // Block: d.Block,\r\n // Constituency: d.Constituency,\r\n '': '',\r\n 'total App(application approval)': d.totalApp,\r\n 'Total Area(application approval)': d.TotalArea,\r\n 'Verified App(application approval)': d.VerifiedApp,\r\n 'verified App Area(application approval)': d.verifiedAppArea,\r\n 'Pending App(application approval)': d.PendingApp,\r\n 'incomplete App Area(application approval)': d.incompleteAppArea,\r\n 'reject App(application approval)': d.rejectApp,\r\n ' ': '',\r\n 'total Estimated App(estimate)': d.totalEstimatedApp,\r\n 'total Estimated Area(estimate)': d.totalEstimatedArea,\r\n 'pending Estimate App(estimate)': d.pendingEstimateApp,\r\n ' ': ' ',\r\n 'verified Estimate App (estimate Approval)': d.verifiedEstimateApp,\r\n 'verified Estimate Area (estimate Approval)': d.verifiedEstimateArea,\r\n\r\n 'verified Est Approved (estimate Approval)': d.verifiedEstApproved,\r\n 'verified Est Approved Area (estimate Approval)':\r\n d.verifiedEstApprovedArea,\r\n 'pending Est Approved (estimate Approval)': d.pendingEstApproved,\r\n 'rejected Est Verified (estimate Approval)': d.rejectedEstVerified,\r\n ' ': ' ',\r\n 'Challan Generated(challan)': d.ChallanGenerated,\r\n 'Challan Deposited(challan)': d.ChallanDeposited,\r\n ' ': ' ',\r\n 'BOQ Uploaded(BOQ)': d.BOQUploaded,\r\n 'BOQ MI Area(BOQ)': d.BOQMIArea,\r\n 'BOQ Pending(BOQ)': d.BOQPending,\r\n ' ': ' ',\r\n 'PV Completed(PV)': d.PVCompleted,\r\n 'PV MI Area(PV)': d.PV_MI_Area,\r\n 'PV Pending with JE(PV)': d.PV_Pending_with_JE,\r\n 'PV Pending with XEN(PV)': d.PV_Pending_with_XEN,\r\n ' ': ' ',\r\n 'Pending Subsidy Calculation(SUBSIDY CAL)':\r\n d.Pending_Subsidy_Calculation,\r\n 'Applications with DMI for Subsidy_Approval(SUBSIDY CAL)':\r\n d.ApplicationswithDMIforSubsidy_Approval,\r\n 'Applications Approved at Administartion(SUBSIDY CAL)':\r\n d.Applications_Approved_at_Administartion,\r\n 'Subsisdy Approved MI Area(SUBSIDY CAL)': d.Subsisdy_Approved_MI_Area,\r\n 'Assistance Amount(SUBSIDY CAL)': d.AssistanceAmount,\r\n ' ': ' ',\r\n 'Pending Application For Payment By CAO(SUBSIDY )':\r\n d.Pending_Application_For_Payment_By_CAO,\r\n 'Payment Done Application By CAO(SUBSIDY )':\r\n d.Payment_Done_Application_By_CAO,\r\n 'Payment done MI Area(SUBSIDY )': d.Payment_done_MI_Area,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {\r\n field: this.selectedYear == '' ? 'All' : this.selectedYear,\r\n header: 'Finacial Year',\r\n },\r\n { field: 'District', header: 'District' },\r\n // { field: 'Block', header: 'Block' },\r\n // { field: 'Constituency', header: 'Constituency' },\r\n { field: 'totalApp', header: 'Total App' },\r\n { field: 'TotalArea', header: 'Total Area' },\r\n { field: 'VerifiedApp', header: 'Verf App' },\r\n { field: 'verifiedAppArea', header: 'verf App Area' },\r\n { field: 'PendingApp', header: 'Pending App' },\r\n { field: 'incompleteAppArea', header: 'Incomplete App Area' },\r\n { field: 'rejectApp', header: 'Reject App' },\r\n { field: 'totalEstimatedApp', header: 'Total Est App' },\r\n { field: 'totalEstimatedArea', header: 'Vendor Name' },\r\n { field: 'verifiedEstimateApp', header: 'Verf EstApp' },\r\n { field: 'verifiedEstimateArea', header: 'Verf Est Area' },\r\n { field: 'pendingEstimateApp', header: 'Pending Est App' },\r\n { field: 'verifiedEstApproved', header: 'Verf Est Approved' },\r\n { field: 'verifiedEstApprovedArea', header: 'Verf Est Approved Area' },\r\n { field: 'pendingEstApproved', header: 'Pending Est Approved' },\r\n { field: 'rejectedEstVerified', header: 'Rejected Est verf' },\r\n { field: 'ChallanGenerated', header: 'Challan Gen' },\r\n { field: 'ChallanDeposited', header: 'Challan Dep' },\r\n { field: 'BOQUploaded', header: 'BOQ Uploaded' },\r\n { field: 'BOQMIArea', header: 'BOQ MI Area' },\r\n { field: 'BOQPending', header: 'BOQ Pending' },\r\n { field: 'PVCompleted', header: 'PV Completed' },\r\n { field: 'PV_MI_Area', header: 'PV MI Area' },\r\n { field: 'PV_Pending_with_JE', header: 'PV Pending with JE' },\r\n { field: 'PV_Pending_with_XEN', header: 'PV Pending with XEN' },\r\n { field: 'Pending_Subsidy_Calculation', header: 'Pending Subsidy Cal' },\r\n {\r\n field: 'ApplicationswithDMIforSubsidy_Approval',\r\n header: 'App with DMI for Subsidy_Approval',\r\n },\r\n {\r\n field: 'Applications_Approved_at_Administartion',\r\n header: 'App Approved at Admin',\r\n },\r\n {\r\n field: 'Subsisdy_Approved_MI_Area',\r\n header: 'Subsisdy Approved MI Area',\r\n },\r\n { field: 'AssistanceAmount', header: 'Assistance Amt' },\r\n {\r\n field: 'Pending_Application_For_Payment_By_CAO',\r\n header: 'Pending App For Payment By CAO',\r\n },\r\n {\r\n field: 'Payment_Done_Application_By_CAO',\r\n header: 'Payment Done App By CAO',\r\n },\r\n { field: 'Payment_done_MI_Area', header: 'Payment done MI Area' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default({ orientation: 'landscape' });\r\n doc.autoTable(this.exportColumns, modelData, {\r\n styles: { fontSize: 2 },\r\n });\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempConsolidateData = event.filteredValue;\r\n this.arrayIndex = 0;\r\n this.calculateTotalApp();\r\n }\r\n onPage(event: any) {\r\n this.arrayIndex = event.first;\r\n this.calculateTotalApp();\r\n }\r\n calculateTotalApp() {\r\n this.totalApp = 0;\r\n this.totalArea = 0;\r\n this.incompleteAppArea = 0;\r\n this.verifiedApp = 0;\r\n this.verifiedAppArea = 0;\r\n this.pendingApp = 0;\r\n this.incompleteApp = 0;\r\n this.incompleteAppArea = 0;\r\n this.rejectApp = 0;\r\n this.totalEstimatedApp = 0;\r\n this.totalEstimatedArea = 0;\r\n this.verifiedEstimateApp = 0;\r\n this.verifiedEstimateArea = 0;\r\n this.pendingEstimateApp = 0;\r\n this.verifiedEstApproved = 0;\r\n this.verifiedEstApprovedArea = 0;\r\n this.pendingEstApproved = 0;\r\n this.rejectedEstVerified = 0;\r\n this.challanGenerated = 0;\r\n this.challanDeposited = 0;\r\n this.BOQUploaded = 0;\r\n this.BOQMIArea = 0;\r\n this.BOQPending = 0;\r\n this.PVCompleted = 0;\r\n this.PV_MI_Area = 0;\r\n this.PV_Pending_with_JE = 0;\r\n this.PV_Pending_with_XEN = 0;\r\n this.pending_Subsidy_Calculation = 0;\r\n this.applicationswithDMIforSubsidy_Approval = 0;\r\n this.applications_Approved_at_Administartion = 0;\r\n this.subsisdy_Approved_MI_Area = 0;\r\n this.assistanceAmount = 0;\r\n this.pending_Application_For_Payment_By_CAO = 0;\r\n this.payment_Done_Application_By_CAO = 0;\r\n this.payment_done_MI_Area = 0;\r\n for (\r\n let i = this.arrayIndex;\r\n this.tempConsolidateData.length > 10\r\n ? i < this.arrayIndex + 10\r\n : i < this.tempConsolidateData.length;\r\n i++\r\n ) {\r\n this.totalApp += this.tempConsolidateData[i].totalApp;\r\n this.totalArea += this.tempConsolidateData[i].TotalArea;\r\n this.verifiedApp += this.tempConsolidateData[i].VerifiedApp;\r\n this.verifiedAppArea += this.tempConsolidateData[i].verifiedAppArea;\r\n this.pendingApp += this.tempConsolidateData[i].PendingApp;\r\n this.incompleteApp += this.tempConsolidateData[i].IncompleteApp;\r\n this.incompleteAppArea += this.tempConsolidateData[i].incompleteAppArea;\r\n this.rejectApp += this.tempConsolidateData[i].rejectApp;\r\n this.totalEstimatedApp += this.tempConsolidateData[i].totalEstimatedApp;\r\n this.totalEstimatedArea += this.tempConsolidateData[i].totalEstimatedArea;\r\n this.verifiedEstimateApp +=\r\n this.tempConsolidateData[i].verifiedEstimateApp;\r\n this.verifiedEstimateArea +=\r\n this.tempConsolidateData[i].verifiedEstimateArea;\r\n this.pendingEstimateApp += this.tempConsolidateData[i].pendingEstimateApp;\r\n this.verifiedEstApproved +=\r\n this.tempConsolidateData[i].verifiedEstApproved;\r\n this.verifiedEstApprovedArea +=\r\n this.tempConsolidateData[i].verifiedEstApprovedArea;\r\n this.pendingEstApproved += this.tempConsolidateData[i].pendingEstApproved;\r\n this.rejectedEstVerified +=\r\n this.tempConsolidateData[i].rejectedEstVerified;\r\n this.challanGenerated += this.tempConsolidateData[i].ChallanGenerated;\r\n this.challanDeposited += this.tempConsolidateData[i].ChallanDeposited;\r\n this.BOQUploaded += this.tempConsolidateData[i].BOQUploaded;\r\n this.BOQMIArea += this.tempConsolidateData[i].BOQMIArea;\r\n this.BOQPending += this.tempConsolidateData[i].BOQPending;\r\n this.PVCompleted += this.tempConsolidateData[i].PVCompleted;\r\n this.PV_MI_Area += this.tempConsolidateData[i].PV_MI_Area;\r\n this.PV_Pending_with_JE += this.tempConsolidateData[i].PV_Pending_with_JE;\r\n this.PV_Pending_with_XEN +=\r\n this.tempConsolidateData[i].PV_Pending_with_XEN;\r\n this.pending_Subsidy_Calculation +=\r\n this.tempConsolidateData[i].Pending_Subsidy_Calculation;\r\n this.applicationswithDMIforSubsidy_Approval +=\r\n this.tempConsolidateData[i].ApplicationswithDMIforSubsidy_Approval;\r\n this.applications_Approved_at_Administartion +=\r\n this.tempConsolidateData[i].Applications_Approved_at_Administartion;\r\n this.subsisdy_Approved_MI_Area +=\r\n this.tempConsolidateData[i].Subsisdy_Approved_MI_Area;\r\n this.assistanceAmount += this.tempConsolidateData[i].AssistanceAmount;\r\n this.pending_Application_For_Payment_By_CAO +=\r\n this.tempConsolidateData[i].Pending_Application_For_Payment_By_CAO;\r\n this.payment_Done_Application_By_CAO +=\r\n this.tempConsolidateData[i].Payment_Done_Application_By_CAO;\r\n this.payment_done_MI_Area +=\r\n this.tempConsolidateData[i].Payment_done_MI_Area;\r\n }\r\n // this.verfAppArea= this.verfAppArea.toFixed(4);\r\n }\r\n calculateGrandTotal() {\r\n this.grandTotalApp = 0;\r\n this.grandTotalArea = 0;\r\n this.grandVerifiedApp = 0;\r\n this.grandVerifiedAppArea = 0;\r\n this.grandPendingApp = 0;\r\n this.grandIncompleteApp = 0;\r\n this.grandIncompleteAppArea = 0;\r\n this.grandRejectApp = 0;\r\n this.grandTotalEstimatedApp = 0;\r\n this.grandTotalEstimatedArea = 0;\r\n this.grandVerifiedEstimateApp = 0;\r\n this.grandVerifiedEstimateArea = 0;\r\n this.grandPendingEstimateApp = 0;\r\n this.grandVerifiedEstApproved = 0;\r\n this.grandVerifiedEstApprovedArea = 0;\r\n this.grandPendingEstApproved = 0;\r\n this.grandRejectedEstVerified = 0;\r\n this.grandChallanGenerated = 0;\r\n this.grandChallanDeposited = 0;\r\n this.grandBOQUploaded = 0;\r\n this.grandBOQMIArea = 0;\r\n this.grandBOQPending = 0;\r\n this.grandPVCompleted = 0;\r\n this.grandPV_MI_Area = 0;\r\n this.grandPV_Pending_with_JE = 0;\r\n this.grandPV_Pending_with_XEN = 0;\r\n this.grandPending_Subsidy_Calculation = 0;\r\n this.grandApplicationswithDMIforSubsidy_Approval = 0;\r\n this.grandApplications_Approved_at_Administartion = 0;\r\n this.grandSubsisdy_Approved_MI_Area = 0;\r\n this.grandAssistanceAmount = 0;\r\n this.grandPending_Application_For_Payment_By_CAO = 0;\r\n this.grandPayment_Done_Application_By_CAO = 0;\r\n this.grandPayment_done_MI_Area = 0;\r\n\r\n for (let vendorData of this.tempConsolidateData) {\r\n this.grandTotalApp += vendorData.totalApp;\r\n this.grandTotalArea += vendorData.TotalArea;\r\n this.grandVerifiedApp += vendorData.VerifiedApp;\r\n this.grandVerifiedAppArea += vendorData.verifiedAppArea;\r\n this.grandPendingApp += vendorData.PendingApp;\r\n this.grandIncompleteApp += vendorData.IncompleteApp;\r\n this.grandIncompleteAppArea += vendorData.incompleteAppArea;\r\n this.grandRejectApp += vendorData.rejectApp;\r\n this.grandTotalEstimatedApp += vendorData.totalEstimatedApp;\r\n this.grandTotalEstimatedArea += vendorData.totalEstimatedArea;\r\n this.grandVerifiedEstimateApp += vendorData.verifiedEstimateApp;\r\n this.grandVerifiedEstimateArea += vendorData.verifiedEstimateArea;\r\n this.grandPendingEstimateApp += vendorData.pendingEstimateApp;\r\n this.grandVerifiedEstApproved += vendorData.verifiedEstApproved;\r\n this.grandVerifiedEstApprovedArea += vendorData.verifiedEstApprovedArea;\r\n this.grandPendingEstApproved += vendorData.pendingEstApproved;\r\n this.grandRejectedEstVerified += vendorData.rejectedEstVerified;\r\n this.grandChallanGenerated += vendorData.ChallanGenerated;\r\n this.grandChallanDeposited += vendorData.ChallanDeposited;\r\n this.grandBOQUploaded += vendorData.BOQUploaded;\r\n this.grandBOQMIArea += vendorData.BOQMIArea;\r\n this.grandBOQPending += vendorData.BOQPending;\r\n this.grandPVCompleted += vendorData.PVCompleted;\r\n this.grandPV_MI_Area += vendorData.PV_MI_Area;\r\n this.grandPV_Pending_with_JE += vendorData.PV_Pending_with_JE;\r\n this.grandPV_Pending_with_XEN += vendorData.PV_Pending_with_XEN;\r\n this.grandPending_Subsidy_Calculation +=\r\n vendorData.Pending_Subsidy_Calculation;\r\n this.grandApplicationswithDMIforSubsidy_Approval +=\r\n vendorData.ApplicationswithDMIforSubsidy_Approval;\r\n this.grandApplications_Approved_at_Administartion +=\r\n vendorData.Applications_Approved_at_Administartion;\r\n this.grandSubsisdy_Approved_MI_Area +=\r\n vendorData.Subsisdy_Approved_MI_Area;\r\n this.grandAssistanceAmount += vendorData.AssistanceAmount;\r\n this.grandPending_Application_For_Payment_By_CAO +=\r\n vendorData.Pending_Application_For_Payment_By_CAO;\r\n this.grandPayment_Done_Application_By_CAO +=\r\n vendorData.Payment_Done_Application_By_CAO;\r\n this.grandPayment_done_MI_Area += vendorData.Payment_done_MI_Area;\r\n }\r\n }\r\n\r\n getTotalRecord() {\r\n this.isFinYearChanged = true;\r\n this.selectedYear = '';\r\n this.loadData(this.selectedYear);\r\n this.getChartData(this.selectedYear);\r\n }\r\n\r\n showPendingDetailUserDialog(value, actionType, ...args) {\r\n // this.value = value;\r\n this.drilldownDetails = {\r\n ActionType: actionType,\r\n District: value?.District,\r\n FinYear: this.financialYears,\r\n RequestType: 'MI',\r\n ReqParam: args[0] ? args[0] : '',\r\n };\r\n\r\n this.displayPendingDetailUser = true;\r\n // console.log(this.drilldownDetails, 'this.drilldownDetails');\r\n }\r\n\r\n showPendingDetailUserWiseDialog(value, actionType) {\r\n // this.value = value;\r\n this.drilldownDetails = {\r\n ActionType: actionType,\r\n District: value?.District,\r\n FinYear: this.financialYears,\r\n };\r\n\r\n this.displayPendingDetailUserWise = true;\r\n // console.log(this.drilldownDetails, 'drilldownDetails userWise');\r\n }\r\n\r\n // not in use\r\n graphData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const textColorSecondary = documentStyle.getPropertyValue('--text-color-secondary');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n this.data = {\r\n labels: [\r\n 'Farmer Applications',\r\n 'Pre Survey',\r\n 'Vendor Estimates',\r\n 'Estimate Verification',\r\n 'Total Farmer Challan',\r\n 'Total Bills of Quantity',\r\n 'Total Physical Verification',\r\n 'Total Subsidy Calculated',\r\n 'Total Subsidy Disbursed',\r\n ],\r\n datasets: [\r\n {\r\n label: 'Total',\r\n backgroundColor: documentStyle.getPropertyValue('--blue-500'),\r\n borderColor: documentStyle.getPropertyValue('--blue-500'),\r\n data: [\r\n this.summaryData?.totalApp ? this.summaryData?.totalApp : 0,\r\n this.summaryData?.total_Preestimate\r\n ? this.summaryData?.total_Preestimate\r\n : 0,\r\n this.summaryData?.totalEstimatedApp\r\n ? this.summaryData?.totalEstimatedApp\r\n : 0,\r\n this.summaryData?.TotalEstApproved\r\n ? this.summaryData?.TotalEstApproved\r\n : 0,\r\n this.summaryData?.TotalChallan_tobe_Generated\r\n ? this.summaryData?.TotalChallan_tobe_Generated\r\n : 0,\r\n this.summaryData?.TotalBOQ_tobe_Uploaded\r\n ? this.summaryData?.TotalBOQ_tobe_Uploaded\r\n : 0,\r\n this.summaryData?.totalPV_tobe_done\r\n ? this.summaryData?.totalPV_tobe_done\r\n : 0,\r\n this.summaryData?.TotalApplicationswithDMIforSubsidy_Approval\r\n ? this.summaryData?.TotalApplicationswithDMIforSubsidy_Approval\r\n : 0,\r\n this.summaryData?.total_Application_For_Payment_By_CAO\r\n ? this.summaryData?.total_Application_For_Payment_By_CAO\r\n : 0,\r\n ],\r\n },\r\n {\r\n label: 'Completed',\r\n backgroundColor: documentStyle.getPropertyValue('--green-500'),\r\n borderColor: documentStyle.getPropertyValue('--green-500'),\r\n data: [\r\n this.summaryData?.VerifiedApp ? this.summaryData?.VerifiedApp : 0,\r\n this.summaryData?.verified_Preestimate\r\n ? this.summaryData?.verified_Preestimate\r\n : 0,\r\n this.summaryData?.verifiedEstimateApp\r\n ? this.summaryData?.verifiedEstimateApp\r\n : 0,\r\n this.summaryData?.verifiedEstApproved\r\n ? this.summaryData?.verifiedEstApproved\r\n : 0,\r\n this.summaryData?.ChallanGenerated\r\n ? this.summaryData?.ChallanGenerated\r\n : 0,\r\n this.summaryData?.BOQUploaded ? this.summaryData?.BOQUploaded : 0,\r\n this.summaryData?.PVCompleted ? this.summaryData?.PVCompleted : 0,\r\n this.summaryData?.Applications_Approved_at_Administartion\r\n ? this.summaryData?.Applications_Approved_at_Administartion\r\n : 0,\r\n this.summaryData?.Payment_Done_Application_By_CAO\r\n ? this.summaryData?.Payment_Done_Application_By_CAO\r\n : 0,\r\n ],\r\n },\r\n {\r\n label: 'Pending',\r\n backgroundColor: documentStyle.getPropertyValue('--pink-500'),\r\n borderColor: documentStyle.getPropertyValue('--pink-500'),\r\n data: [\r\n this.summaryData?.IncompleteApp\r\n ? this.summaryData?.IncompleteApp\r\n : 0,\r\n this.summaryData?.pending_Preestimate\r\n ? this.summaryData?.pending_Preestimate\r\n : 0,\r\n this.summaryData?.pendingEstimateApp\r\n ? this.summaryData?.pendingEstimateApp\r\n : 0,\r\n this.summaryData?.pendingEstApproved\r\n ? this.summaryData?.pendingEstApproved\r\n : 0,\r\n this.summaryData?.PendingChallanGenerated\r\n ? this.summaryData?.PendingChallanGenerated\r\n : 0,\r\n this.summaryData?.BOQPending ? this.summaryData?.BOQPending : 0,\r\n this.summaryData?.PV_Pending ? this.summaryData?.PV_Pending : 0,\r\n this.summaryData?.Pending_Subsidy_Calculation\r\n ? this.summaryData?.Pending_Subsidy_Calculation\r\n : 0,\r\n this.summaryData?.Pending_Application_For_Payment_By_CAO\r\n ? this.summaryData?.Pending_Application_For_Payment_By_CAO\r\n : 0,\r\n ],\r\n },\r\n ],\r\n };\r\n\r\n this.options = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n legend: {\r\n labels: {\r\n color: textColor,\r\n },\r\n },\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: textColorSecondary,\r\n font: {\r\n weight: 500,\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false,\r\n },\r\n },\r\n y: {\r\n ticks: {\r\n color: textColorSecondary,\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n\r\n // not in use\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.cropTypeList = files;\r\n // console.log(this.cropTypeList, 'this.cropTypeList');\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n // not in use\r\n getCropTypeName(event) {\r\n const data = this.cropTypeList.find((element) => element.data == event);\r\n if (data) {\r\n this.cropBasedNames = data.children;\r\n } else {\r\n this.cropBasedNames = [];\r\n }\r\n }\r\n\r\n // not in use\r\n getComponentMaster() {\r\n this.loader.start();\r\n this.vendorService\r\n .getComponentMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.program = res;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // not in use\r\n getCaste() {\r\n setTimeout(() => {\r\n this.caste = [\r\n {\r\n name: 'Gen',\r\n id: 1,\r\n },\r\n {\r\n name: 'OBC',\r\n id: 2,\r\n },\r\n {\r\n name: 'SC/ST',\r\n id: 3,\r\n },\r\n ];\r\n }, 1000);\r\n }\r\n\r\n // not in use\r\n getAppType() {\r\n setTimeout(() => {\r\n this.appType = [\r\n {\r\n name: 'Normal',\r\n id: 1,\r\n },\r\n {\r\n name: 'ABY',\r\n id: 2,\r\n },\r\n ];\r\n }, 1000);\r\n }\r\n\r\n onClickMITotalAppRep(){\r\n const finYear = this.selectedFinYear.year;\r\n\r\n // console.log(this.selectedFinYear)\r\n console.log(this.userID,\"this.userID\");\r\n if(this.userID == 'admin'){\r\n this.router.navigate(['admin', 'report', 'mi-total-app-report']);\r\n }\r\n else if(this.userID == 'cao'){\r\n this.router.navigate(['cao', 'report', 'mi-total-app-report']);\r\n }\r\n else{\r\n this.router.navigate(['department', 'report', 'mi-total-app-report']);\r\n }\r\n \r\n }\r\n\r\n onClickPondTotalAppRep(){\r\n const finYear = this.selectedFinYear.year;\r\n\r\n // console.log(this.selectedFinYear)\r\n console.log(this.userID,\"this.userID\");\r\n if(this.userID == 'admin'){\r\n this.router.navigate(['admin', 'report', 'pond-total-app-report']);\r\n }\r\n else if(this.userID == 'cao'){\r\n this.router.navigate(['cao', 'report', 'pond-total-app-report']);\r\n }\r\n else{\r\n this.router.navigate(['ew-department', 'report', 'pond-total-app-report']);\r\n }\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'FARMER_APPLICATIONS' | translate}} : {{ summaryData?.totalApp ? summaryData?.totalApp : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'VERIFIED'| translate}}
\r\n

{{ summaryData?.VerifiedApp ? summaryData?.VerifiedApp : 0 }}

\r\n
\r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.IncompleteApp ? summaryData?.IncompleteApp : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'PRE_SURVEY' | translate}} : {{ summaryData?.total_Preestimate ? summaryData?.total_Preestimate : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'UPLOADED'| translate}}
\r\n

{{ summaryData?.verified_Preestimate ? summaryData?.verified_Preestimate : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.pending_Preestimate ? summaryData?.pending_Preestimate : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'VENDOR_ESTIMATES' | translate}} : {{ summaryData?.totalEstimatedApp ? summaryData?.totalEstimatedApp : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'UPLOADED'| translate}}
\r\n

{{ summaryData?.verifiedEstimateApp ? summaryData?.verifiedEstimateApp : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.pendingEstimateApp ? summaryData?.pendingEstimateApp : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'ESTIMATE_VERIFICATION' | translate}} : {{ summaryData?.TotalEstApproved ? summaryData?.TotalEstApproved : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'VERIFIED'| translate}}
\r\n

{{ summaryData?.verifiedEstApproved ? summaryData?.verifiedEstApproved : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.pendingEstApproved ? summaryData?.pendingEstApproved : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'TOTAL_FARMER_CHALLAN' | translate}} : {{ summaryData?.TotalChallan_tobe_Generated ? summaryData?.TotalChallan_tobe_Generated : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'GENERATED'| translate}}
\r\n

{{ summaryData?.ChallanGenerated ? summaryData?.ChallanGenerated : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.PendingChallanGenerated ? summaryData?.PendingChallanGenerated : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'TOTAL_BILLS_OF_QUANTITY' | translate}} : {{ summaryData?.TotalBOQ_tobe_Uploaded ? summaryData?.TotalBOQ_tobe_Uploaded : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'UPLOADED'| translate}}
\r\n

{{ summaryData?.BOQUploaded ? summaryData?.BOQUploaded : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.BOQPending ? summaryData?.BOQPending : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'TOTAL_PHYSICAL_VERIFICATION' | translate}} : {{ summaryData?.totalPV_tobe_done ? summaryData?.totalPV_tobe_done : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'COMPLETED'| translate}}
\r\n

{{ summaryData?.PVCompleted ? summaryData?.PVCompleted : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.PV_Pending ? summaryData?.PV_Pending : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'TOTAL_SUBSIDY_CALCULATED' | translate}} : {{ summaryData?.TotalApplicationswithDMIforSubsidy_Approval ? summaryData?.TotalApplicationswithDMIforSubsidy_Approval : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'CALCULATED'| translate}}
\r\n

{{ summaryData?.Applications_Approved_at_Administartion ? summaryData?.Applications_Approved_at_Administartion : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.Pending_Subsidy_Calculation ? summaryData?.Pending_Subsidy_Calculation : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{{ 'TOTAL_SUBSIDY_DISBURSED' | translate}} : {{ summaryData?.total_Application_For_Payment_By_CAO ? summaryData?.total_Application_For_Payment_By_CAO : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n
{{'DISBURSED'| translate}}
\r\n

{{ summaryData?.Payment_Done_Application_By_CAO ? summaryData?.Payment_Done_Application_By_CAO : 0 }}

\r\n
\r\n \r\n
\r\n
{{'PENDING(I+R)'| translate}}
\r\n

{{ summaryData?.Pending_Application_For_Payment_By_CAO ? summaryData?.Pending_Application_For_Payment_By_CAO : 0 }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
{{ 'MI' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'POND/TANK' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'TOTAL_APPLICATIONS' | translate}}
\r\n \r\n
{{ card1CountData?.totalApp | number:'1.0-2'}}

{{ card1CountData?.TotalArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'COMPLETED_APPLICATIONS' | translate}}
\r\n \r\n
{{ card1CountData?.CompletedApps | number:'1.0-2'}}

{{ card1CountData?.CompletedAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'UNDER_PROCESS_APPLICATIONS' | translate}}
\r\n
{{ card1CountData?.UnProcessedApps | number:'1.0-2'}}

{{ card1CountData?.UnProcessedAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'REJECTED_APPLICATION' | translate}}
\r\n \r\n
{{ card1CountData?.rejectedApp | number:'1.0-2'}}

{{ card1CountData?.rejectedAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'INCOMPLETE_APPLICATION' | translate}}
\r\n \r\n
{{ card1CountData?.InCompleteApps | number:'1.0-2'}}

{{ card1CountData?.InCompleteAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{ 'TOTAL_APPLICATIONS' | translate}}
\r\n \r\n
{{ pondCard1CountData?.totalApp | number:'1.0-2'}}

{{ pondCard1CountData?.TotalArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'COMPLETED_APPLICATIONS' | translate}}
\r\n \r\n
{{ pondCard1CountData?.CompletedApps | number:'1.0-2'}}

{{ pondCard1CountData?.CompletedAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'UNDER_PROCESS_APPLICATIONS' | translate}}
\r\n
{{ pondCard1CountData?.UnProcessedApps | number:'1.0-2'}}

{{ pondCard1CountData?.UnProcessedAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'REJECTED_APPLICATION' | translate}}
\r\n \r\n
{{ pondCard1CountData?.rejectedApp | number:'1.0-2'}}

{{ pondCard1CountData?.rejectedAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'INCOMPLETE_APPLICATION' | translate}}
\r\n \r\n
{{ pondCard1CountData?.InCompleteApps | number:'1.0-2'}}

{{ pondCard1CountData?.InCompleteAppsArea | number:'1.0-0'}} acres

\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
{{''}}
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n {{'MI_CONSOLIDATED_REPORT_DETAILS'| translate}}\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MI_CONSOLIDATED_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{'APPLICATION_APPROVAL1'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{'ESTIMATE'| translate}} \r\n \r\n \r\n \r\n\r\n \r\n {{'ESTIMATE_APPROVAL1'| translate}}\r\n \r\n \r\n\r\n \r\n\r\n {{'CHALLAN1'| translate}}\r\n \r\n \r\n \r\n {{'BOQ'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PV'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUBSIDY_CALCULATION1'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SUBSIDY'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'TOTAL_APP'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APP'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_APP'| translate}}\r\n \r\n \r\n \r\n {{'INCOMPLETE_APP'| translate}}\r\n \r\n \r\n \r\n {{'INCOMPLETE_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APP'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_ESTIMATED_APP'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_ESTIMATED_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_ESTIMATE_APP'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_ESTIMATE_APP'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_ESTIMATE_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n {{'VERIFIED_ESTIMATE_APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_ESTIMATE_APPROVED_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_ESTIMATE_APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_ESTIMATE_VERIFIED'| translate}}\r\n \r\n \r\n \r\n \r\n {{'CHALLAN_GENERATED'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n \r\n {{'BOQ_UPLOADED'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_MI_AREA'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_PENDING'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PV_COMPLETED'| translate}}\r\n \r\n \r\n \r\n {{'PV_MI_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PV_PENDING_WITH_JE'| translate}}\r\n \r\n \r\n \r\n {{'PV_PENDING_WITH_XEN'| translate}}\r\n \r\n \r\n \r\n \r\n {{'APP_WITH_DMI_SUBSIDY_APPROVAL'|\r\n translate}}\r\n \r\n \r\n \r\n {{'APP_APPROVED_AT_ADMINISTRATION'|\r\n translate}}\r\n \r\n \r\n \r\n {{'PENDING_SUBSIDY_CALCULATION'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_APPROVED_MI_AREA'| translate}}\r\n \r\n \r\n \r\n {{'ASSISTANCE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PENDING_APP_FOR_PAYMENT_BY_CAO'|\r\n translate}}\r\n \r\n \r\n \r\n {{'PAYMENT_DONE_APP_BY_CAO'| translate}}\r\n \r\n \r\n \r\n {{'PAYMENT_DONE_MI_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{consolidateData.District}}\r\n \r\n \r\n {{consolidateData.totalApp}}\r\n {{consolidateData.TotalArea}}\r\n {{consolidateData.VerifiedApp}}\r\n {{consolidateData.verifiedAppArea}}\r\n \r\n {{ consolidateData.PendingApp }}\r\n {{consolidateData.IncompleteApp}}\r\n {{consolidateData.incompleteAppArea}}\r\n {{consolidateData.rejectApp}}\r\n \r\n {{consolidateData.totalEstimatedApp}}\r\n {{consolidateData.totalEstimatedArea}}\r\n \r\n {{ consolidateData.pendingEstimateApp }}\r\n {{consolidateData.verifiedEstimateApp}}\r\n {{consolidateData.verifiedEstimateArea}}\r\n \r\n\r\n\r\n {{consolidateData.verifiedEstApproved}}\r\n {{consolidateData.verifiedEstApprovedArea}}\r\n \r\n {{ consolidateData.pendingEstApproved }}\r\n {{consolidateData.rejectedEstVerified}}\r\n \r\n {{consolidateData.ChallanGenerated}}\r\n {{consolidateData.ChallanDeposited}}\r\n \r\n {{consolidateData.BOQUploaded}}\r\n {{consolidateData.BOQMIArea}}\r\n \r\n {{ consolidateData.BOQPending }}\r\n\r\n \r\n {{consolidateData.PVCompleted}}\r\n {{consolidateData.PV_MI_Area}}\r\n \r\n {{ consolidateData.PV_Pending_with_JE }}\r\n \r\n {{ consolidateData.PV_Pending_with_XEN }}\r\n \r\n\r\n \r\n {{consolidateData.ApplicationswithDMIforSubsidy_Approval}}\r\n {{consolidateData.Applications_Approved_at_Administartion}}\r\n {{ consolidateData.Pending_Subsidy_Calculation }}\r\n {{consolidateData.Subsisdy_Approved_MI_Area}}\r\n {{consolidateData.AssistanceAmount}}\r\n \r\n\r\n \r\n {{ consolidateData.Pending_Application_For_Payment_By_CAO }}\r\n {{consolidateData.Payment_Done_Application_By_CAO}}\r\n {{consolidateData.Payment_done_MI_Area}}\r\n\r\n \r\n \r\n \r\n \r\n\r\n 0\" class=\"footer-section\">\r\n Total \r\n \r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandTotalArea | number:'1.0-2'}}\r\n {{grandVerifiedApp | number:'1.0-2'}}\r\n {{grandVerifiedAppArea | number:'1.0-2'}}\r\n {{grandPendingApp | number:'1.0-2'}}\r\n {{grandIncompleteApp | number:'1.0-2'}}\r\n {{grandIncompleteAppArea | number:'1.0-2'}}\r\n {{grandRejectApp | number:'1.0-2'}}\r\n \r\n {{grandTotalEstimatedApp | number:'1.0-2'}}\r\n {{grandTotalEstimatedArea | number:'1.0-2'}}\r\n {{grandPendingEstimateApp | number:'1.0-2'}}\r\n {{grandVerifiedEstimateApp | number:'1.0-2'}}\r\n {{grandVerifiedEstimateArea | number:'1.0-2'}}\r\n \r\n {{grandVerifiedEstApproved | number:'1.0-2'}}\r\n {{grandVerifiedEstApprovedArea | number:'1.0-2'}}\r\n {{grandPendingEstApproved | number:'1.0-2'}}\r\n {{grandRejectedEstVerified | number:'1.0-2'}}\r\n \r\n {{grandChallanGenerated | number:'1.0-2'}}\r\n {{grandChallanDeposited | number:'1.0-2'}}\r\n \r\n {{grandBOQUploaded | number:'1.0-2'}}\r\n {{grandBOQMIArea | number:'1.0-2'}}\r\n {{grandBOQPending | number:'1.0-2'}}\r\n \r\n {{grandPVCompleted | number:'1.0-2'}}\r\n {{grandPV_MI_Area | number:'1.0-2'}}\r\n {{grandPV_Pending_with_JE | number:'1.0-2'}}\r\n {{grandPV_Pending_with_XEN | number:'1.0-2'}}\r\n \r\n {{grandApplicationswithDMIforSubsidy_Approval | number:'1.0-2'}}\r\n {{grandApplications_Approved_at_Administartion | number:'1.0-2'}}\r\n {{grandPending_Subsidy_Calculation | number:'1.0-2'}}\r\n {{grandSubsisdy_Approved_MI_Area | number:'1.0-2'}}\r\n {{grandAssistanceAmount | number:'1.0-2'}}\r\n \r\n {{grandPending_Application_For_Payment_By_CAO | number:'1.0-2'}}\r\n {{grandPayment_Done_Application_By_CAO | number:'1.0-2'}}\r\n {{grandPayment_done_MI_Area | number:'1.0-2'}}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-mi-consolidated-incompleted-count-wise-report',\r\n templateUrl: './mi-consolidated-incompleted-count-wise-report.component.html',\r\n styleUrls: ['./mi-consolidated-incompleted-count-wise-report.component.scss']\r\n})\r\nexport class MiConsolidatedIncompletedCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n\r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n\r\n public subActionType: string = \"IncompleteApps\";\r\n // public finYear: any;\r\n vendorCode: any;\r\n userType: any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public miIncompletedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n\r\n public miTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Incomplete Apps';\r\n miInCompletedReport: MenuItem[];\r\n loading: boolean;\r\n\r\n constructor(\r\n private reportsService: ReportsService, \r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode;\r\n\r\n this.userType=JSON.parse(sessionToken).role;\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n this.loadMIDataUnderProcess(this.subActionType, 0);\r\n setTimeout(() => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n this.miInCompletedReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.AppID,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadMIDataUnderProcess(subActionType, autoId) {\r\n // this.loader.start();\r\n if (autoId == 0) {\r\n this.loading = true;\r\n }\r\n let sub = this.reportsService\r\n .getMIAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType, this.vendorCode, this.userType, autoId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = data;\r\n this.miTableDataWithFilter = data;\r\n this.actionTypesFromTableData, this.miIncompletedFilterList = this.getUniqueActionType(data);\r\n\r\n console.log(this.actionTypesFromTableData)\r\n } else {\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n\r\n return actionLevelObjects;\r\n }\r\n printForm(AppID) {\r\n\r\n if (AppID) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (this.userId == 'admin') {\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n\r\n } else if (this.userId == 'CAO') {\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n\r\n } else if (this.userId == 'DD-EW') {\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n\r\n } else if (this.userType == 'Vendor') {\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n\r\n } else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n\r\n }\r\n }\r\n }\r\n\r\n}\r\n","\r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n {{'PENDING_ACTION'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.AppID}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-mi-consolidated-rejected-count-wise-report',\r\n templateUrl: './mi-consolidated-rejected-count-wise-report.component.html',\r\n styleUrls: ['./mi-consolidated-rejected-count-wise-report.component.scss']\r\n})\r\nexport class MiConsolidatedRejectedCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n\r\n public subActionType: string = \"RejectedApps\";\r\n // public finYear: any;\r\n vendorCode:any;\r\n userType:any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public miRejectedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n\r\n public miTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Rejected Apps';\r\n miRejecetedReport: MenuItem[];\r\n loading: boolean;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode;\r\n\r\n this.userType=JSON.parse(sessionToken).role;\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n this.loadMIDataUnderProcess(this.subActionType, 0);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n this.miRejecetedReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.AppID,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadMIDataUnderProcess(subActionType, autoId) {\r\n // this.loader.start();\r\n if (autoId == 0) {\r\n this.loading = true;\r\n }\r\n let sub = this.reportsService\r\n .getMIAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType,this.vendorCode,this.userType,autoId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = data;\r\n this.miTableDataWithFilter = data;\r\n this.actionTypesFromTableData, this.miRejectedFilterList = this.getUniqueActionType(data);\r\n\r\n console.log(this.actionTypesFromTableData)\r\n }else{\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n printForm(AppID) {\r\n \r\n if (AppID) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userType== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }\r\n }\r\n }\r\n\r\n\r\n}\r\n","\r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n {{'PENDING_ACTION'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.AppID}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-mi-consolidated-completed-count-wise-report',\r\n templateUrl: './mi-consolidated-completed-count-wise-report.component.html',\r\n styleUrls: ['./mi-consolidated-completed-count-wise-report.component.scss']\r\n})\r\nexport class MiConsolidatedCompletedCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n\r\n public subActionType: string = \"CompletedApps\";\r\n // public finYear: any;\r\n vendorCode:any;\r\n userType:any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public miCompletedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n // public selectedMICompletedFilter: null;\r\n\r\n\r\n public miTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Completed Apps';\r\n miCompletedReport: MenuItem[];\r\n loading: boolean;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode;\r\n\r\n this.userType=JSON.parse(sessionToken).role;\r\n \r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n // if(sessionStorage.getItem('isVendor') && sessionStorage.getItem('isVendor') == '1'){\r\n // this.userType = 'Vendor';\r\n // }\r\n this.loadMIDataUnderProcess(this.subActionType, 0);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n \r\n\r\n this.miCompletedReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.AppID,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadMIDataUnderProcess(subActionType, autoId) {\r\n // this.loader.start();\r\n if (autoId == 0) {\r\n this.loading = true;\r\n }\r\n let sub = this.reportsService\r\n .getMIAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType,this.vendorCode,this.userType, autoId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = this.miTableData.concat(data);\r\n this.miTableDataWithFilter = this.miTableData;\r\n this.actionTypesFromTableData, this.miCompletedFilterList = this.getUniqueActionType(this.miTableData);\r\n\r\n const lastAutoId = data[data.length - 1].AutoId;\r\n this.loadMIDataUnderProcess(this.subActionType, lastAutoId);\r\n\r\n }else{\r\n if(autoId ==0){\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }else{\r\n \r\n }\r\n \r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n printForm(AppID) {\r\n \r\n if (AppID) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }\r\n }\r\n }\r\n\r\n // onSelectMIConsFilter(){\r\n // if(this.selectedMICompletedFilter != null){\r\n // this.miTableDataWithFilter = this.miTableData.filter(item => item.nextuser === this.selectedMICompletedFilter?.actionLevel);\r\n // }else{\r\n // this.miTableDataWithFilter = this.miTableData;\r\n // }\r\n // }\r\n\r\n}\r\n","\r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n {{'PENDING_ACTION'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.AppID}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Location } from '@angular/common'\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-mi-consolidated-count-wise-report',\r\n templateUrl: './mi-consolidated-count-wise-report.component.html',\r\n styleUrls: ['./mi-consolidated-count-wise-report.component.scss']\r\n})\r\nexport class MiConsolidatedCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n miUnderProcessReport: MenuItem[];\r\n \r\n public actionType: any;\r\n // public finYear: any;\r\n public miTableData: any = [];\r\n public miTableDataWithFilter: any = [];\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public isAdminLogin: boolean = false;\r\n public underProcessCount: any;\r\n public showDrillDownTable: boolean = false;\r\n\r\n public miBifurcatedData: any;\r\n public options1: any;\r\n\r\n public tableHeaderName = 'Application Details';\r\n public tableHeaderColor = '#FFFFFF';\r\n\r\n public actionTypesFromTableData: any = [];\r\n\r\n public selectedMIUnderProcFilter: any;\r\n public miUnderProcFilterList: any = [];\r\n vendorCode:any\r\n userType:any\r\n // visible: boolean = false;\r\n\r\n // showDialog() {\r\n // this.visible = true;\r\n // }\r\n public miDistrictWiseDataForChart: any;\r\n public optionsMIDW: any;\r\n public miDistrictWiseData: any = [];\r\n\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private location: Location,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n // items: MenuItem[];\r\n \r\n // activeIndex: number = 0;\r\n\r\n ngOnInit(): void {\r\n // this.items = [\r\n // {\r\n // label: 'Personal',\r\n // routerLink: 'personal',\r\n // status: 'success', // Success status for Personal\r\n // },\r\n // {\r\n // label: 'Seat',\r\n // routerLink: 'seat',\r\n // status: 'pending', // Pending status for Seat\r\n // },\r\n // {\r\n // label: 'Payment',\r\n // routerLink: 'payment',\r\n // status: 'pending', // Pending status for Payment\r\n // },\r\n // ];\r\n // this.actionType = this.route.snapshot.paramMap.get('actionType');\r\n // this.finYear = this.route.snapshot.paramMap.get('finYear');\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode\r\n // this.userIdUpperCase = JSON.parse(payload)?.sub\r\n this.userType=JSON.parse(sessionToken).role\r\n\r\n // console.log(this.finYear, this.actionType);\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n // if(this.actionType == 3){\r\n // console.log('action type 3');\r\n // this.loadCountBoxesData();\r\n // }else{\r\n // this.loadMIData('3');\r\n // }\r\n\r\n this.loadCountBoxesData();\r\n\r\n this.loadMIDistrictWiseData(); \r\n\r\n\r\n this.miUnderProcessReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'App_Verification_List'\r\n // );\r\n // },\r\n // },\r\n ];\r\n }\r\n\r\n // getStepClass(step: MenuItem) {\r\n // return step.status === 'success' ? 'success' : 'pending';\r\n // }\r\n // nextStep() {\r\n // if (this.activeIndex < this.items.length - 1) {\r\n // this.activeIndex++;\r\n // }\r\n // }\r\n \r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appid,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n 'KYC Status': d.KYCStatus,\r\n 'KYC Date': d.TransDate,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadCountBoxesData() {\r\n this.loader.start();\r\n\r\n let sub = this.reportsService\r\n .getMIAggTabsUnProcessedAppsCountNew(this.finyear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // console.log(data.length, data)\r\n if (data?.length > 0) {\r\n this.underProcessCount = data[0];\r\n console.log(this.underProcessCount)\r\n this.loadMIBifurcatedDataForGraph();\r\n } else {\r\n this.underProcessCount = null;\r\n this.loadMIBifurcatedDataForGraph();\r\n }\r\n // console.log(this.underProcessCount)\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loader.close();\r\n this.underProcessCount = null;\r\n this.loadMIBifurcatedDataForGraph();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n loadMIBifurcatedDataForGraph() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n console.log(this.underProcessCount);\r\n this.miBifurcatedData = {\r\n // labels: [`MI(PDMC) Applications: (${miTotalCount}) `, `Pond/Tank Applications: (${pondTotalCount})`],\r\n labels: ['App Scrutiny/Verification', \r\n 'Pre-Survey By Vendor', \r\n 'Vendor Estimate', \r\n 'Estimate Scrutiny/Verification', \r\n 'Challan(FS) Generation',\r\n 'Farmer Share Deposited',\r\n 'Installation',\r\n 'Field Inspection',\r\n 'Subsidy Approvals',\r\n 'Subsidy Lots Creation',\r\n 'Subsidy Disbursement',\r\n ],\r\n datasets: [\r\n {\r\n data: [\r\n this.underProcessCount?.IncompleteApps, \r\n this.underProcessCount?.preestimate, \r\n this.underProcessCount?.pendingEstimateApp, \r\n this.underProcessCount?.pendingEstApproved, \r\n this.underProcessCount?.pending_challan, \r\n this.underProcessCount?.pending_challan_deposit, \r\n this.underProcessCount?.Pending_BOQ, \r\n this.underProcessCount?.pending_PV, \r\n this.underProcessCount?.pending_Subsidy, \r\n this.underProcessCount?.pending_lot, \r\n this.underProcessCount?.pending_subsidy_disbursal\r\n ],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-600'),\r\n // documentStyle.getPropertyValue('--yellow-600'),\r\n '#00b33c',\r\n '#8a8a5c',\r\n '#ff0000',\r\n '#ff9900',\r\n '#3939ac',\r\n '#b30000',\r\n '#408000',\r\n '#2952a3',\r\n '#b30059',\r\n '#52527a',\r\n '#e67300'\r\n // documentStyle.getPropertyValue('--blue-500')\r\n // documentStyle.getPropertyValue('--pink-500'),\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--yellow-500'),\r\n '#00b33c',\r\n '#8a8a5c',\r\n '#ff0000',\r\n '#ff9900',\r\n '#3939ac',\r\n '#b30000',\r\n '#408000',\r\n '#2952a3',\r\n '#b30059',\r\n '#52527a',\r\n '#e67300'\r\n // documentStyle.getPropertyValue('--pink-400'),\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // stepSize: 20,\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n }\r\n };\r\n\r\n // this.options1 = {\r\n // maintainAspectRatio: false,\r\n // aspectRatio: 0.8,\r\n // plugins: {\r\n // datalabels: {\r\n // anchor: 'end',\r\n // align: 'end',\r\n // color: 'black',\r\n // font: {\r\n // weight: 'bold'\r\n // }\r\n // },\r\n // legend: {\r\n // display: false // Hide the legend\r\n // }\r\n // },\r\n // scales: {\r\n // x: {\r\n // ticks: {\r\n // color: textColor,\r\n // font: {\r\n // weight: 500\r\n // }\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // },\r\n // y: {\r\n // ticks: {\r\n // color: textColor\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n // }\r\n // };\r\n }\r\n\r\n onMIChartClick(event){\r\n this.selectedMIUnderProcFilter = null;\r\n if(event?.element?.index == 0){\r\n this.onClickCountBox('AppVerification');\r\n this.tableHeaderName = 'Application Scrutiny/Verification';\r\n this.tableHeaderColor = '#00b33c';\r\n }else if(event?.element?.index == 1){\r\n this.onClickCountBox('PreEstimation');\r\n this.tableHeaderName = 'Pre-Survey By Vendor';\r\n this.tableHeaderColor = '#8a8a5c';\r\n }else if(event?.element?.index == 2){\r\n this.onClickCountBox('Estimation');\r\n this.tableHeaderName = 'Vendor Estimate';\r\n this.tableHeaderColor = '#ff0000';\r\n }else if(event?.element?.index == 3){\r\n this.onClickCountBox('EstVerification');\r\n this.tableHeaderName = 'Estimate Scrutiny/Verification';\r\n this.tableHeaderColor = '#ff9900';\r\n }else if(event?.element?.index == 4){\r\n this.onClickCountBox('Challan');\r\n this.tableHeaderName = 'Challan(FS) Generation';\r\n this.tableHeaderColor = '#3939ac';\r\n }else if(event?.element?.index == 5){\r\n this.onClickCountBox('ChallanDeposited');\r\n this.tableHeaderName = 'Farmer Share Deposited';\r\n this.tableHeaderColor = '#b30000';\r\n }else if(event?.element?.index == 6){\r\n this.onClickCountBox('BOQ');\r\n this.tableHeaderName = 'Installation';\r\n this.tableHeaderColor = '#408000';\r\n }else if(event?.element?.index == 7){\r\n this.onClickCountBox('PVVerification');\r\n this.tableHeaderName = 'Field Inspection';\r\n this.tableHeaderColor = '#2952a3';\r\n }else if(event?.element?.index == 8){\r\n this.onClickCountBox('Subsidy');\r\n this.tableHeaderName = 'Subsidy Approvals';\r\n this.tableHeaderColor = '#b30059';\r\n }else if(event?.element?.index == 9){\r\n this.onClickCountBox('subsidy_lot');\r\n this.tableHeaderName = 'Subsidy Lots Creation'\r\n this.tableHeaderColor = '#52527a';\r\n }else if(event?.element?.index == 10){\r\n this.onClickCountBox('subsidyDis');\r\n this.tableHeaderName = 'Subsidy Disbursement';\r\n this.tableHeaderColor = '#e67300';\r\n }\r\n }\r\n\r\n // loadMIData(count) {\r\n // if(count == 3){\r\n // this.loader.start();\r\n // }else{\r\n // this.loader.close();\r\n // }\r\n // let sub = this.reportsService\r\n // .getConsolidatedAggReportNew2DrillDown(this.finYear, this.actionType, count)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.loader.close();\r\n // if (data?.length > 0) {\r\n // if(count == '1'){\r\n // this.miTableData = data;\r\n // if(data.length == 100){\r\n // this.loadMIData('2');\r\n // }\r\n // }else if(count == '2'){\r\n // this.miTableData = data;\r\n // if(data.length == 1000){\r\n // this.loadMIData('3');\r\n // }\r\n // }else if(count == '3'){\r\n // this.miTableData = data;\r\n // }\r\n // } else {\r\n // if(count == '1'){\r\n // this.miTableData = [];\r\n // }\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // if(count == '1'){\r\n // this.miTableData = [];\r\n // }\r\n // },\r\n // });\r\n\r\n // this.subscriptions.push(sub);\r\n // }\r\n\r\n printForm(appId) {\r\n \r\n if (appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n // if(this.subjectSub)\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // console.log(payload, this.userID);\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userType== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }\r\n }\r\n else{\r\n // this.messageService.add({\r\n // summary: 'Error Message',\r\n // severity: 'info',\r\n // detail: 'Application Id Not Found',\r\n // });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onClickBack(){\r\n this.location.back();\r\n }\r\n // onSelect(type:any){\r\n // this.loadMIData(type)\r\n // }\r\n\r\n onClickCountBox(val){\r\n this.showDrillDownTable = true;\r\n console.log(val)\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.ngOnDestroy();\r\n this.loadMIDataUnderProcess(val, 0);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n }\r\n\r\n loadMIDataUnderProcess(subActionType, autoId) {\r\n // this.loader.start();\r\n if (autoId == 0) {\r\n this.loading = true;\r\n }\r\n let sub = this.reportsService\r\n .getMIAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType,this.vendorCode,this.userType,autoId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = data;\r\n this.miTableDataWithFilter = data;\r\n\r\n // Using the function to get unique actionTypes\r\n this.actionTypesFromTableData, this.miUnderProcFilterList = this.getUniqueActionType(data);\r\n\r\n console.log(this.actionTypesFromTableData)\r\n }else{\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n // getUniqueActionType(data) {\r\n // const districts = data.map(entry => entry?.nextuser);\r\n // return [...new Set(districts)];\r\n // }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n\r\n onSelectMIConsFilter(){\r\n if(this.selectedMIUnderProcFilter != null){\r\n this.miTableDataWithFilter = this.miTableData.filter(item => item.nextuser === this.selectedMIUnderProcFilter?.actionLevel);\r\n }else{\r\n this.miTableDataWithFilter = this.miTableData;\r\n }\r\n }\r\n\r\n loadMIDistrictWiseData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getUnderProcessDistrictWise(this.finyear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miDistrictWiseData = data;\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n } else {\r\n this.miDistrictWiseData = [];\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miDistrictWiseData = [];\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n \r\n loadMIDistrictWiseDataForChart() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n const districts = this.miDistrictWiseData.map(item => item.District);\r\n const totalApp = this.miDistrictWiseData.map(item => item.Total_Apps);\r\n const totalArea = this.miDistrictWiseData.map(item => (item.Total_Area).toFixed(2));\r\n\r\n\r\n const labels = totalApp.map((count, index) => `Count: ${count}. Area: ${totalArea[index]}`);\r\n\r\n this.miDistrictWiseDataForChart = {\r\n labels: districts,\r\n datasets: [\r\n {\r\n data: totalApp,\r\n backgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n hoverBackgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n label: labels\r\n },\r\n\r\n ],\r\n };\r\n \r\n\r\n this.optionsMIDW = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold',\r\n size: '10px'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n },\r\n tooltip: {\r\n callbacks: {\r\n label: function (tooltipItem) {\r\n const index = tooltipItem.dataIndex;\r\n return `Count: ${totalApp[index]}. Area: ${totalArea[index]}`;\r\n }\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'linear', // Use linear scale\r\n ticks: {\r\n // min: 0,\r\n // stepSize: 200,\r\n callback: function (value, index, values) {\r\n // Custom tick labeling logic\r\n return value > 1000 ? (value / 1000) + 'K' : (value / 1000) + 'K';\r\n },\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n grid: {\r\n display: false,\r\n },\r\n },\r\n // y: {\r\n // type: 'logarithmic', // Use logarithmic scale\r\n // ticks: {\r\n // min: 0,\r\n // font: {\r\n // weight: 'bold',\r\n // color: 'black'\r\n // },\r\n // },\r\n // grid: {\r\n // display: false,\r\n // // color: this.surfaceBorder,\r\n // // drawBorder: false,\r\n // },\r\n // },\r\n\r\n }\r\n };\r\n }\r\n}\r\n","
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'APP_VERIFICATION' | translate}}
\r\n
{{ underProcessCount?.IncompleteApps | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'PRE_SURVEY' | translate}}
\r\n
{{ underProcessCount?.preestimate | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'VENDOR_ESTIMATES' | translate}}
\r\n
{{ underProcessCount?.pendingEstimateApp | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'ESTIMATE_VERIFICATION' | translate}}
\r\n
{{ underProcessCount?.pendingEstApproved | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'CHALLAN_GENERATION' | translate}}
\r\n
{{ underProcessCount?.pending_challan | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'CHALLAN_DEPOSITED' | translate}}
\r\n
{{ underProcessCount?.pending_challan_deposit | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'BOQ' | translate}}
\r\n
{{ underProcessCount?.Pending_BOQ | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'PHYSICAL_VER' | translate}}
\r\n
{{ underProcessCount?.pending_PV | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'SUBSIDY_CALCULATION' | translate}}
\r\n
{{ underProcessCount?.pending_Subsidy | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'LOT_GENERATION' | translate}}
\r\n
{{ underProcessCount?.pending_lot | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'SUBSIDY_DISBURSEMENT' | translate}}
\r\n
{{ underProcessCount?.pending_subsidy_disbursal | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n \r\n {{'PENDING_ACTION'| translate}}\r\n {{'KYC Status'| translate}}\r\n {{'KYC Date'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.appid}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n {{consolidateData?.KYCStatus}}\r\n {{consolidateData?.TransDate | date: \"mediumDate\"}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { first } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Location } from '@angular/common'\r\n\r\n@Component({\r\n selector: 'app-mi-consolidated-detail-report',\r\n templateUrl: './mi-consolidated-detail-report.component.html',\r\n styleUrls: ['./mi-consolidated-detail-report.component.scss']\r\n})\r\nexport class MiConsolidatedDetailReportComponent implements OnInit {\r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n miUnderProcessReport: MenuItem[];\r\n\r\n public miConsolidatedTableData: any = [];\r\n public loading: boolean = false;\r\n public autoId: any = 0;\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n\r\n public vendorName: any = '';\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private location: Location,\r\n private loader: AppLoaderService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('isVendor') && sessionStorage.getItem('isVendor') == '1'){\r\n \r\n // let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n // this.vendorCode=JSON.parse(sessionToken).officeCode;\r\n\r\n // this.userType=JSON.parse(sessionToken).role;\r\n let vendorName = sessionStorage.getItem('loginUserName')\r\n\r\n this.vendorName = vendorName;\r\n }else{\r\n this.vendorName = '';\r\n }\r\n this.miUnderProcessReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miConsolidatedTableData, `MI_Consolidated_Details`);\r\n },\r\n },\r\n ];\r\n\r\n this.loadData('', 0);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(finYear, autoId) {\r\n if (autoId == 0) {\r\n this.loading = true;\r\n }\r\n let sub = this.reportsService\r\n .getMIAppLevelWiseReport(finYear, autoId, this.vendorName)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // console.log(data.length, data)\r\n if (data?.length > 0) {\r\n this.miConsolidatedTableData = this.miConsolidatedTableData.concat(data);\r\n\r\n const lastAutoId = data[data.length - 1].AutoId;\r\n this.loadData('', lastAutoId);\r\n } else {\r\n\r\n }\r\n // console.log(this.underProcessCount)\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App Id': d.AppId,\r\n 'District': d.DistName,\r\n 'Block': d.Block,\r\n 'Village': d.Village,\r\n 'Name': d.Name,\r\n 'Father_name': d.Father_name,\r\n 'Mobile': d.Mobile,\r\n 'Caste': d.Caste_Description,\r\n 'Program_Name': d.Program_Name,\r\n 'Total_Area': d.Total_Area,\r\n 'App_ApprovalStaus': d.App_ApprovalStaus,\r\n 'User_Type': d.User_Type,\r\n 'App_ApprovalUse': d.App_ApprovalUse,\r\n 'Application_Date': d.Application_Date,\r\n 'PreEst_PendingDate': d.PreEst_PendingDate,\r\n 'PreEst_Status': d.PreEst_Status,\r\n 'Est_Status': d.Est_Status,\r\n 'Est_ApprovalStaus': d.Est_ApprovalStaus,\r\n 'Est_Area': d.Est_Area,\r\n 'Est_PendingDate': d.Est_PendingDate,\r\n 'Est_Status_User': d.Est_Status_User,\r\n 'Challan_Status': d.Challan_Status,\r\n 'ChallanDepositDate': d.ChallanDepositDate,\r\n 'Challan_Pending': d.Challan_Pending,\r\n 'BOQ_Status': d.BOQ_Status,\r\n 'BOQ_Amount': d.BOQ_Amount,\r\n 'BOQ_Date': d.BOQ_Date,\r\n 'BOQ_Area': d.BOQ_Area,\r\n 'BOQ_PendingDate': d.BOQ_PendingDate,\r\n 'PV_Status': d.PV_Status,\r\n 'PV_Amount': d.PV_Amount,\r\n 'PV_Area': d.PV_Area,\r\n 'PV_PendingUser': d.PV_PendingUser,\r\n 'PV_Date': d.PV_Date,\r\n 'PV_PendingDate': d.PV_PendingDate,\r\n 'Calc_Status': d.Calc_Status,\r\n 'Calc_Area': d.Calc_Area,\r\n 'Calc_PendingDat': d.Calc_PendingDat,\r\n 'Calc_Amount': d.Calc_Amount,\r\n 'Calc_PendingUse': d.Calc_PendingUse,\r\n 'ReqFinYear': d.ReqFinYear,\r\n 'KYCDate': d.KYCDate,\r\n 'KYCStatus': d.KYCStatus,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onClickBack() {\r\n this.location.back();\r\n }\r\n\r\n}\r\n","
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ 'MI Consolidated Detail' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'NAME'| translate}}\r\n {{'FATHER_NAME'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'CASTE'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n {{'Approval Status'| translate}}\r\n\r\n {{'User Type'| translate}}\r\n {{'App Approval User'| translate}}\r\n {{'Application Date'| translate}}\r\n {{'Pre Est Pending Date'| translate}}\r\n {{'Pre Est Status'| translate}}\r\n {{'Est Status'| translate}}\r\n {{'Est Approva Status'| translate}}\r\n {{'Est Area'| translate}}\r\n {{'Est Pending Date'| translate}}\r\n {{'Est Status User'| translate}}\r\n {{'Challan Status'| translate}}\r\n {{'Challan Deposit Date'| translate}}\r\n {{'Challan Pending Date'| translate}}\r\n {{'BOQ Status'| translate}}\r\n {{'BOQ Amount'| translate}}\r\n {{'BOQ Date'| translate}}\r\n {{'BOQ Area'| translate}}\r\n {{'BOQ Pending Date'| translate}}\r\n\r\n {{'PV Status'| translate}}\r\n {{'PV Amount'| translate}}\r\n {{'PV Area'| translate}}\r\n {{'PV Pending User'| translate}}\r\n {{'PV Pending Date'| translate}}\r\n {{'Calc Status'| translate}}\r\n {{'Calc Area'| translate}}\r\n {{'Calc Pending Date'| translate}}\r\n {{'Calc Amount'| translate}}\r\n {{'Calc Pending User'| translate}}\r\n {{'Fin Year'| translate}}\r\n {{'KYC Date'| translate}}\r\n {{'KYC Status'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {{consolidateData?.AppId}}\r\n {{consolidateData?.DistName}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Name}}\r\n {{consolidateData?.Father_name}}\r\n {{consolidateData?.Mobile}}\r\n {{consolidateData?.Caste_Description}}\r\n {{consolidateData?.Program_Name}}\r\n {{consolidateData?.Total_Area}}\r\n {{consolidateData?.App_ApprovalStatus}}\r\n\r\n {{consolidateData?.User_Type}}\r\n {{consolidateData?.App_ApprovalUser}}\r\n {{consolidateData?.Application_Date}}\r\n {{consolidateData?.PreEst_PendingDate}}\r\n {{consolidateData?.PreEst_Status}}\r\n {{consolidateData?.Est_Status}}\r\n {{consolidateData?.Est_ApprovalStatus}}\r\n {{consolidateData?.Est_Area}}\r\n {{consolidateData?.Est_PendingDate}}\r\n {{consolidateData?.Est_Status_User}}\r\n {{consolidateData?.Challan_Status}}\r\n {{consolidateData?.ChallanDepositDate}}\r\n {{consolidateData?.Challan_PendingDate}}\r\n {{consolidateData?.BOQ_Status}}\r\n {{consolidateData?.BOQ_Amount}}\r\n {{consolidateData?.BOQ_Date}}\r\n {{consolidateData?.BOQ_Area}}\r\n {{consolidateData?.BOQ_PendingDate}}\r\n\r\n {{consolidateData?.PV_Status}}\r\n {{consolidateData?.PV_Amount}}\r\n {{consolidateData?.PV_Area}}\r\n {{consolidateData?.PV_PendingUser}}\r\n {{consolidateData?.PV_PendingDate}}\r\n {{consolidateData?.Calc_Status}}\r\n {{consolidateData?.Calc_Area}}\r\n {{consolidateData?.Calc_PendingDate}}\r\n {{consolidateData?.Calc_Amount}}\r\n {{consolidateData?.Calc_PendingUser}}\r\n {{consolidateData?.ReqFinYear}}\r\n {{consolidateData?.KYCDate}}\r\n {{consolidateData?.KYCStatus}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { VendorMiArea } from 'src/app/models/department-reports.model';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport saveAs from 'file-saver';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { Location } from '@angular/common';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\n\r\n@Component({\r\n selector: 'app-mi-consolidated-total-app-report',\r\n templateUrl: './mi-consolidated-total-app-report.component.html',\r\n styleUrls: ['./mi-consolidated-total-app-report.component.scss'],\r\n})\r\nexport class MiConsolidatedTotalAppReportComponent implements OnInit {\r\n consolidateData: any = [];\r\n public districtsArray: any = [];\r\n public distWiseTotalApp: any = [];\r\n public loading: boolean = false;\r\n\r\n appVerificationModel: VendorMiArea[];\r\n tempConsolidateData: any[];\r\n arrayIndex: number;\r\n\r\n totalApp: any;\r\n totalArea: any;\r\n verifiedApp: any;\r\n verifiedAppArea: any;\r\n pendingApp: any;\r\n incompleteApp: any;\r\n incompleteAppArea: any;\r\n rejectApp: any;\r\n totalEstimatedApp: any;\r\n totalEstimatedArea: any;\r\n verifiedEstimateApp: any;\r\n verifiedEstimateArea: any;\r\n pendingEstimateApp: any;\r\n verifiedEstApproved: any;\r\n verifiedEstApprovedArea: any;\r\n pendingEstApproved: any;\r\n rejectedEstVerified: any;\r\n challanGenerated: any;\r\n challanDeposited: any;\r\n BOQUploaded: any;\r\n BOQMIArea: any;\r\n BOQPending: any;\r\n PVCompleted: any;\r\n PV_MI_Area: any;\r\n PV_Pending_with_JE: any;\r\n PV_Pending_with_XEN: any;\r\n pending_Subsidy_Calculation: any;\r\n applicationswithDMIforSubsidy_Approval: any;\r\n applications_Approved_at_Administartion: any;\r\n subsisdy_Approved_MI_Area: any;\r\n assistanceAmount: any;\r\n pending_Application_For_Payment_By_CAO: any;\r\n payment_Done_Application_By_CAO: any;\r\n payment_done_MI_Area: any;\r\n\r\n grandTotalApp: any;\r\n grandTotalArea: any;\r\n grandVerifiedApp: any;\r\n grandVerifiedAppArea: any;\r\n grandPendingApp: any;\r\n grandIncompleteApp: any;\r\n grandIncompleteAppArea: any;\r\n grandRejectApp: any;\r\n grandTotalEstimatedApp: any;\r\n grandTotalEstimatedArea: any;\r\n grandVerifiedEstimateApp: any;\r\n grandVerifiedEstimateArea: any;\r\n grandPendingEstimateApp: any;\r\n grandVerifiedEstApproved: any;\r\n grandVerifiedEstApprovedArea: any;\r\n grandPendingEstApproved: any;\r\n grandRejectedEstVerified: any;\r\n grandChallanGenerated: any;\r\n grandChallanDeposited: any;\r\n grandBOQUploaded: any;\r\n grandBOQMIArea: any;\r\n grandBOQPending: any;\r\n grandPVCompleted: any;\r\n grandPV_MI_Area: any;\r\n grandPV_Pending_with_JE: any;\r\n grandPV_Pending_with_XEN: any;\r\n grandPending_Subsidy_Calculation: any;\r\n grandApplicationswithDMIforSubsidy_Approval: any;\r\n grandApplications_Approved_at_Administartion: any;\r\n grandSubsisdy_Approved_MI_Area: any;\r\n grandAssistanceAmount: any;\r\n grandPending_Application_For_Payment_By_CAO: any;\r\n grandPayment_Done_Application_By_CAO: any;\r\n grandPayment_done_MI_Area: any;\r\n\r\n public subjectSub: any;\r\n public subscriptions: any = [];\r\n public selectedYear: any;\r\n\r\n public drilldownDetails: any;\r\n public displayPendingDetailUser: boolean = false;\r\n\r\n appVerificationItems: MenuItem[];\r\n\r\n filteredVillage: any;\r\n // districtList: any = [];\r\n\r\n finYearList: any = [];\r\n selectedFinYear: any = null;\r\n constituencyList: any = [];\r\n selectedconstituency: any = null;\r\n districtList: any = [];\r\n selectedDistrict: any = null;\r\n blockList: any = [];\r\n selectedBlock: any = null;\r\n villageList: any = [];\r\n selectedVillage: any = null;\r\n\r\n cropTypeList: any = [];\r\n selectedCrop: any = null;\r\n casteList: any = [];\r\n selectedCaste: any = null;\r\n appTypeList: any = [];\r\n selectedAppType: any = null;\r\n\r\n scrollHeight: any = '130px';\r\n\r\n column1Name: any = \"District\";\r\n\r\n public cropMergeList: any;\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private service: BaseService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private location: Location,\r\n private reportService: ReportsService,\r\n private flService: FarmerLandDetailService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n // this.loadDataAndApplyFilter();\r\n // this.loadData('');\r\n this.getFinYearList();\r\n this.getDistrictList();\r\n this.getConstituencyList();\r\n this.getCasteList();\r\n this.getCorpTypeList();\r\n this.getAppTypeList();\r\n\r\n this.onClickApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'MI_Consolidate_report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'MI_Consolidate_report'\r\n // );\r\n // },\r\n // },\r\n ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n getDistrictList() {\r\n let sub = this.reportService\r\n .getDistrictMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.districtList = data;\r\n } else {\r\n this.districtList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.districtList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'District List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getCorpTypeList() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.cropTypeList = data;\r\n\r\n let arrayCrop = [];\r\n let cropMerge = data.map((parent) => {\r\n arrayCrop.push(\r\n parent['children'].map((child) => ({\r\n ...child,\r\n parentData: parent.data,\r\n parentLabel: parent.label\r\n }))\r\n );\r\n });\r\n\r\n this.cropMergeList = [].concat(...arrayCrop);\r\n\r\n } else {\r\n this.cropTypeList = [];\r\n this.cropMergeList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.cropTypeList = [];\r\n this.cropMergeList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Crop Type List',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCasteList(){\r\n setTimeout(() => {\r\n this.casteList = [\r\n {\r\n Caste_Code: 1,\r\n Caste_Description: 'Gen'\r\n },\r\n {\r\n Caste_Code: 2,\r\n Caste_Description: 'BC'\r\n },\r\n {\r\n Caste_Code: 3,\r\n Caste_Description: 'SC'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getAppTypeList(){\r\n setTimeout(() => {\r\n this.appTypeList = [\r\n {\r\n AppType_Code: 1,\r\n AppType_Description: 'Normal'\r\n },\r\n {\r\n AppType_Code: 2,\r\n AppType_Description: 'ABY'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getFinYearList() {\r\n let sub = this.reportService\r\n .getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.finYearList = data;\r\n } else {\r\n this.finYearList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.finYearList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Finanacial Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getConstituencyList() {\r\n let sub = this.reportService\r\n .getConsituencyMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.constituencyList = data;\r\n } else {\r\n this.constituencyList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.constituencyList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Constituency List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectConstituency(){\r\n this.selectedVillage = null;\r\n this.villageList = [];\r\n\r\n console.log(this.selectedconstituency)\r\n let constituencyCode = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let blockCode = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n this.getVillageList(blockCode, constituencyCode);\r\n }\r\n\r\n onSelectDistrict(){\r\n this.selectedBlock = null;\r\n this.blockList = [];\r\n\r\n\r\n console.log(this.selectedDistrict)\r\n let districtCode = this.selectedDistrict?.Dist_Code;\r\n this.getBlockList(districtCode);\r\n }\r\n\r\n getBlockList(districtCode) {\r\n let sub = this.reportService\r\n .getBlockMaster(districtCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.blockList = data;\r\n } else {\r\n this.blockList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.blockList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Block List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectBlock(){\r\n this.selectedVillage = null;\r\n this.villageList = [];\r\n\r\n console.log(this.selectedBlock)\r\n let constituencyCode = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let blockCode = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n this.getVillageList(blockCode, constituencyCode);\r\n }\r\n\r\n getVillageList(blockCode, conCode) {\r\n let sub = this.reportService\r\n .getVillageMasterByConsituency(blockCode, conCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.villageList = data;\r\n } else {\r\n this.villageList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.villageList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Village List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n // getVillageData(){\r\n // this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // this.villageList = res;\r\n // this.filteredVillage = [...this.villageList]\r\n\r\n // if (!window.localStorage.getItem(\"villageMaster\")) {\r\n // window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n // }\r\n // })\r\n // }\r\n\r\n // filterVillage(event: any) {\r\n // const filtered: any[] = [];\r\n // const query = event.query;\r\n // for (let i = 0; i < this.villageList.length; i++) {\r\n // const village = this.villageList[i];\r\n // if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n // filtered.push(village);\r\n // }\r\n // }\r\n\r\n // this.filteredVillage = filtered;\r\n // }\r\n\r\n // loadDataAndApplyFilter(){\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n // }\r\n\r\n // this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n // (res) => {\r\n\r\n // this.selectedYear = res;\r\n // this.loadData(this.selectedYear);\r\n // }\r\n // );\r\n // }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(reqBody) {\r\n this.loading = true;\r\n\r\n let sub = this.reportService\r\n .getConsolidated_Report(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n if(data?.length == 1) {\r\n this.scrollHeight = '180px';\r\n }else if(data?.length <=5) {\r\n this.scrollHeight = '300px';\r\n }else{\r\n this.scrollHeight = '400px';\r\n }\r\n\r\n this.consolidateData = data;\r\n // console.log(this.consolidateData);\r\n this.districtsArray = this.consolidateData.map(\r\n (item) => item['District']\r\n );\r\n this.distWiseTotalApp = this.consolidateData.map(\r\n (item) => item['totalApp']\r\n );\r\n // console.log(this.districtsArray);\r\n // this.loadPieChartData();\r\n\r\n this.appVerificationModel = data;\r\n this.tempConsolidateData = data;\r\n this.arrayIndex = 0;\r\n this.calculateGrandTotal();\r\n // this.applyNewGraph1Data();\r\n this.loading = false;\r\n } else {\r\n this.scrollHeight = '130px';\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.scrollHeight = '130px';\r\n // this.loader.close();\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Report',\r\n // '',\r\n // new Date(),\r\n // err\r\n // );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n calculateGrandTotal() {\r\n this.grandTotalApp = 0;\r\n this.grandTotalArea = 0;\r\n this.grandVerifiedApp = 0;\r\n this.grandVerifiedAppArea = 0;\r\n this.grandPendingApp = 0;\r\n this.grandIncompleteApp = 0;\r\n this.grandIncompleteAppArea = 0;\r\n this.grandRejectApp = 0;\r\n this.grandTotalEstimatedApp = 0;\r\n this.grandTotalEstimatedArea = 0;\r\n this.grandVerifiedEstimateApp = 0;\r\n this.grandVerifiedEstimateArea = 0;\r\n this.grandPendingEstimateApp = 0;\r\n this.grandVerifiedEstApproved = 0;\r\n this.grandVerifiedEstApprovedArea = 0;\r\n this.grandPendingEstApproved = 0;\r\n this.grandRejectedEstVerified = 0;\r\n this.grandChallanGenerated = 0;\r\n this.grandChallanDeposited = 0;\r\n this.grandBOQUploaded = 0;\r\n this.grandBOQMIArea = 0;\r\n this.grandBOQPending = 0;\r\n this.grandPVCompleted = 0;\r\n this.grandPV_MI_Area = 0;\r\n this.grandPV_Pending_with_JE = 0;\r\n this.grandPV_Pending_with_XEN = 0;\r\n this.grandPending_Subsidy_Calculation = 0;\r\n this.grandApplicationswithDMIforSubsidy_Approval = 0;\r\n this.grandApplications_Approved_at_Administartion = 0;\r\n this.grandSubsisdy_Approved_MI_Area = 0;\r\n this.grandAssistanceAmount = 0;\r\n this.grandPending_Application_For_Payment_By_CAO = 0;\r\n this.grandPayment_Done_Application_By_CAO = 0;\r\n this.grandPayment_done_MI_Area = 0;\r\n\r\n for (let vendorData of this.tempConsolidateData) {\r\n this.grandTotalApp += vendorData.totalApp;\r\n this.grandTotalArea += vendorData.TotalArea;\r\n this.grandVerifiedApp += vendorData.VerifiedApp;\r\n this.grandVerifiedAppArea += vendorData.verifiedAppArea;\r\n this.grandPendingApp += vendorData.PendingApp;\r\n this.grandIncompleteApp += vendorData.IncompleteApp;\r\n this.grandIncompleteAppArea += vendorData.incompleteAppArea;\r\n this.grandRejectApp += vendorData.rejectApp;\r\n this.grandTotalEstimatedApp += vendorData.totalEstimatedApp;\r\n this.grandTotalEstimatedArea += vendorData.totalEstimatedArea;\r\n this.grandVerifiedEstimateApp += vendorData.verifiedEstimateApp;\r\n this.grandVerifiedEstimateArea += vendorData.verifiedEstimateArea;\r\n this.grandPendingEstimateApp += vendorData.pendingEstimateApp;\r\n this.grandVerifiedEstApproved += vendorData.verifiedEstApproved;\r\n this.grandVerifiedEstApprovedArea += vendorData.verifiedEstApprovedArea;\r\n this.grandPendingEstApproved += vendorData.pendingEstApproved;\r\n this.grandRejectedEstVerified += vendorData.rejectedEstVerified;\r\n this.grandChallanGenerated += vendorData.ChallanGenerated;\r\n this.grandChallanDeposited += vendorData.ChallanDeposited;\r\n this.grandBOQUploaded += vendorData.BOQUploaded;\r\n this.grandBOQMIArea += vendorData.BOQMIArea;\r\n this.grandBOQPending += vendorData.BOQPending;\r\n this.grandPVCompleted += vendorData.PVCompleted;\r\n this.grandPV_MI_Area += vendorData.PV_MI_Area;\r\n this.grandPV_Pending_with_JE += vendorData.PV_Pending_with_JE;\r\n this.grandPV_Pending_with_XEN += vendorData.PV_Pending_with_XEN;\r\n this.grandPending_Subsidy_Calculation +=\r\n vendorData.Pending_Subsidy_Calculation;\r\n this.grandApplicationswithDMIforSubsidy_Approval +=\r\n vendorData.ApplicationswithDMIforSubsidy_Approval;\r\n this.grandApplications_Approved_at_Administartion +=\r\n vendorData.Applications_Approved_at_Administartion;\r\n this.grandSubsisdy_Approved_MI_Area +=\r\n vendorData.Subsisdy_Approved_MI_Area;\r\n this.grandAssistanceAmount += vendorData.AssistanceAmount;\r\n this.grandPending_Application_For_Payment_By_CAO +=\r\n vendorData.Pending_Application_For_Payment_By_CAO;\r\n this.grandPayment_Done_Application_By_CAO +=\r\n vendorData.Payment_Done_Application_By_CAO;\r\n this.grandPayment_done_MI_Area += vendorData.Payment_done_MI_Area;\r\n }\r\n }\r\n\r\n showPendingDetailUserDialog(value, actionType, ...args) {\r\n // this.value = value;\r\n\r\n // console.log(value)\r\n\r\n // let finYear = this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '';\r\n // let constituency = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n // let district = this.selectedDistrict?.Dist_Code ? this.selectedDistrict?.Dist_Code : '';\r\n // let block = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n // let village = this.selectedVillage?.Vill_Code ? this.selectedVillage?.Vill_Code : '';\r\n // let crop = this.selectedCrop?.data ? this.selectedCrop?.data : 0;\r\n // let caste = this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '';\r\n // let appType = this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '';\r\n\r\n this.drilldownDetails = {\r\n ActionType: actionType,\r\n District: '',\r\n FinYear: this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '',\r\n RequestType: 'MI',\r\n ReqParam: args[0] ? args[0] : '',\r\n GeoType: this.selectedconstituency?.Vill_Code ? 'Village' : ((this.selectedBlock?.Block_Code ? 'Village' : (this.selectedDistrict?.Dist_Code ? 'Block' : 'District'))),\r\n GeoCode: value?.District_Code,\r\n Caste: this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '',\r\n CropId: this.selectedCrop?.data ? this.selectedCrop?.data : 0,\r\n userType: this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '',\r\n };\r\n\r\n this.displayPendingDetailUser = true;\r\n // console.log(this.drilldownDetails, 'this.drilldownDetails');\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n // 'Financial Year': this.selectedYear == '' ? 'All' : this.selectedYear,\r\n District: d.District,\r\n // Block: d.Block,\r\n // Constituency: d.Constituency,\r\n '': '',\r\n 'Total App(application approval)': d.totalApp,\r\n 'Total Area(application approval)': d.TotalArea,\r\n 'Verified App(application approval)': d.VerifiedApp,\r\n 'Verified App Area(application approval)': d.verifiedAppArea,\r\n 'Pending App(application approval)': d.PendingApp,\r\n 'Incomplete App Area(application approval)': d.incompleteAppArea,\r\n 'Reject App(application approval)': d.rejectApp,\r\n ' ': '',\r\n 'Total Estimated App(estimate)': d.totalEstimatedApp,\r\n 'Total Estimated Area(estimate)': d.totalEstimatedArea,\r\n 'Pending Estimate App(estimate)': d.pendingEstimateApp,\r\n ' ': ' ',\r\n 'Verified Estimate App (estimate Approval)': d.verifiedEstimateApp,\r\n 'Verified Estimate Area (estimate Approval)': d.verifiedEstimateArea,\r\n\r\n 'Verified Est Approved (estimate Approval)': d.verifiedEstApproved,\r\n 'Verified Est Approved Area (estimate Approval)':\r\n d.verifiedEstApprovedArea,\r\n 'Pending Est Approved (estimate Approval)': d.pendingEstApproved,\r\n 'Rejected Est Verified (estimate Approval)': d.rejectedEstVerified,\r\n ' ': ' ',\r\n 'Challan Generated(challan)': d.ChallanGenerated,\r\n 'Challan Deposited(challan)': d.ChallanDeposited,\r\n ' ': ' ',\r\n 'BOQ Uploaded(BOQ)': d.BOQUploaded,\r\n 'BOQ MI Area(BOQ)': d.BOQMIArea,\r\n 'BOQ Pending(BOQ)': d.BOQPending,\r\n ' ': ' ',\r\n 'PV Completed(PV)': d.PVCompleted,\r\n 'PV MI Area(PV)': d.PV_MI_Area,\r\n 'PV Pending with JE(PV)': d.PV_Pending_with_JE,\r\n 'PV Pending with XEN(PV)': d.PV_Pending_with_XEN,\r\n ' ': ' ',\r\n 'Pending Subsidy Calculation(SUBSIDY CAL)':\r\n d.Pending_Subsidy_Calculation,\r\n 'Applications with DMI for Subsidy_Approval(SUBSIDY CAL)':\r\n d.ApplicationswithDMIforSubsidy_Approval,\r\n 'Applications Approved at Administartion(SUBSIDY CAL)':\r\n d.Applications_Approved_at_Administartion,\r\n 'Subsisdy Approved MI Area(SUBSIDY CAL)': d.Subsisdy_Approved_MI_Area,\r\n 'Assistance Amount(SUBSIDY CAL)': d.AssistanceAmount,\r\n ' ': ' ',\r\n 'Pending Application For Payment By CAO(SUBSIDY )':\r\n d.Pending_Application_For_Payment_By_CAO,\r\n 'Payment Done Application By CAO(SUBSIDY )':\r\n d.Payment_Done_Application_By_CAO,\r\n 'Payment done MI Area(SUBSIDY )': d.Payment_done_MI_Area,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onPage(event: any) {\r\n this.arrayIndex = event.first;\r\n this.calculateTotalApp();\r\n }\r\n calculateTotalApp() {\r\n this.totalApp = 0;\r\n this.totalArea = 0;\r\n this.incompleteAppArea = 0;\r\n this.verifiedApp = 0;\r\n this.verifiedAppArea = 0;\r\n this.pendingApp = 0;\r\n this.incompleteApp = 0;\r\n this.incompleteAppArea = 0;\r\n this.rejectApp = 0;\r\n this.totalEstimatedApp = 0;\r\n this.totalEstimatedArea = 0;\r\n this.verifiedEstimateApp = 0;\r\n this.verifiedEstimateArea = 0;\r\n this.pendingEstimateApp = 0;\r\n this.verifiedEstApproved = 0;\r\n this.verifiedEstApprovedArea = 0;\r\n this.pendingEstApproved = 0;\r\n this.rejectedEstVerified = 0;\r\n this.challanGenerated = 0;\r\n this.challanDeposited = 0;\r\n this.BOQUploaded = 0;\r\n this.BOQMIArea = 0;\r\n this.BOQPending = 0;\r\n this.PVCompleted = 0;\r\n this.PV_MI_Area = 0;\r\n this.PV_Pending_with_JE = 0;\r\n this.PV_Pending_with_XEN = 0;\r\n this.pending_Subsidy_Calculation = 0;\r\n this.applicationswithDMIforSubsidy_Approval = 0;\r\n this.applications_Approved_at_Administartion = 0;\r\n this.subsisdy_Approved_MI_Area = 0;\r\n this.assistanceAmount = 0;\r\n this.pending_Application_For_Payment_By_CAO = 0;\r\n this.payment_Done_Application_By_CAO = 0;\r\n this.payment_done_MI_Area = 0;\r\n for (\r\n let i = this.arrayIndex;\r\n this.tempConsolidateData.length > 10\r\n ? i < this.arrayIndex + 10\r\n : i < this.tempConsolidateData.length;\r\n i++\r\n ) {\r\n this.totalApp += this.tempConsolidateData[i].totalApp;\r\n this.totalArea += this.tempConsolidateData[i].TotalArea;\r\n this.verifiedApp += this.tempConsolidateData[i].VerifiedApp;\r\n this.verifiedAppArea += this.tempConsolidateData[i].verifiedAppArea;\r\n this.pendingApp += this.tempConsolidateData[i].PendingApp;\r\n this.incompleteApp += this.tempConsolidateData[i].IncompleteApp;\r\n this.incompleteAppArea += this.tempConsolidateData[i].incompleteAppArea;\r\n this.rejectApp += this.tempConsolidateData[i].rejectApp;\r\n this.totalEstimatedApp += this.tempConsolidateData[i].totalEstimatedApp;\r\n this.totalEstimatedArea += this.tempConsolidateData[i].totalEstimatedArea;\r\n this.verifiedEstimateApp +=\r\n this.tempConsolidateData[i].verifiedEstimateApp;\r\n this.verifiedEstimateArea +=\r\n this.tempConsolidateData[i].verifiedEstimateArea;\r\n this.pendingEstimateApp += this.tempConsolidateData[i].pendingEstimateApp;\r\n this.verifiedEstApproved +=\r\n this.tempConsolidateData[i].verifiedEstApproved;\r\n this.verifiedEstApprovedArea +=\r\n this.tempConsolidateData[i].verifiedEstApprovedArea;\r\n this.pendingEstApproved += this.tempConsolidateData[i].pendingEstApproved;\r\n this.rejectedEstVerified +=\r\n this.tempConsolidateData[i].rejectedEstVerified;\r\n this.challanGenerated += this.tempConsolidateData[i].ChallanGenerated;\r\n this.challanDeposited += this.tempConsolidateData[i].ChallanDeposited;\r\n this.BOQUploaded += this.tempConsolidateData[i].BOQUploaded;\r\n this.BOQMIArea += this.tempConsolidateData[i].BOQMIArea;\r\n this.BOQPending += this.tempConsolidateData[i].BOQPending;\r\n this.PVCompleted += this.tempConsolidateData[i].PVCompleted;\r\n this.PV_MI_Area += this.tempConsolidateData[i].PV_MI_Area;\r\n this.PV_Pending_with_JE += this.tempConsolidateData[i].PV_Pending_with_JE;\r\n this.PV_Pending_with_XEN +=\r\n this.tempConsolidateData[i].PV_Pending_with_XEN;\r\n this.pending_Subsidy_Calculation +=\r\n this.tempConsolidateData[i].Pending_Subsidy_Calculation;\r\n this.applicationswithDMIforSubsidy_Approval +=\r\n this.tempConsolidateData[i].ApplicationswithDMIforSubsidy_Approval;\r\n this.applications_Approved_at_Administartion +=\r\n this.tempConsolidateData[i].Applications_Approved_at_Administartion;\r\n this.subsisdy_Approved_MI_Area +=\r\n this.tempConsolidateData[i].Subsisdy_Approved_MI_Area;\r\n this.assistanceAmount += this.tempConsolidateData[i].AssistanceAmount;\r\n this.pending_Application_For_Payment_By_CAO +=\r\n this.tempConsolidateData[i].Pending_Application_For_Payment_By_CAO;\r\n this.payment_Done_Application_By_CAO +=\r\n this.tempConsolidateData[i].Payment_Done_Application_By_CAO;\r\n this.payment_done_MI_Area +=\r\n this.tempConsolidateData[i].Payment_done_MI_Area;\r\n }\r\n // this.verfAppArea= this.verfAppArea.toFixed(4);\r\n }\r\n\r\n tableDataFunction(event: any) {\r\n this.tempConsolidateData = event.filteredValue;\r\n this.arrayIndex = 0;\r\n this.calculateTotalApp();\r\n }\r\n\r\n onClickBack() {\r\n this.location.back();\r\n }\r\n\r\n onClickApplyFilter() {\r\n let finYear = this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '';\r\n let constituency = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let district = this.selectedDistrict?.Dist_Code ? this.selectedDistrict?.Dist_Code : '';\r\n let block = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n let village = this.selectedVillage?.Vill_Code ? this.selectedVillage?.Vill_Code : '';\r\n let crop = this.selectedCrop?.data ? this.selectedCrop?.data : 0;\r\n let caste = this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '';\r\n let appType = this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '';\r\n\r\n let reqBody = {\r\n \"financialYear\": finYear,\r\n \"constituency\": constituency,\r\n \"district\": district,\r\n \"block\": block,\r\n \"village\": village,\r\n \"cropid\": crop,\r\n \"caste\": caste,\r\n \"isABY\": appType\r\n }\r\n\r\n if(constituency && district == ''){\r\n this.column1Name = \"Village\";\r\n }else if(constituency == '' && district && block == ''){\r\n this.column1Name = \"Block\";\r\n }else if((constituency && district) || (district && block) || (constituency && district && block)){\r\n this.column1Name = \"Village\";\r\n }else{\r\n this.column1Name = \"District\";\r\n }\r\n\r\n this.loadData(reqBody);\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'MIArea', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n}\r\n","
\r\n \r\n\r\n
\r\n
\r\n {{'MI_CONSOLIDATED_REPORT_DETAILS'| translate}}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
0\">\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ column1Name }}\r\n \r\n \r\n \r\n \r\n \r\n {{'TOTAL_APP'| translate}}\r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n {{'VERIFIED_APP'| translate}}\r\n \r\n \r\n {{'VERIFIED_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'INCOMPLETE+PENDING_APP'| translate}}\r\n \r\n \r\n {{'INCOMPLETE+PENDING_APP_AREA'| translate}}\r\n \r\n \r\n {{'REJECTED_APP'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_ESTIMATED_APP'| translate}}\r\n \r\n \r\n {{'TOTAL_ESTIMATED_AREA'| translate}}\r\n \r\n \r\n {{'PENDING_ESTIMATE_APP'| translate}}\r\n \r\n \r\n {{'VERIFIED_ESTIMATE_APP'|\r\n translate}}\r\n \r\n \r\n {{'VERIFIED_ESTIMATE_AREA'|\r\n translate}}\r\n \r\n \r\n \r\n\r\n {{'VERIFIED_ESTIMATE_APPROVED'|\r\n translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_ESTIMATE_APPROVED_AREA'|\r\n translate}}\r\n \r\n \r\n {{'PENDING_ESTIMATE_APPROVED'|\r\n translate}}\r\n \r\n \r\n {{'REJECTED_ESTIMATE_VERIFIED'|\r\n translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_GENERATED'| translate}}\r\n \r\n \r\n {{'CHALLAN_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_UPLOADED'| translate}}\r\n \r\n \r\n {{'BOQ_MI_AREA'| translate}}\r\n \r\n \r\n {{'BOQ_PENDING'| translate}}\r\n \r\n \r\n \r\n {{'PV_COMPLETED'| translate}}\r\n \r\n \r\n {{'PV_MI_AREA'| translate}}\r\n \r\n \r\n {{'PV_PENDING_WITH_JE'| translate}}\r\n \r\n \r\n {{'PV_PENDING_WITH_XEN'| translate}}\r\n \r\n \r\n \r\n \r\n {{'APP_WITH_DMI_SUBSIDY_APPROVAL'|\r\n translate}}\r\n \r\n \r\n \r\n {{'APP_APPROVED_AT_ADMINISTRATION'|\r\n translate}}\r\n \r\n \r\n \r\n {{'PENDING_SUBSIDY_CALCULATION'|\r\n translate}}\r\n \r\n \r\n {{'SUBSIDY_APPROVED_MI_AREA'|\r\n translate}}\r\n \r\n \r\n {{'ASSISTANCE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PENDING_APP_FOR_PAYMENT_BY_CAO'|\r\n translate}}\r\n \r\n \r\n \r\n {{'PAYMENT_DONE_APP_BY_CAO'|\r\n translate}}\r\n \r\n \r\n {{'PAYMENT_DONE_MI_AREA'|\r\n translate}}\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{consolidateData.District}}\r\n \r\n \r\n {{consolidateData.totalApp}}\r\n {{consolidateData.TotalArea}}\r\n {{consolidateData.VerifiedApp}}\r\n {{consolidateData.verifiedAppArea}}\r\n \r\n \r\n {{consolidateData.IncompleteApp}}\r\n {{consolidateData.incompleteAppArea}}\r\n {{consolidateData.rejectApp}}\r\n \r\n {{consolidateData.totalEstimatedApp}}\r\n {{consolidateData.totalEstimatedArea}}\r\n \r\n {{\r\n consolidateData.pendingEstimateApp }}\r\n {{consolidateData.verifiedEstimateApp}}\r\n {{consolidateData.verifiedEstimateArea}}\r\n \r\n\r\n\r\n {{consolidateData.verifiedEstApproved}}\r\n {{consolidateData.verifiedEstApprovedArea}}\r\n \r\n {{\r\n consolidateData.pendingEstApproved }}\r\n {{consolidateData.rejectedEstVerified}}\r\n \r\n {{consolidateData.ChallanGenerated}}\r\n {{consolidateData.ChallanDeposited}}\r\n \r\n {{consolidateData.BOQUploaded}}\r\n {{consolidateData.BOQMIArea}}\r\n \r\n {{\r\n consolidateData.BOQPending }}\r\n\r\n \r\n {{consolidateData.PVCompleted}}\r\n {{consolidateData.PV_MI_Area}}\r\n \r\n {{\r\n consolidateData.PV_Pending_with_JE }}\r\n \r\n {{\r\n consolidateData.PV_Pending_with_XEN }}\r\n \r\n\r\n \r\n {{consolidateData.ApplicationswithDMIforSubsidy_Approval}}\r\n {{consolidateData.Applications_Approved_at_Administartion}}\r\n {{\r\n consolidateData.Pending_Subsidy_Calculation }}\r\n {{consolidateData.Subsisdy_Approved_MI_Area}}\r\n {{consolidateData.AssistanceAmount}}\r\n \r\n\r\n \r\n {{\r\n consolidateData.Pending_Application_For_Payment_By_CAO }}\r\n {{consolidateData.Payment_Done_Application_By_CAO}}\r\n {{consolidateData.Payment_done_MI_Area}}\r\n\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n \r\n \r\n\r\n 0\" class=\"footer-section\">\r\n Total \r\n \r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandTotalArea | number:'1.0-2'}}\r\n {{grandVerifiedApp | number:'1.0-2'}}\r\n {{grandVerifiedAppArea | number:'1.0-2'}}\r\n \r\n {{grandIncompleteApp | number:'1.0-2'}}\r\n {{grandIncompleteAppArea | number:'1.0-2'}}\r\n {{grandRejectApp | number:'1.0-2'}}\r\n \r\n {{grandTotalEstimatedApp | number:'1.0-2'}}\r\n {{grandTotalEstimatedArea | number:'1.0-2'}}\r\n {{grandPendingEstimateApp | number:'1.0-2'}}\r\n {{grandVerifiedEstimateApp | number:'1.0-2'}}\r\n {{grandVerifiedEstimateArea | number:'1.0-2'}}\r\n \r\n {{grandVerifiedEstApproved | number:'1.0-2'}}\r\n {{grandVerifiedEstApprovedArea | number:'1.0-2'}}\r\n {{grandPendingEstApproved | number:'1.0-2'}}\r\n {{grandRejectedEstVerified | number:'1.0-2'}}\r\n \r\n {{grandChallanGenerated | number:'1.0-2'}}\r\n {{grandChallanDeposited | number:'1.0-2'}}\r\n \r\n {{grandBOQUploaded | number:'1.0-2'}}\r\n {{grandBOQMIArea | number:'1.0-2'}}\r\n {{grandBOQPending | number:'1.0-2'}}\r\n \r\n {{grandPVCompleted | number:'1.0-2'}}\r\n {{grandPV_MI_Area | number:'1.0-2'}}\r\n {{grandPV_Pending_with_JE | number:'1.0-2'}}\r\n {{grandPV_Pending_with_XEN | number:'1.0-2'}}\r\n \r\n {{grandApplicationswithDMIforSubsidy_Approval | number:'1.0-2'}}\r\n {{grandApplications_Approved_at_Administartion | number:'1.0-2'}}\r\n {{grandPending_Subsidy_Calculation | number:'1.0-2'}}\r\n {{grandSubsisdy_Approved_MI_Area | number:'1.0-2'}}\r\n {{grandAssistanceAmount | number:'1.0-2'}}\r\n \r\n {{grandPending_Application_For_Payment_By_CAO | number:'1.0-2'}}\r\n {{grandPayment_Done_Application_By_CAO | number:'1.0-2'}}\r\n {{grandPayment_done_MI_Area | number:'1.0-2'}}\r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { first } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Location } from '@angular/common'\r\n\r\n@Component({\r\n selector: 'app-pond-consolidated-detail-report',\r\n templateUrl: './pond-consolidated-detail-report.component.html',\r\n styleUrls: ['./pond-consolidated-detail-report.component.scss']\r\n})\r\nexport class PondConsolidatedDetailReportComponent implements OnInit {\r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n miUnderProcessReport: MenuItem[];\r\n\r\n public pondConsolidatedTableData: any = [];\r\n public loading: boolean = false;\r\n public autoId: any = 0;\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private location: Location,\r\n private loader: AppLoaderService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.miUnderProcessReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.pondConsolidatedTableData, `MI_Consolidated_Details`);\r\n },\r\n },\r\n ];\r\n\r\n this.loadData('', 0);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(finYear, autoId) {\r\n if (autoId == 0) {\r\n this.loading = true;\r\n }\r\n let sub = this.reportsService\r\n .getPondAppLevelWiseReport(finYear, autoId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n // console.log(data.length, data)\r\n if (data?.length > 0) {\r\n this.pondConsolidatedTableData = this.pondConsolidatedTableData.concat(data);\r\n\r\n const lastAutoId = data[data.length - 1].AutoId;\r\n this.loadData('', lastAutoId);\r\n } else {\r\n\r\n }\r\n // console.log(this.underProcessCount)\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'AppId': d.AppId,\r\n 'Farmer_Name': d.Farmer_Name,\r\n 'Mobile': d.Mobile,\r\n 'District': d.District,\r\n 'Block': d.Block,\r\n 'Village': d.Village,\r\n 'Applicant_type': d.Applicant_type,\r\n 'UserType': d.UserType,\r\n 'Coverage_Area': d.Coverage_Area,\r\n 'Total_Cost': d.Total_Cost,\r\n 'IntimationStatus_Stage1': d.IntimationStatus_Stage1,\r\n 'JeStatus_Stage1': d.JeStatus_Stage1,\r\n 'XENStatus_Stage1': d.XENStatus_Stage1,\r\n 'JE_EWStatus_Stage1': d.JE_EWStatus_Stage1,\r\n 'DD_EWStatus_Stage1': d.DD_EWStatus_Stage1,\r\n 'IntimationStatus_Stage2': d.IntimationStatus_Stage2,\r\n 'JeStatus_Stage2': d.JeStatus_Stage2,\r\n 'XENStatus_Stage2': d.XENStatus_Stage2,\r\n 'JE_EWStatus_Stage2': d.JE_EWStatus_Stage2,\r\n 'DD_EWStatus_Stage2': d.DD_EWStatus_Stage2,\r\n 'LotStatus_Stage1': d.LotStatus_Stage1,\r\n 'LotStatus_Stage2': d.LotStatus_Stage2,\r\n 'LotStatus_Stage3': d.LotStatus_Stage3,\r\n 'ReqFinYear': d.ReqFinYear,\r\n 'KYCDate': d.KYCDate,\r\n 'KYCStatus': d.KYCStatus,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onClickBack() {\r\n this.location.back();\r\n }\r\n\r\n}\r\n\r\n","
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ 'Pond Consolidated Detail' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'FARMER_NAME'| translate}}\r\n {{'MOBILE_NO'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'Applicant Type'| translate}}\r\n {{'User Type'| translate}}\r\n {{'Coverage Area'| translate}}\r\n {{'Total Cost'| translate}}\r\n {{'Intimation Status Stage1'| translate}}\r\n {{'Je Status Stage1'| translate}}\r\n {{'XEN Status Stage1'| translate}}\r\n {{'JE EW Status Stage1'| translate}}\r\n {{'DD EW Status Stage1'| translate}}\r\n {{'IntimationStatus Stage2'| translate}}\r\n {{'JeStatus Stage2'| translate}}\r\n {{'XENStatus Stage2'| translate}}\r\n {{'JE EWStatus Stage2'| translate}}\r\n {{'DD EWStatus Stage2'| translate}}\r\n {{'Lot Status Stage1'| translate}}\r\n {{'Lot Status Stage2'| translate}}\r\n {{'Lot Status Stage3'| translate}}\r\n {{'FinYear'| translate}}\r\n {{'KYC Date'| translate}}\r\n {{'KYC Status'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{consolidateData?.AppId}}\r\n {{consolidateData?.Farmer_Name}}\r\n {{consolidateData?.Mobile}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Applicant_type}}\r\n {{consolidateData?.UserType}}\r\n {{consolidateData?.Coverage_Area}}\r\n {{consolidateData?.Total_Cost}} \r\n {{consolidateData?.IntimationStatus_Stage1}}\r\n {{consolidateData?.JeStatus_Stage1}}\r\n {{consolidateData?.XENStatus_Stage1}}\r\n {{consolidateData?.JE_EWStatus_Stage1}}\r\n {{consolidateData?.DD_EWStatus_Stage1}}\r\n {{consolidateData?.IntimationStatus_Stage2}}\r\n {{consolidateData?.JeStatus_Stage2}}\r\n {{consolidateData?.XENStatus_Stage2}}\r\n {{consolidateData?.JE_EWStatus_Stage2}}\r\n {{consolidateData?.DD_EWStatus_Stage2}}\r\n {{consolidateData?.LotStatus_Stage1}}\r\n {{consolidateData?.LotStatus_Stage2}}\r\n {{consolidateData?.LotStatus_Stage3}}\r\n {{consolidateData?.ReqFinYear}}\r\n {{consolidateData?.KYCDate}}\r\n {{consolidateData?.KYCStatus}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { VendorMiArea } from 'src/app/models/department-reports.model';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport saveAs from 'file-saver';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { Location } from '@angular/common';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\n\r\n@Component({\r\n selector: 'app-pond-consolidated-total-app-report',\r\n templateUrl: './pond-consolidated-total-app-report.component.html',\r\n styleUrls: ['./pond-consolidated-total-app-report.component.scss']\r\n})\r\nexport class PondConsolidatedTotalAppReportComponent implements OnInit {\r\n consolidateData: any = [];\r\n public districtsArray: any = [];\r\n public distWiseTotalApp: any = [];\r\n public loading: boolean = false;\r\n\r\n appVerificationModel: VendorMiArea[];\r\n tempConsolidateData: any[];\r\n arrayIndex: number;\r\n\r\n totalApp: any;\r\n totalArea: any;\r\n verifiedApp: any;\r\n verifiedAppArea: any;\r\n pendingApp: any;\r\n incompleteApp: any;\r\n incompleteAppArea: any;\r\n rejectApp: any;\r\n totalEstimatedApp: any;\r\n totalEstimatedArea: any;\r\n verifiedEstimateApp: any;\r\n verifiedEstimateArea: any;\r\n pendingEstimateApp: any;\r\n verifiedEstApproved: any;\r\n verifiedEstApprovedArea: any;\r\n pendingEstApproved: any;\r\n rejectedEstVerified: any;\r\n challanGenerated: any;\r\n challanDeposited: any;\r\n BOQUploaded: any;\r\n BOQMIArea: any;\r\n BOQPending: any;\r\n PVCompleted: any;\r\n PV_MI_Area: any;\r\n PV_Pending_with_JE: any;\r\n PV_Pending_with_XEN: any;\r\n pending_Subsidy_Calculation: any;\r\n applicationswithDMIforSubsidy_Approval: any;\r\n applications_Approved_at_Administartion: any;\r\n subsisdy_Approved_MI_Area: any;\r\n assistanceAmount: any;\r\n pending_Application_For_Payment_By_CAO: any;\r\n payment_Done_Application_By_CAO: any;\r\n payment_done_MI_Area: any;\r\n\r\n grandTotalApp: any;\r\n grandTotalArea: any;\r\n grandVerifiedApp: any;\r\n grandVerifiedAppArea: any;\r\n grandPendingApp: any;\r\n grandIncompleteApp: any;\r\n grandIncompleteAppArea: any;\r\n grandRejectApp: any;\r\n grandTotalEstimatedApp: any;\r\n grandTotalEstimatedArea: any;\r\n grandVerifiedEstimateApp: any;\r\n grandVerifiedEstimateArea: any;\r\n grandPendingEstimateApp: any;\r\n grandVerifiedEstApproved: any;\r\n grandVerifiedEstApprovedArea: any;\r\n grandPendingEstApproved: any;\r\n grandRejectedEstVerified: any;\r\n grandChallanGenerated: any;\r\n grandChallanDeposited: any;\r\n grandBOQUploaded: any;\r\n grandBOQMIArea: any;\r\n grandBOQPending: any;\r\n grandPVCompleted: any;\r\n grandPV_MI_Area: any;\r\n grandPV_Pending_with_JE: any;\r\n grandPV_Pending_with_XEN: any;\r\n grandPending_Subsidy_Calculation: any;\r\n grandApplicationswithDMIforSubsidy_Approval: any;\r\n grandApplications_Approved_at_Administartion: any;\r\n grandSubsisdy_Approved_MI_Area: any;\r\n grandAssistanceAmount: any;\r\n grandPending_Application_For_Payment_By_CAO: any;\r\n grandPayment_Done_Application_By_CAO: any;\r\n grandPayment_done_MI_Area: any;\r\n\r\n public subjectSub: any;\r\n public subscriptions: any = [];\r\n public selectedYear: any;\r\n\r\n public drilldownDetails: any;\r\n public displayPendingDetailUser: boolean = false;\r\n\r\n appVerificationItems: MenuItem[];\r\n\r\n filteredVillage: any;\r\n // districtList: any = [];\r\n\r\n finYearList: any = [];\r\n selectedFinYear: any = null;\r\n constituencyList: any = [];\r\n selectedconstituency: any = null;\r\n districtList: any = [];\r\n selectedDistrict: any = null;\r\n blockList: any = [];\r\n selectedBlock: any = null;\r\n villageList: any = [];\r\n selectedVillage: any = null;\r\n\r\n cropTypeList: any = [];\r\n selectedCrop: any = null;\r\n casteList: any = [];\r\n selectedCaste: any = null;\r\n appTypeList: any = [];\r\n selectedAppType: any = null;\r\n\r\n scrollHeight: any = '130px';\r\n\r\n column1Name: any = \"District\";\r\n\r\n public cropMergeList: any;\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private service: BaseService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private location: Location,\r\n private reportService: ReportsService,\r\n private flService: FarmerLandDetailService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n // this.loadDataAndApplyFilter();\r\n // this.loadData('');\r\n this.getFinYearList();\r\n this.getDistrictList();\r\n this.getConstituencyList();\r\n this.getCasteList();\r\n this.getCorpTypeList();\r\n this.getAppTypeList();\r\n\r\n this.onClickApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'MI_Consolidate_report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'MI_Consolidate_report'\r\n // );\r\n // },\r\n // },\r\n ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n getDistrictList() {\r\n let sub = this.reportService\r\n .getDistrictMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.districtList = data;\r\n } else {\r\n this.districtList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.districtList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'District List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getCorpTypeList() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.cropTypeList = data;\r\n\r\n let arrayCrop = [];\r\n let cropMerge = data.map((parent) => {\r\n arrayCrop.push(\r\n parent['children'].map((child) => ({\r\n ...child,\r\n parentData: parent.data,\r\n parentLabel: parent.label\r\n }))\r\n );\r\n });\r\n\r\n this.cropMergeList = [].concat(...arrayCrop);\r\n\r\n } else {\r\n this.cropTypeList = [];\r\n this.cropMergeList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.cropTypeList = [];\r\n this.cropMergeList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Crop Type List',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCasteList() {\r\n setTimeout(() => {\r\n this.casteList = [\r\n {\r\n Caste_Code: 1,\r\n Caste_Description: 'Gen'\r\n },\r\n {\r\n Caste_Code: 2,\r\n Caste_Description: 'BC'\r\n },\r\n {\r\n Caste_Code: 3,\r\n Caste_Description: 'SC'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getAppTypeList() {\r\n setTimeout(() => {\r\n this.appTypeList = [\r\n {\r\n AppType_Code: 1,\r\n AppType_Description: 'Normal'\r\n },\r\n {\r\n AppType_Code: 2,\r\n AppType_Description: 'ABY'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getFinYearList() {\r\n let sub = this.reportService\r\n .getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.finYearList = data;\r\n } else {\r\n this.finYearList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.finYearList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Finanacial Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getConstituencyList() {\r\n let sub = this.reportService\r\n .getConsituencyMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.constituencyList = data;\r\n } else {\r\n this.constituencyList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.constituencyList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Constituency List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectConstituency() {\r\n this.selectedVillage = null;\r\n this.villageList = [];\r\n\r\n console.log(this.selectedconstituency)\r\n let constituencyCode = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let blockCode = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n this.getVillageList(blockCode, constituencyCode);\r\n }\r\n\r\n onSelectDistrict() {\r\n this.selectedBlock = null;\r\n this.blockList = [];\r\n\r\n\r\n console.log(this.selectedDistrict)\r\n let districtCode = this.selectedDistrict?.Dist_Code;\r\n this.getBlockList(districtCode);\r\n }\r\n\r\n getBlockList(districtCode) {\r\n let sub = this.reportService\r\n .getBlockMaster(districtCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.blockList = data;\r\n } else {\r\n this.blockList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.blockList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Block List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectBlock() {\r\n this.selectedVillage = null;\r\n this.villageList = [];\r\n\r\n console.log(this.selectedBlock)\r\n let constituencyCode = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let blockCode = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n this.getVillageList(blockCode, constituencyCode);\r\n }\r\n\r\n getVillageList(blockCode, conCode) {\r\n let sub = this.reportService\r\n .getVillageMasterByConsituency(blockCode, conCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.villageList = data;\r\n } else {\r\n this.villageList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.villageList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Village List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n // getVillageData(){\r\n // this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // this.villageList = res;\r\n // this.filteredVillage = [...this.villageList]\r\n\r\n // if (!window.localStorage.getItem(\"villageMaster\")) {\r\n // window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n // }\r\n // })\r\n // }\r\n\r\n // filterVillage(event: any) {\r\n // const filtered: any[] = [];\r\n // const query = event.query;\r\n // for (let i = 0; i < this.villageList.length; i++) {\r\n // const village = this.villageList[i];\r\n // if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n // filtered.push(village);\r\n // }\r\n // }\r\n\r\n // this.filteredVillage = filtered;\r\n // }\r\n\r\n // loadDataAndApplyFilter(){\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n // }\r\n\r\n // this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n // (res) => {\r\n\r\n // this.selectedYear = res;\r\n // this.loadData(this.selectedYear);\r\n // }\r\n // );\r\n // }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(reqBody) {\r\n this.loading = true;\r\n\r\n let sub = this.reportService\r\n .getPondConsolidated_Report(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n if (data?.length == 1) {\r\n this.scrollHeight = '180px';\r\n } else if (data?.length <= 5) {\r\n this.scrollHeight = '300px';\r\n } else {\r\n this.scrollHeight = '400px';\r\n }\r\n\r\n this.consolidateData = data;\r\n // console.log(this.consolidateData);\r\n this.districtsArray = this.consolidateData.map(\r\n (item) => item['District']\r\n );\r\n this.distWiseTotalApp = this.consolidateData.map(\r\n (item) => item['totalApp']\r\n );\r\n // console.log(this.districtsArray);\r\n // this.loadPieChartData();\r\n\r\n this.appVerificationModel = data;\r\n this.tempConsolidateData = data;\r\n this.arrayIndex = 0;\r\n this.calculateGrandTotal();\r\n // this.applyNewGraph1Data();\r\n this.loading = false;\r\n } else {\r\n this.scrollHeight = '130px';\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.scrollHeight = '130px';\r\n // this.loader.close();\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Report',\r\n // '',\r\n // new Date(),\r\n // err\r\n // );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n calculateGrandTotal() {\r\n this.grandTotalApp = 0;\r\n this.grandTotalArea = 0;\r\n this.grandVerifiedApp = 0;\r\n this.grandVerifiedAppArea = 0;\r\n this.grandPendingApp = 0;\r\n this.grandIncompleteApp = 0;\r\n this.grandIncompleteAppArea = 0;\r\n this.grandRejectApp = 0;\r\n this.grandTotalEstimatedApp = 0;\r\n this.grandTotalEstimatedArea = 0;\r\n this.grandVerifiedEstimateApp = 0;\r\n this.grandVerifiedEstimateArea = 0;\r\n this.grandPendingEstimateApp = 0;\r\n this.grandVerifiedEstApproved = 0;\r\n this.grandVerifiedEstApprovedArea = 0;\r\n this.grandPendingEstApproved = 0;\r\n this.grandRejectedEstVerified = 0;\r\n this.grandChallanGenerated = 0;\r\n this.grandChallanDeposited = 0;\r\n this.grandBOQUploaded = 0;\r\n this.grandBOQMIArea = 0;\r\n this.grandBOQPending = 0;\r\n this.grandPVCompleted = 0;\r\n this.grandPV_MI_Area = 0;\r\n this.grandPV_Pending_with_JE = 0;\r\n this.grandPV_Pending_with_XEN = 0;\r\n this.grandPending_Subsidy_Calculation = 0;\r\n this.grandApplicationswithDMIforSubsidy_Approval = 0;\r\n this.grandApplications_Approved_at_Administartion = 0;\r\n this.grandSubsisdy_Approved_MI_Area = 0;\r\n this.grandAssistanceAmount = 0;\r\n this.grandPending_Application_For_Payment_By_CAO = 0;\r\n this.grandPayment_Done_Application_By_CAO = 0;\r\n this.grandPayment_done_MI_Area = 0;\r\n\r\n for (let vendorData of this.tempConsolidateData) {\r\n this.grandTotalApp += vendorData.totalApp;\r\n this.grandTotalArea += vendorData.TotalArea;\r\n this.grandVerifiedApp += vendorData.VerifiedApp;\r\n this.grandVerifiedAppArea += vendorData.verifiedAppArea;\r\n this.grandPendingApp += vendorData.PendingApp;\r\n this.grandIncompleteApp += vendorData.IncompleteApp;\r\n this.grandIncompleteAppArea += vendorData.incompleteAppArea;\r\n this.grandRejectApp += vendorData.rejectApp;\r\n this.grandTotalEstimatedApp += vendorData.totalEstimatedApp;\r\n this.grandTotalEstimatedArea += vendorData.totalEstimatedArea;\r\n this.grandVerifiedEstimateApp += vendorData.verifiedEstimateApp;\r\n this.grandVerifiedEstimateArea += vendorData.verifiedEstimateArea;\r\n this.grandPendingEstimateApp += vendorData.pendingEstimateApp;\r\n this.grandVerifiedEstApproved += vendorData.verifiedEstApproved;\r\n this.grandVerifiedEstApprovedArea += vendorData.verifiedEstApprovedArea;\r\n this.grandPendingEstApproved += vendorData.pendingEstApproved;\r\n this.grandRejectedEstVerified += vendorData.rejectedEstVerified;\r\n this.grandChallanGenerated += vendorData.ChallanGenerated;\r\n this.grandChallanDeposited += vendorData.ChallanDeposited;\r\n this.grandBOQUploaded += vendorData.BOQUploaded;\r\n this.grandBOQMIArea += vendorData.BOQMIArea;\r\n this.grandBOQPending += vendorData.BOQPending;\r\n this.grandPVCompleted += vendorData.PVCompleted;\r\n this.grandPV_MI_Area += vendorData.PV_MI_Area;\r\n this.grandPV_Pending_with_JE += vendorData.PV_Pending_with_JE;\r\n this.grandPV_Pending_with_XEN += vendorData.PV_Pending_with_XEN;\r\n this.grandPending_Subsidy_Calculation +=\r\n vendorData.Pending_Subsidy_Calculation;\r\n this.grandApplicationswithDMIforSubsidy_Approval +=\r\n vendorData.ApplicationswithDMIforSubsidy_Approval;\r\n this.grandApplications_Approved_at_Administartion +=\r\n vendorData.Applications_Approved_at_Administartion;\r\n this.grandSubsisdy_Approved_MI_Area +=\r\n vendorData.Subsisdy_Approved_MI_Area;\r\n this.grandAssistanceAmount += vendorData.AssistanceAmount;\r\n this.grandPending_Application_For_Payment_By_CAO +=\r\n vendorData.Pending_Application_For_Payment_By_CAO;\r\n this.grandPayment_Done_Application_By_CAO +=\r\n vendorData.Payment_Done_Application_By_CAO;\r\n this.grandPayment_done_MI_Area += vendorData.Payment_done_MI_Area;\r\n }\r\n }\r\n\r\n showPendingDetailUserDialog(value, actionType, ...args) {\r\n // this.value = value;\r\n\r\n // console.log(value)\r\n\r\n // let finYear = this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '';\r\n // let constituency = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n // let district = this.selectedDistrict?.Dist_Code ? this.selectedDistrict?.Dist_Code : '';\r\n // let block = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n // let village = this.selectedVillage?.Vill_Code ? this.selectedVillage?.Vill_Code : '';\r\n // let crop = this.selectedCrop?.data ? this.selectedCrop?.data : 0;\r\n // let caste = this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '';\r\n // let appType = this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '';\r\n\r\n this.drilldownDetails = {\r\n ActionType: actionType,\r\n District: '',\r\n FinYear: this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '',\r\n RequestType: 'MI',\r\n ReqParam: args[0] ? args[0] : '',\r\n GeoType: this.selectedconstituency?.Vill_Code ? 'Village' : ((this.selectedBlock?.Block_Code ? 'Village' : (this.selectedDistrict?.Dist_Code ? 'Block' : 'District'))),\r\n GeoCode: value?.District_Code,\r\n Caste: this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '',\r\n CropId: this.selectedCrop?.data ? this.selectedCrop?.data : 0,\r\n userType: this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '',\r\n };\r\n\r\n this.displayPendingDetailUser = true;\r\n // console.log(this.drilldownDetails, 'this.drilldownDetails');\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n // 'Financial Year': this.selectedYear == '' ? 'All' : this.selectedYear,\r\n District: d.District,\r\n // Block: d.Block,\r\n // Constituency: d.Constituency,\r\n '': '',\r\n 'Total App(application approval)': d.totalApp,\r\n 'Total Area(application approval)': d.TotalArea,\r\n 'Verified App(application approval)': d.VerifiedApp,\r\n 'Verified App Area(application approval)': d.verifiedAppArea,\r\n 'Pending App(application approval)': d.PendingApp,\r\n 'Incomplete App Area(application approval)': d.incompleteAppArea,\r\n 'Reject App(application approval)': d.rejectApp,\r\n ' ': '',\r\n 'Total Estimated App(estimate)': d.totalEstimatedApp,\r\n 'Total Estimated Area(estimate)': d.totalEstimatedArea,\r\n 'Pending Estimate App(estimate)': d.pendingEstimateApp,\r\n ' ': ' ',\r\n 'Verified Estimate App (estimate Approval)': d.verifiedEstimateApp,\r\n 'Verified Estimate Area (estimate Approval)': d.verifiedEstimateArea,\r\n\r\n 'Verified Est Approved (estimate Approval)': d.verifiedEstApproved,\r\n 'Verified Est Approved Area (estimate Approval)':\r\n d.verifiedEstApprovedArea,\r\n 'Pending Est Approved (estimate Approval)': d.pendingEstApproved,\r\n 'Rejected Est Verified (estimate Approval)': d.rejectedEstVerified,\r\n ' ': ' ',\r\n 'Challan Generated(challan)': d.ChallanGenerated,\r\n 'Challan Deposited(challan)': d.ChallanDeposited,\r\n ' ': ' ',\r\n 'BOQ Uploaded(BOQ)': d.BOQUploaded,\r\n 'BOQ MI Area(BOQ)': d.BOQMIArea,\r\n 'BOQ Pending(BOQ)': d.BOQPending,\r\n ' ': ' ',\r\n 'PV Completed(PV)': d.PVCompleted,\r\n 'PV MI Area(PV)': d.PV_MI_Area,\r\n 'PV Pending with JE(PV)': d.PV_Pending_with_JE,\r\n 'PV Pending with XEN(PV)': d.PV_Pending_with_XEN,\r\n ' ': ' ',\r\n 'Pending Subsidy Calculation(SUBSIDY CAL)':\r\n d.Pending_Subsidy_Calculation,\r\n 'Applications with DMI for Subsidy_Approval(SUBSIDY CAL)':\r\n d.ApplicationswithDMIforSubsidy_Approval,\r\n 'Applications Approved at Administartion(SUBSIDY CAL)':\r\n d.Applications_Approved_at_Administartion,\r\n 'Subsisdy Approved MI Area(SUBSIDY CAL)': d.Subsisdy_Approved_MI_Area,\r\n 'Assistance Amount(SUBSIDY CAL)': d.AssistanceAmount,\r\n ' ': ' ',\r\n 'Pending Application For Payment By CAO(SUBSIDY )':\r\n d.Pending_Application_For_Payment_By_CAO,\r\n 'Payment Done Application By CAO(SUBSIDY )':\r\n d.Payment_Done_Application_By_CAO,\r\n 'Payment done MI Area(SUBSIDY )': d.Payment_done_MI_Area,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onPage(event: any) {\r\n this.arrayIndex = event.first;\r\n this.calculateTotalApp();\r\n }\r\n calculateTotalApp() {\r\n this.totalApp = 0;\r\n this.totalArea = 0;\r\n this.incompleteAppArea = 0;\r\n this.verifiedApp = 0;\r\n this.verifiedAppArea = 0;\r\n this.pendingApp = 0;\r\n this.incompleteApp = 0;\r\n this.incompleteAppArea = 0;\r\n this.rejectApp = 0;\r\n this.totalEstimatedApp = 0;\r\n this.totalEstimatedArea = 0;\r\n this.verifiedEstimateApp = 0;\r\n this.verifiedEstimateArea = 0;\r\n this.pendingEstimateApp = 0;\r\n this.verifiedEstApproved = 0;\r\n this.verifiedEstApprovedArea = 0;\r\n this.pendingEstApproved = 0;\r\n this.rejectedEstVerified = 0;\r\n this.challanGenerated = 0;\r\n this.challanDeposited = 0;\r\n this.BOQUploaded = 0;\r\n this.BOQMIArea = 0;\r\n this.BOQPending = 0;\r\n this.PVCompleted = 0;\r\n this.PV_MI_Area = 0;\r\n this.PV_Pending_with_JE = 0;\r\n this.PV_Pending_with_XEN = 0;\r\n this.pending_Subsidy_Calculation = 0;\r\n this.applicationswithDMIforSubsidy_Approval = 0;\r\n this.applications_Approved_at_Administartion = 0;\r\n this.subsisdy_Approved_MI_Area = 0;\r\n this.assistanceAmount = 0;\r\n this.pending_Application_For_Payment_By_CAO = 0;\r\n this.payment_Done_Application_By_CAO = 0;\r\n this.payment_done_MI_Area = 0;\r\n for (\r\n let i = this.arrayIndex;\r\n this.tempConsolidateData.length > 10\r\n ? i < this.arrayIndex + 10\r\n : i < this.tempConsolidateData.length;\r\n i++\r\n ) {\r\n this.totalApp += this.tempConsolidateData[i].totalApp;\r\n this.totalArea += this.tempConsolidateData[i].TotalArea;\r\n this.verifiedApp += this.tempConsolidateData[i].VerifiedApp;\r\n this.verifiedAppArea += this.tempConsolidateData[i].verifiedAppArea;\r\n this.pendingApp += this.tempConsolidateData[i].PendingApp;\r\n this.incompleteApp += this.tempConsolidateData[i].IncompleteApp;\r\n this.incompleteAppArea += this.tempConsolidateData[i].incompleteAppArea;\r\n this.rejectApp += this.tempConsolidateData[i].rejectApp;\r\n this.totalEstimatedApp += this.tempConsolidateData[i].totalEstimatedApp;\r\n this.totalEstimatedArea += this.tempConsolidateData[i].totalEstimatedArea;\r\n this.verifiedEstimateApp +=\r\n this.tempConsolidateData[i].verifiedEstimateApp;\r\n this.verifiedEstimateArea +=\r\n this.tempConsolidateData[i].verifiedEstimateArea;\r\n this.pendingEstimateApp += this.tempConsolidateData[i].pendingEstimateApp;\r\n this.verifiedEstApproved +=\r\n this.tempConsolidateData[i].verifiedEstApproved;\r\n this.verifiedEstApprovedArea +=\r\n this.tempConsolidateData[i].verifiedEstApprovedArea;\r\n this.pendingEstApproved += this.tempConsolidateData[i].pendingEstApproved;\r\n this.rejectedEstVerified +=\r\n this.tempConsolidateData[i].rejectedEstVerified;\r\n this.challanGenerated += this.tempConsolidateData[i].ChallanGenerated;\r\n this.challanDeposited += this.tempConsolidateData[i].ChallanDeposited;\r\n this.BOQUploaded += this.tempConsolidateData[i].BOQUploaded;\r\n this.BOQMIArea += this.tempConsolidateData[i].BOQMIArea;\r\n this.BOQPending += this.tempConsolidateData[i].BOQPending;\r\n this.PVCompleted += this.tempConsolidateData[i].PVCompleted;\r\n this.PV_MI_Area += this.tempConsolidateData[i].PV_MI_Area;\r\n this.PV_Pending_with_JE += this.tempConsolidateData[i].PV_Pending_with_JE;\r\n this.PV_Pending_with_XEN +=\r\n this.tempConsolidateData[i].PV_Pending_with_XEN;\r\n this.pending_Subsidy_Calculation +=\r\n this.tempConsolidateData[i].Pending_Subsidy_Calculation;\r\n this.applicationswithDMIforSubsidy_Approval +=\r\n this.tempConsolidateData[i].ApplicationswithDMIforSubsidy_Approval;\r\n this.applications_Approved_at_Administartion +=\r\n this.tempConsolidateData[i].Applications_Approved_at_Administartion;\r\n this.subsisdy_Approved_MI_Area +=\r\n this.tempConsolidateData[i].Subsisdy_Approved_MI_Area;\r\n this.assistanceAmount += this.tempConsolidateData[i].AssistanceAmount;\r\n this.pending_Application_For_Payment_By_CAO +=\r\n this.tempConsolidateData[i].Pending_Application_For_Payment_By_CAO;\r\n this.payment_Done_Application_By_CAO +=\r\n this.tempConsolidateData[i].Payment_Done_Application_By_CAO;\r\n this.payment_done_MI_Area +=\r\n this.tempConsolidateData[i].Payment_done_MI_Area;\r\n }\r\n // this.verfAppArea= this.verfAppArea.toFixed(4);\r\n }\r\n\r\n tableDataFunction(event: any) {\r\n this.tempConsolidateData = event.filteredValue;\r\n this.arrayIndex = 0;\r\n this.calculateTotalApp();\r\n }\r\n\r\n onClickBack() {\r\n this.location.back();\r\n }\r\n\r\n onClickApplyFilter() {\r\n let finYear = this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '';\r\n let constituency = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let district = this.selectedDistrict?.Dist_Code ? this.selectedDistrict?.Dist_Code : '';\r\n let block = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n let village = this.selectedVillage?.Vill_Code ? this.selectedVillage?.Vill_Code : '';\r\n let crop = this.selectedCrop?.data ? this.selectedCrop?.data : 0;\r\n let caste = this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '';\r\n let appType = this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '';\r\n\r\n let reqBody = {\r\n \"financialYear\": finYear,\r\n \"constituency\": constituency,\r\n \"district\": district,\r\n \"block\": block,\r\n \"village\": village,\r\n \"cropid\": crop,\r\n \"caste\": caste,\r\n \"isABY\": appType\r\n }\r\n\r\n if (constituency && district == '') {\r\n this.column1Name = \"Village\";\r\n } else if (constituency == '' && district && block == '') {\r\n this.column1Name = \"Block\";\r\n } else if ((constituency && district) || (district && block) || (constituency && district && block)) {\r\n this.column1Name = \"Village\";\r\n } else {\r\n this.column1Name = \"District\";\r\n }\r\n\r\n this.loadData(reqBody);\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'VendorName', header: 'Vendor Name' },\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'MIArea', header: 'Mi Area' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n}","\r\n
\r\n
\r\n
\r\n {{'POND_CONSOLIDATED_REPORT_DETAILS'| translate}}\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{ column1Name }}\r\n \r\n {{'TOTAL_APP'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n {{'VERIFIED_APP'| translate}}\r\n {{'VERIFIED_APP_AREA'| translate}}\r\n \r\n {{'INCOMPLETE_APP'| translate}}\r\n {{'INCOMPLETE_APP_AREA'| translate}}\r\n {{'REJECTED_APP'| translate}}\r\n\r\n \r\n\r\n {{'Total Intimation Stage 1'| translate}}\r\n {{'Verified Intimation Stage1'| translate}}\r\n {{'verified intimation stage1 area'| translate}}\r\n {{'pending intimation stage1'| translate}} \r\n {{'total PV stage1'| translate}}\r\n {{'total PV stage1 Area'| translate}}\r\n {{'verified PV stage1'| translate}}\r\n {{'verified PV stage1 Area'| translate}}\r\n {{'pending PV stage1'| translate}}\r\n {{'rejected PV stage1'| translate}}\r\n\r\n {{'total subsidy calc stage1'| translate}}\r\n {{'total subsidy calc stage1 Area'| translate}}\r\n {{'verified subsidy calc stage1'| translate}}\r\n {{'verified subsidy calc stage1 Area'| translate}}\r\n {{'pending subsidy calc stage1'| translate}}\r\n {{'rejected subsidy calc stage1'| translate}}\r\n\r\n {{'total lot generated stage1'| translate}}\r\n {{'verified lot generated stage1'| translate}}\r\n {{'verified lot generated stage1 centershare'| translate}}\r\n {{'verified lot generated stage1 stateshare'| translate}}\r\n {{'pending lot generated stage1'| translate}}\r\n\r\n {{'total subsidy disbursal stage1'| translate}}\r\n {{'verified subsidy disbursal stage1'| translate}}\r\n {{'verified subsidy disbursal stage1 centershare'| translate}}\r\n {{'verified subsidy disbursal stage1 stateshare'| translate}}\r\n {{'pending subsidy disbursal stage1'| translate}}\r\n\r\n \r\n\r\n {{'total intimation stage2'| translate}}\r\n {{'verified intimation stage2'| translate}}\r\n {{'verified intimation stage2 area'| translate}}\r\n {{'pending intimation stage2'| translate}}\r\n\r\n {{'total PV stage2'| translate}}\r\n {{'total PV stage2 Area'| translate}}\r\n {{'verified PV stage2'| translate}}\r\n {{'verified PV stage2 Area'| translate}}\r\n {{'pending PV stage2'| translate}}\r\n {{'rejected PV stage2'| translate}}\r\n\r\n {{'total subsidy calc stage2'| translate}}\r\n {{'total subsidy calc stage2 Area'| translate}}\r\n {{'verified subsidy calc stage2'| translate}}\r\n {{'verified subsidy calc stage2 Area'| translate}}\r\n {{'pending subsidy calc stage2'| translate}}\r\n {{'rejected subsidy calc stage2'| translate}}\r\n\r\n {{'total lot generated stage2'| translate}}\r\n {{'verified lot generated stage2'| translate}}\r\n {{'verified lot generated stage2 centershare'| translate}}\r\n {{'verified lot generated stage2 stateshare'| translate}}\r\n {{'pending lot generated stage2'| translate}}\r\n\r\n {{'total subsidy disbursal stage2'| translate}}\r\n {{'verified subsidy disbursal stage2'| translate}}\r\n {{'verified subsidy disbursal stage2 centershare'| translate}}\r\n {{'verified subsidy disbursal stage2 stateshare'| translate}}\r\n {{'pending subsidy disbursal stage2'| translate}}\r\n\r\n \r\n\r\n {{'total subsidy calc stage3'| translate}}\r\n {{'total subsidy calc stage3 Area'| translate}}\r\n {{'verified subsidy calc stage3'| translate}}\r\n {{'verified subsidy calc stage3 Area'| translate}}\r\n {{'pending subsidy calc stage3'| translate}} \r\n {{'rejected subsidy calc stage3'| translate}}\r\n\r\n {{'total lot generated stage3'| translate}}\r\n {{'verified lot generated stage3'| translate}}\r\n {{'verified lot generated stage3 centershare'| translate}}\r\n {{'verified lot generated stage3 stateshare'| translate}}\r\n {{'pending lot generated stage3'| translate}}\r\n\r\n {{'total subsidy disbursal stage3'| translate}}\r\n {{'verified subsidy disbursal stage3'| translate}}\r\n {{'verified subsidy disbursal stage3 centershare'| translate}}\r\n {{'verified subsidy disbursal stage3 stateshare'| translate}}\r\n {{'pending subsidy disbursal stage3'| translate}}\r\n \r\n \r\n \r\n \r\n {{consolidateData.title}}\r\n {{consolidateData.totalApp}}\r\n {{consolidateData.totalArea}}\r\n {{consolidateData.verifiedApp}}\r\n {{consolidateData.verifiedAppArea}}\r\n {{consolidateData.IncompleteApp}}\r\n {{consolidateData.IncompleteAppArea}}\r\n {{consolidateData.rejectApp}}\r\n\r\n \r\n {{consolidateData.total_intimation_stage1}}\r\n {{consolidateData.verified_intimation_stage1}}\r\n {{consolidateData.verified_intimation_stage1_area}}\r\n {{consolidateData.pending_intimation_stage1}}\r\n\r\n {{consolidateData.total_PV_stage1}}\r\n {{consolidateData.total_PV_stage1_Area}}\r\n {{consolidateData.verified_PV_stage1}}\r\n {{consolidateData.verified_PV_stage1_Area}}\r\n {{consolidateData.pending_PV_stage1}}\r\n {{consolidateData.rejected_PV_stage1}}\r\n\r\n {{consolidateData.total_subsidy_calc_stage1}}\r\n {{consolidateData.total_subsidy_calc_stage1_Area}}\r\n {{consolidateData.verified_subsidy_calc_stage1}}\r\n {{consolidateData.verified_subsidy_calc_stage1_Area}}\r\n {{consolidateData.pending_subsidy_calc_stage1}}\r\n {{consolidateData.rejected_subsidy_calc_stage1}}\r\n\r\n {{consolidateData.total_lot_generated_stage1}}\r\n {{consolidateData.verified_lot_generated_stage1}}\r\n {{consolidateData.verified_lot_generated_stage1_centershare}}\r\n {{consolidateData.verified_lot_generated_stage1_stateshare}}\r\n {{consolidateData.pending_lot_generated_stage1}}\r\n\r\n {{consolidateData.total_subsidy_disbursal_stage1}}\r\n {{consolidateData.verified_subsidy_disbursal_stage1}}\r\n {{consolidateData.verified_subsidy_disbursal_stage1_centershare}}\r\n {{consolidateData.verified_subsidy_disbursal_stage1_stateshare}}\r\n {{consolidateData.pending_subsidy_disbursal_stage1}}\r\n \r\n\r\n\r\n \r\n {{consolidateData.total_intimation_stage2}}\r\n {{consolidateData.verified_intimation_stage2}}\r\n {{consolidateData.verified_intimation_stage2_area}}\r\n {{consolidateData.pending_intimation_stage2}}\r\n\r\n {{consolidateData.total_PV_stage2}}\r\n {{consolidateData.total_PV_stage2_Area}}\r\n {{consolidateData.verified_PV_stage2}}\r\n {{consolidateData.verified_PV_stage2_Area}}\r\n {{consolidateData.pending_PV_stage2}}\r\n {{consolidateData.rejected_PV_stage2}}\r\n\r\n {{consolidateData.total_subsidy_calc_stage2}}\r\n {{consolidateData.total_subsidy_calc_stage2_Area}}\r\n {{consolidateData.verified_subsidy_calc_stage2}}\r\n {{consolidateData.verified_subsidy_calc_stage2_Area}}\r\n {{consolidateData.pending_subsidy_calc_stage2}}\r\n {{consolidateData.rejected_subsidy_calc_stage2}}\r\n\r\n {{consolidateData.total_lot_generated_stage2}}\r\n {{consolidateData.verified_lot_generated_stage2}}\r\n {{consolidateData.verified_lot_generated_stage2_centershare}}\r\n {{consolidateData.verified_lot_generated_stage2_stateshare}}\r\n {{consolidateData.pending_lot_generated_stage2}}\r\n\r\n {{consolidateData.total_subsidy_disbursal_stage2}}\r\n {{consolidateData.verified_subsidy_disbursal_stage2}}\r\n {{consolidateData.verified_subsidy_disbursal_stage2_centershare}}\r\n {{consolidateData.verified_subsidy_disbursal_stage2_stateshare}}\r\n {{consolidateData.pending_subsidy_disbursal_stage2}}\r\n \r\n\r\n \r\n {{consolidateData.total_subsidy_calc_stage3}}\r\n {{consolidateData.total_subsidy_calc_stage3_Area}}\r\n {{consolidateData.verified_subsidy_calc_stage3}}\r\n {{consolidateData.verified_subsidy_calc_stage3_Area}}\r\n {{consolidateData.pending_subsidy_calc_stage3}}\r\n {{consolidateData.rejected_subsidy_calc_stage3}}\r\n\r\n {{consolidateData.total_lot_generated_stage3}}\r\n {{consolidateData.verified_lot_generated_stage3}}\r\n {{consolidateData.verified_lot_generated_stage3_centershare}}\r\n {{consolidateData.verified_lot_generated_stage3_stateshare}}\r\n {{consolidateData.pending_lot_generated_stage3}}\r\n\r\n {{consolidateData.total_subsidy_disbursal_stage3}}\r\n {{consolidateData.verified_subsidy_disbursal_stage3}}\r\n {{consolidateData.verified_subsidy_disbursal_stage3_centershare}}\r\n {{consolidateData.verified_subsidy_disbursal_stage3_stateshare}}\r\n {{consolidateData.pending_subsidy_disbursal_stage3}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n No Data found.\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n\r\n\r\n \r\n\r\n\r\n","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-pond-complete-count-wise-report',\r\n templateUrl: './pond-complete-count-wise-report.component.html',\r\n styleUrls: ['./pond-complete-count-wise-report.component.scss']\r\n})\r\nexport class PondCompleteCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n\r\n public subActionType: string = \"IncompleteApps\";\r\n // public finYear: any;\r\n vendorCode:any;\r\n userType:any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public pondCompleteAppsFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n\r\n public pondTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Incomplete Apps';\r\n pondCompletedReport: MenuItem[];\r\n loading: boolean;\r\n \r\n constructor(\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n this.loadPondComplete(this.subActionType);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n \r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode\r\n\r\n this.pondCompletedReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.pondTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.AppID,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadPondComplete(subActionType) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getPondAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType,this.vendorCode,this.userType)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = data;\r\n this.pondTableDataWithFilter = data;\r\n this.actionTypesFromTableData, this.pondCompleteAppsFilterList = this.getUniqueActionType(data);\r\n }else{\r\n this.miTableData = [];\r\n this.pondTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.pondTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n printForm(AppID) {\r\n \r\n if (AppID) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userType== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }\r\n }\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n {{'PENDING_ACTION'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n\r\n\r\n\r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.AppID}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-pond-incomplete-count-wise-report',\r\n templateUrl: './pond-incomplete-count-wise-report.component.html',\r\n styleUrls: ['./pond-incomplete-count-wise-report.component.scss']\r\n})\r\nexport class PondIncompleteCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n\r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n\r\n public subActionType: string = \"IncompleteApps\";\r\n // public finYear: any;\r\n vendorCode:any;\r\n userType:any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public pondIncompleteAppsFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n\r\n public pondTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Incomplete Apps';\r\n pondIncompletedReport: MenuItem[];\r\n loading: boolean;\r\n \r\n constructor(\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n this.loadPondIncomplete(this.subActionType);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n \r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode\r\n\r\n this.pondIncompletedReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.pondTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.AppID,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadPondIncomplete(subActionType) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getPondAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType,this.vendorCode,this.userType)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = data;\r\n this.pondTableDataWithFilter = data;\r\n this.actionTypesFromTableData, this.pondIncompleteAppsFilterList = this.getUniqueActionType(data);\r\n }else{\r\n this.miTableData = [];\r\n this.pondTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.pondTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n printForm(AppID) {\r\n \r\n if (AppID) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userType== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }\r\n }\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n {{'PENDING_ACTION'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n\r\n\r\n\r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.AppID}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-pond-rejected-count-wise-report',\r\n templateUrl: './pond-rejected-count-wise-report.component.html',\r\n styleUrls: ['./pond-rejected-count-wise-report.component.scss']\r\n})\r\nexport class PondRejectedCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n\r\n public subActionType: string = \"RejectedApps\";\r\n // public finYear: any;\r\n vendorCode:any;\r\n userType:any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public pondRejectedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n\r\n public pondTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Rejected Apps';\r\n pondRejectReport: MenuItem[];\r\n loading: boolean;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n this.pondrejectedAppsFilterList(this.subActionType);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n \r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode\r\n\r\n this.pondRejectReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.pondTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n }\r\n ,\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.AppID,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n pondrejectedAppsFilterList(subActionType) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getPondAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType,this.vendorCode,this.userType)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = data;\r\n this.pondTableDataWithFilter = data;\r\n this.actionTypesFromTableData, this.pondRejectedFilterList = this.getUniqueActionType(data);\r\n\r\n console.log(this.actionTypesFromTableData)\r\n }else{\r\n this.miTableData = [];\r\n this.pondTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.pondTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n printForm(AppID) {\r\n \r\n if (AppID) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userType== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n {{'PENDING_ACTION'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n\r\n\r\n\r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.AppID}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Location } from '@angular/common'\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { MenuItem } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-pond-count-wise-report',\r\n templateUrl: './pond-count-wise-report.component.html',\r\n styleUrls: ['./pond-count-wise-report.component.scss']\r\n})\r\nexport class PondCountWiseReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n pondUnderProcessReport: MenuItem[];\r\n\r\n public actionType: any;\r\n // public finYear: any;\r\n public pondTableData: any = [];\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public isAdminLogin: boolean = false;\r\n public underProcessCount: any;\r\n public showDrillDownTable: boolean = false;\r\n public pondBifurcatedData: any;\r\n public options1: any;\r\n\r\n public tableHeaderName = 'Application Details';\r\n public pondTableDataWithFilter: any[];\r\n\r\n public tableHeaderColor = '#FFFFFF';\r\n public actionTypesFromTableData: any =[];\r\n public pondUnderProcFilterList: any = [];\r\n\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private location: Location,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n // this.actionType = this.route.snapshot.paramMap.get('actionType');\r\n // this.finYear = this.route.snapshot.paramMap.get('finYear');\r\n\r\n // console.log(this.finYear, this.actionType);\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n this.loadCountBoxesData();\r\n\r\n this.pondUnderProcessReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.pondTableDataWithFilter, `Pond/Tank_${this.tableHeaderName}`);\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'App_Verification_List'\r\n // );\r\n // },\r\n // },\r\n ];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appid,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n 'KYC Status': d.KYCStatus,\r\n 'KYC Date': d.TransDate,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadCountBoxesData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getPondAggTabsUnProcessedAppsCountNew(this.finyear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // console.log(data.length, data)\r\n if (data?.length > 0) {\r\n this.underProcessCount = data[0];\r\n this.loadPONDBifurcatedDataForGraph();\r\n } else {\r\n this.underProcessCount = null;\r\n this.loadPONDBifurcatedDataForGraph();\r\n }\r\n // console.log(this.underProcessCount)\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loader.close();\r\n this.underProcessCount = null;\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n printForm(appId) {\r\n \r\n if (appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n // if(this.subjectSub)\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // console.log(payload, this.userID);\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }\r\n }\r\n else{\r\n // this.messageService.add({\r\n // summary: 'Error Message',\r\n // severity: 'info',\r\n // detail: 'Application Id Not Found',\r\n // });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onClickBack(){\r\n this.location.back();\r\n }\r\n\r\n onClickCountBox(val){\r\n this.showDrillDownTable = true;\r\n console.log(val)\r\n this.pondTableData = [];\r\n this.loadPondDataUnderProcess(val);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n }\r\n\r\n loadPondDataUnderProcess(subActionType) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getPondAggTabsUnProcessedAppsDrillDownNew(this.finyear, subActionType)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.pondTableData = data;\r\n this.pondTableDataWithFilter = data;\r\n\r\n this.actionTypesFromTableData, this.pondUnderProcFilterList = this.getUniqueActionType(data);\r\n }else{\r\n this.pondTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.pondTableData = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n loadPONDBifurcatedDataForGraph() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n console.log(this.underProcessCount);\r\n this.pondBifurcatedData = {\r\n // labels: [`MI(PDMC) Applications: (${miTotalCount}) `, `Pond/Tank Applications: (${pondTotalCount})`],\r\n labels: [\r\n 'App Verification',\r\n 'Intimation Stage 1', \r\n 'Intimation Stage 2', \r\n 'PV Stage 1', \r\n 'PV Stage 2', \r\n 'Subsidy Cal Stage 1', \r\n 'Subsidy Cal Stage 2', \r\n 'Subsidy Cal Stage 3', \r\n 'Lot Stage 1', \r\n 'Lot Stage 2', \r\n 'Lot Stage 3', \r\n 'Subsidy Stage3',\r\n // 'Rejected' \r\n ],\r\n datasets: [\r\n {\r\n data: [\r\n this.underProcessCount?.AppVerification, \r\n this.underProcessCount?.pending_intimation_stage1, \r\n this.underProcessCount?.pending_intimation_stage2, \r\n this.underProcessCount?.pending_PV_stage1, \r\n this.underProcessCount?.pending_PV_stage2, \r\n this.underProcessCount?.pending_SubsidyCalc_stage1, \r\n this.underProcessCount?.pending_SubsidyCalc_stage2, \r\n this.underProcessCount?.pending_SubsidyCalc_stage3, \r\n this.underProcessCount?.pending_lot_stage1,\r\n this.underProcessCount?.pending_lot_stage2,\r\n this.underProcessCount?.pending_lot_stage3,\r\n this.underProcessCount?.pending_Subsidy_stage3,\r\n // this.underProcessCount?.rejected\r\n ],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-600'),\r\n // documentStyle.getPropertyValue('--yellow-600'),\r\n '#6A1B9A',\r\n '#4527A0',\r\n '#6D4C41',\r\n '#ff0000',\r\n '#ff9900',\r\n '#3939ac',\r\n '#b30000',\r\n '#408000',\r\n '#2952a3',\r\n '#b30059',\r\n '#52527a',\r\n '#ac39ac',\r\n // '#e67300'\r\n // documentStyle.getPropertyValue('--blue-500')\r\n // documentStyle.getPropertyValue('--pink-500'),\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--yellow-500'),\r\n '#6A1B9A',\r\n '#4527A0',\r\n '#6D4C41',\r\n '#ff0000',\r\n '#ff9900',\r\n '#3939ac',\r\n '#b30000',\r\n '#408000',\r\n '#2952a3',\r\n '#b30059',\r\n '#52527a',\r\n '#ac39ac',\r\n // '#e67300'\r\n // documentStyle.getPropertyValue('--pink-400'),\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // stepSize: 20,\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n }\r\n };\r\n }\r\n\r\n onPONDChartClick(event){\r\n if(event?.element?.index == 0){\r\n this.onClickCountBox('AppVerification');\r\n this.tableHeaderName = 'App Verification';\r\n this.tableHeaderColor = '#6A1B9A';\r\n }else if(event?.element?.index == 1){\r\n this.onClickCountBox('intimation_stage1');\r\n this.tableHeaderName = 'Intimation Stage 1';\r\n this.tableHeaderColor = '#4527A0';\r\n }else if(event?.element?.index == 2){\r\n this.onClickCountBox('intimation_stage2');\r\n this.tableHeaderName = 'Intimation Stage 2';\r\n this.tableHeaderColor = '#6D4C41';\r\n }else if(event?.element?.index == 3){\r\n this.onClickCountBox('PV_stage1');\r\n this.tableHeaderName = 'PV Stage 1';\r\n this.tableHeaderColor = '#ff0000';\r\n }else if(event?.element?.index == 4){\r\n this.onClickCountBox('PV_stage2');\r\n this.tableHeaderName = 'PV Stage 2';\r\n this.tableHeaderColor = '#ff9900';\r\n }else if(event?.element?.index == 5){\r\n this.onClickCountBox('subsidyCalc_stage1');\r\n this.tableHeaderName = 'Subsidy Disbursed Stage 1';\r\n this.tableHeaderColor = '#3939ac';\r\n }else if(event?.element?.index == 6){\r\n this.onClickCountBox('subsidyCalc_stage2');\r\n this.tableHeaderName = 'Subsidy Disbursed Stage 2';\r\n this.tableHeaderColor = '#b30000';\r\n }else if(event?.element?.index == 7){\r\n this.onClickCountBox('subsidyCalc_stage3');\r\n this.tableHeaderName = 'Subsidy Disbursed Stage 3';\r\n this.tableHeaderColor = '#408000';\r\n }else if(event?.element?.index == 8){\r\n this.onClickCountBox('lot_stage1');\r\n this.tableHeaderName = 'Lot Stage 1';\r\n this.tableHeaderColor = '#2952a3';\r\n }else if(event?.element?.index == 9){\r\n this.onClickCountBox('lot_stage2');\r\n this.tableHeaderName = 'Lot Stage 2';\r\n this.tableHeaderColor = '#b30059';\r\n }else if(event?.element?.index == 10){\r\n this.onClickCountBox('lot_stage3');\r\n this.tableHeaderName = 'Lot Stage 3';\r\n this.tableHeaderColor = '#52527a';\r\n }else if(event?.element?.index == 11){\r\n this.onClickCountBox('subsidy_stage3');\r\n this.tableHeaderName = 'Subsidy Stage 3';\r\n this.tableHeaderColor = '#ac39ac';\r\n }\r\n }\r\n\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n\r\n}\r\n","
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
{{ 'APP_VERIFICATION' | translate}}
\r\n
{{ underProcessCount?.IncompleteApps | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'PRE_SURVEY' | translate}}
\r\n
{{ underProcessCount?.preestimate | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'VENDOR_ESTIMATES' | translate}}
\r\n
{{ underProcessCount?.pendingEstimateApp | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'ESTIMATE_VERIFICATION' | translate}}
\r\n
{{ underProcessCount?.pendingEstApproved | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'CHALLAN_GENERATION' | translate}}
\r\n
{{ underProcessCount?.pending_challan | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'CHALLAN_DEPOSITED' | translate}}
\r\n
{{ underProcessCount?.pending_challan_deposit | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'BOQ' | translate}}
\r\n
{{ underProcessCount?.Pending_BOQ | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'PHYSICAL_VER' | translate}}
\r\n
{{ underProcessCount?.pending_PV | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'SUBSIDY_CALCULATION' | translate}}
\r\n
{{ underProcessCount?.pending_Subsidy | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'LOT_GENERATION' | translate}}
\r\n
{{ underProcessCount?.pending_lot | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'SUBSIDY_DISBURSEMENT' | translate}}
\r\n
{{ underProcessCount?.pending_subsidy_disbursal | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n {{'PENDING_ACTION'| translate}}\r\n {{'KYC Status'| translate}}\r\n {{'KYC Date'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.appid}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n {{consolidateData?.KYCStatus}}\r\n {{consolidateData?.TransDate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-da-report',\r\n templateUrl: './da-report.component.html',\r\n styleUrls: ['./da-report.component.scss']\r\n})\r\nexport class DaReportComponent implements OnInit {\r\n protected http: HttpClient;\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router, private service: BaseService) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n selectedDate: any;\r\n date: any;\r\n activeItem: any;\r\n showTabs: boolean = false;\r\n path: any\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n if(sessionStorage.getItem('userRole') == 'DMICADA'){\r\n this.router.navigate(['/department/report/da-report/mi']);\r\n this.items = [\r\n // { label: 'MI', routerLink: `/${parentRoute}/report/da-report/mi` },\r\n // { label: 'Pond', routerLink: `/${parentRoute}/report/da-report/pond` },\r\n ];\r\n }else if(sessionStorage.getItem('userRole') == 'DD-EW'){\r\n this.router.navigate(['/ew-department/report/da-report/pond']);\r\n this.items = [\r\n // { label: 'MI', routerLink: `/${parentRoute}/report/da-report/mi` },\r\n // { label: 'Pond', routerLink: `/${parentRoute}/report/da-report/pond` },\r\n ];\r\n }else{\r\n this.items = [\r\n { label: 'MI', routerLink: `/${parentRoute}/report/da-report/mi` },\r\n { label: 'Pond', routerLink: `/${parentRoute}/report/da-report/pond` },\r\n ];\r\n }\r\n }\r\n );\r\n }\r\n\r\n dateChange(){\r\n console.log(this.selectedDate)\r\n }\r\n\r\n submitHandler() {\r\n this.path = this.router.url.split('/')[4];\r\n // console.log(this.selectedDate,\"selectedDate.........selectedDate\")\r\n this.date = ((this.selectedDate.getMonth() > 8) ? (this.selectedDate.getMonth() + 1) : ('0' + (this.selectedDate.getMonth() + 1))) + '/' + ((this.selectedDate.getDate() > 9) ? this.selectedDate.getDate() : ('0' + this.selectedDate.getDate())) + '/' + this.selectedDate.getFullYear()\r\n // console.log(this.selectedDate,\"selectedDate.........MM/DD/YYYY\")\r\n this.service.changeDate(this.date)\r\n // this.showTabs=false;\r\n this.showTabs = true;\r\n \r\n this.router.navigate(['/department/report/da-report']);\r\n \r\n if(sessionStorage.getItem('userRole') == 'DMICADA'){\r\n this.router.navigate(['/department/report/da-report/mi']);\r\n }else if(sessionStorage.getItem('userRole') == 'DD-EW'){\r\n this.router.navigate(['/ew-department/report/da-report/pond']);\r\n }else{\r\n let parentRoute = this.router.url.split('/')[1];\r\n if (parentRoute == 'ew-department') {\r\n this.router.navigate(['/ew-department/report/da-report/mi']);\r\n } else {\r\n this.router.navigate(['/department/report/da-report/mi']);\r\n }\r\n }\r\n\r\n // if (this.path == 'mi') {\r\n // let parentRoute = this.router.url.split('/')[1];\r\n\r\n // if (parentRoute == 'ew-department') {\r\n // this.router.navigate(['/ew-department/report/da-report/pond']);\r\n // } else {\r\n // this.router.navigate(['/department/report/da-report/mi']);\r\n // }\r\n\r\n // }\r\n\r\n // else if (this.path == 'pond') {\r\n // let parentRoute = this.router.url.split('/')[1];\r\n\r\n // if (parentRoute == 'ew-department') {\r\n // this.router.navigate(['/ew-department/report/da-report/mi']);\r\n // } else {\r\n // this.router.navigate(['/department/report/da-report/mi']);\r\n // }\r\n // }\r\n // else {\r\n // let parentRoute = this.router.url.split('/')[1];\r\n\r\n // if (parentRoute == 'ew-department') {\r\n // this.router.navigate(['/ew-department/report/da-report/mi']);\r\n // } else {\r\n // this.router.navigate(['/department/report/da-report/mi']);\r\n // }\r\n // }\r\n\r\n }\r\n // onSelectedTable(event:any):{\r\n // console.log(event,\"event\")\r\n // }\r\n\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\nimport saveAs from 'file-saver';\r\n@Component({\r\n selector: 'app-mi-da-report',\r\n templateUrl: './mi-da-report.component.html',\r\n styleUrls: ['./mi-da-report.component.scss']\r\n})\r\nexport class MiDaReportComponent implements OnInit {\r\n date:any;\r\n userId:any;\r\n pondData:any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel:any;\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n constructor(private service: BaseService,private loader: AppLoaderService,private reportsService:ReportsService,private messageService:MessageService,private cryptoJs: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n \r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n // console.log(this.userId,\"this.userIdthis.userIdthis.userIdthis.userIdthis.userIdthis.userId\")\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n this.service.selectedDate.subscribe(res => this.date = res);\r\n this.loadData()\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"DA_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"DA_wise_report\");\r\n }\r\n },\r\n];\r\n\r\n }\r\n // ngOnChanges() {\r\n // // changes.prop contains the old and the new value...\r\n // this.service.selectedDate.subscribe(res => {\r\n // if(this.date !== res){\r\n // this.date=res;\r\n // this.loadData()\r\n // }\r\n // });\r\n\r\n // }\r\n loadData(){\r\n this.loader.start();\r\n this.reportsService.getDDAssociateDailyTaskMI(this.userId,this.date,'')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n data.forEach(e=>{\r\n e.Date=new Date(e.Date)\r\n e.Date_filter=e.Date.toString().substr(4,11)\r\n\r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.pondData=data\r\n this.appVerificationModel = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"UserId\" : d.UserId,\r\n \"Date\": d.Date_filter,\r\n \"District\": d.District,\r\n \"Applicant Type\": d.Applicant_Type,\r\n \"Application Approval\":d.ApplicationApproval,\r\n \"ApplicationApproval MR\": d.ApplicationApproval_MR,\r\n \"EstimateApproval\": d.EstimateApproval,\r\n \"EstimateApproval MR\": d.EstimateApproval_MR,\r\n \"PV Approval\": d.PVApproval,\r\n \"PV Approval MR\": d.PVApproval_MR,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n ); \r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'UserId', header: 'UserId'},\r\n { field: 'Date', header: 'Date' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Applicant_Type', header: 'Applicant Type' },\r\n { field: 'ApplicationApproval', header: 'Application Approval' },\r\n { field: 'ApplicationApproval_MR', header: 'ApplicationApproval MR' },\r\n { field: 'EstimateApproval', header: 'Estimate Approval' },\r\n { field: 'EstimateApproval_MR', header: 'Estimate Approval MR' },\r\n { field: 'PVApproval', header: 'PV Approval' },\r\n { field: 'PVApproval_MR', header: 'PV Approval MR' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MI_DA_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'DATE'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_APPROVAL'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_APPROVAL_MR'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATE_APPROVAL'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATE_APPROVAL_MR'| translate}}\r\n \r\n \r\n \r\n {{'PV_APPROVAL'| translate}}\r\n \r\n \r\n \r\n {{'PV_APPROVAL_MR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{pondData.UserId}}\r\n {{pondData.Date_filter}}\r\n {{pondData.District}}\r\n {{pondData.Applicant_Type}}\r\n {{pondData.ApplicationApproval}}\r\n {{pondData.ApplicationApproval_MR}}\r\n {{pondData.EstimateApproval}}\r\n {{pondData.EstimateApproval_MR}}\r\n {{pondData.PVApproval}}\r\n {{pondData.PVApproval_MR}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport saveAs from 'file-saver';\r\n@Component({\r\n selector: 'app-pond-da-report',\r\n templateUrl: './pond-da-report.component.html',\r\n styleUrls: ['./pond-da-report.component.scss']\r\n})\r\nexport class PondDaReportComponent implements OnInit {\r\n\r\n date:any;\r\n userId:any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel:any;\r\n pondData:any;\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n constructor(private service: BaseService,private loader: AppLoaderService,private reportsService:ReportsService,private messageService:MessageService,private cryptoJs: CryptoJsService) { }\r\n \r\n ngOnInit(): void {\r\n \r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n // console.log(this.userId,\"this.userIdthis.userIdthis.userIdthis.userIdthis.userIdthis.userId\")\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n this.service.selectedDate.subscribe(res => this.date = res);\r\n this.loadData();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"DA_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"DA_wise_report\");\r\n }\r\n },\r\n ];\r\n \r\n }\r\n // ngOnChanges() {\r\n // // changes.prop contains the old and the new value...\r\n // this.service.selectedDate.subscribe(res => {\r\n // if(this.date !== res){\r\n // this.date=res;\r\n // this.loadData()\r\n // }\r\n // });\r\n \r\n // }\r\n loadData(){\r\n this.loader.start();\r\n this.reportsService.getDDAssociateDailyTaskPond(this.userId,this.date,'')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n \r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n data.forEach(e=>{\r\n e.Date=new Date(e.Date)\r\n e.Date_filter=e.Date.toString().substr(4,11)\r\n\r\n })\r\n this.pondData=data\r\n this.appVerificationModel = data;\r\n \r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n \r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n \r\n }\r\n });\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"UserId\" : d.UserId,\r\n \"Date\": d.Date_filter,\r\n \"District\": d.District,\r\n \"Applicant Type\": d.Applicant_Type,\r\n \"PV Stage1\":d.PVStage1,\r\n \"PV Stage1 MR\": d.PVStage1_MR,\r\n \"PV Stage2\": d.PVStage2,\r\n \"PV Stage2 MR\": d.PVStage2_MR,\r\n \"PV Stage3\": d.PVStage3,\r\n \"PV Stage3 MR\": d.PVStage3_MR,\r\n\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n ); \r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'UserId', header: 'UserId'},\r\n { field: 'Date_filter', header: 'Date' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Applicant_Type', header: 'Applicant Type' },\r\n { field: 'PVStage1', header: 'PVStage1' },\r\n { field: 'PVStage1_MR', header: 'PVStage1 MR' },\r\n { field: 'PVStage2', header: 'PVStage2' },\r\n { field: 'PVStage2_MR', header: 'PVStage2_MR' },\r\n { field: 'PVStage3', header: 'PV Stage3' },\r\n { field: 'PVStage3_MR', header: 'PV Stage3 MR' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DA_POND_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'DATE'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PV_STAGE1'| translate}}\r\n \r\n \r\n \r\n {{'PV_STAGE1_MR'| translate}}\r\n \r\n \r\n \r\n {{'PV_STAGE2'| translate}}\r\n \r\n \r\n \r\n {{'PV_STAGE2_MR'| translate}}\r\n \r\n \r\n \r\n {{'PV_STAGE3'| translate}}\r\n \r\n \r\n \r\n {{'PV_STAGE3_MR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{pondData.UserId}}\r\n {{pondData.Date_filter}}\r\n {{pondData.District}}\r\n {{pondData.Applicant_Type}}\r\n {{pondData.PVStage1}}\r\n {{pondData.PVStage1_MR}}\r\n {{pondData.PVStage2}}\r\n {{pondData.PVStage2_MR}}\r\n {{pondData.PVStage3}}\r\n {{pondData.PVStage3_MR}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\n@Component({\r\n selector: 'app-drill-down-abstract-report',\r\n templateUrl: './drill-down-abstract-report.component.html',\r\n styleUrls: ['./drill-down-abstract-report.component.scss']\r\n})\r\nexport class DrillDownAbstractReportComponent implements OnInit {\r\n\r\n @Input() drilldownDetails: any;\r\n drillDownData:any;\r\n drillDownDataStatus=false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n userId:any;\r\n isDate:boolean; \r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus=true;\r\n \r\n let sub= this.reportsService.getPondAbstract_DrillDown_Report(this.userId,this.drilldownDetails.district,this.drilldownDetails.status,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n \r\n data.forEach(e=>{\r\n if( e.hasOwnProperty('ApprovedDate')){\r\n this.isDate=true;\r\n }\r\n e.ApprovedDate=new Date(e.ApprovedDate)\r\n e.ApprovedDate_filter=e.ApprovedDate.toString().substr(4,11)\r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n \r\n \r\n \r\n \r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n if(this.isDate){\r\n return {\r\n 'AppId':d.AppId,\r\n 'Approved Date':d.ApprovedDate_filter,\r\n 'Farmer Name':d.FarmerName,\r\n 'Father Name':d.Father_name, \r\n 'Mother Name':d.Mother_Name,\r\n 'Mobile':d.Mobile,\r\n 'District':d.District,\r\n 'Constituency ':d.Constituency,\r\n 'Block':d.Block,\r\n 'Village':d.Village,\r\n 'Total Area':d.Total_Area\r\n }\r\n }\r\n else{\r\n return {\r\n 'AppId':d.AppId,\r\n 'Farmer Name':d.FarmerName,\r\n 'Father Name':d.Father_name, \r\n 'Mother Name':d.Mother_Name,\r\n 'Mobile':d.Mobile,\r\n 'District':d.District,\r\n 'Constituency ':d.Constituency,\r\n 'Block':d.Block,\r\n 'Village':d.Village,\r\n 'Total Area':d.Total_Area\r\n }\r\n }\r\n \r\n \r\n \r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppId', header: 'AppId'},\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Father_name', header: 'Father Name' },\r\n { field: 'Mother_Name', header: 'Mother Name' },\r\n { field: 'Mobile', header: 'Mobile' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FATHER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'MOTHER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'MOBILE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData.AppId}}\r\n {{drillDownData.ApprovedDate_filter}}\r\n {{drillDownData.FarmerName}}\r\n {{drillDownData.Father_name}}\r\n {{drillDownData.Mother_Name}}\r\n {{drillDownData.Mobile}}\r\n {{drillDownData.District}}\r\n {{drillDownData.Constituency}}\r\n {{drillDownData.Block}}\r\n {{drillDownData.Village}}\r\n {{drillDownData.Total_Area}}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-drill-down-approved-incomplete-report',\r\n templateUrl: './drill-down-approved-incomplete-report.component.html',\r\n styleUrls: ['./drill-down-approved-incomplete-report.component.scss']\r\n})\r\nexport class DrillDownApprovedIncompleteReportComponent implements OnInit {\r\n @Input() drilldownDetails: any;\r\n drillDownData:any;\r\n drillDownDataStatus=false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n userId:any;\r\n isComponentId:boolean;\r\n isArea:boolean;\r\n totalArea:number;\r\n arrayIndex:number;\r\n grandTotalArea:number;\r\n tempVendorWise: any[];\r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n // console.log(this.drilldownDetails,\"drilldownDetailsdrilldownDetailsdrilldownDetailsdrilldownDetails\")\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus=true;\r\n if(this.drilldownDetails.hasOwnProperty('Block')){\r\n let sub= this.reportsService.getCompletedApplication_Block_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.status,this.drilldownDetails.filterType,this.drilldownDetails.MIType,this.drilldownDetails.value,this.drilldownDetails.Block,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('UserID')){\r\n e.UserId=e.UserID\r\n }\r\n if(e.hasOwnProperty('Level_ID')){\r\n e.Level_Id=e.Level_ID\r\n }\r\n \r\n if(e.hasOwnProperty('ActionID')){\r\n e.ActionId=e.ActionID\r\n }\r\n if(e.hasOwnProperty('district')){\r\n e.District=e.district\r\n }\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n // if(this.drilldownDetails.actionType=='AppVerification' && this.drilldownDetails.MIType.length==0 )\r\n if(this.drilldownDetails.actionType=='AppVerification' && this.drilldownDetails.MIType.length==0 ) {\r\n let sub= this.reportsService.getAppVerificationCompletedApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.status,this.drilldownDetails.filterType,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n \r\n else{\r\n if(this.drilldownDetails.actionType=='VendorMIArea'){\r\n let sub= this.reportsService.getVendor_MI_Area_Report(this.userId,this.drilldownDetails.status,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n \r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n \r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n \r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub=this.reportsService.getCompletedApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.status,this.drilldownDetails.filterType,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n }\r\n \r\n }\r\n \r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n if(this.isArea){\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Assigned Date':d.Assigned_Date_filter,\r\n 'Action Date':d.Action_Date_filter,\r\n 'component ':d.componentId,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n 'Area':d.Area\r\n }\r\n }\r\n else{\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Assigned Date':d.Assigned_Date_filter,\r\n 'Action Date':d.Action_Date_filter,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n }\r\n }\r\n \r\n \r\n \r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppId', header: 'AppId'},\r\n { field: 'ActionId', header: 'Action' },\r\n { field: 'Level_Id', header: 'Level_Id' },\r\n { field: 'UserId', header: 'UserId' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Assigned_Date_filter', header: 'Assigned Date' },\r\n { field: 'Action_Date_filter', header: 'Action Date' },\r\n { field: 'componentId', header: 'component' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Months', header: 'Months' },\r\n { field: 'Years', header: 'Year' },\r\n { field: 'Area', header: 'Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n \r\n -->\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'YEARS'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData.AppId}}\r\n {{drillDownData.ActionId}}\r\n {{drillDownData.Level_Id}}\r\n {{drillDownData.UserId}}\r\n {{drillDownData.Status}}\r\n {{drillDownData.Assigned_Date_filter}}\r\n {{drillDownData.Action_Date_filter}}\r\n {{drillDownData.componentId}}\r\n {{drillDownData.District}}\r\n \r\n {{drillDownData.Months}}\r\n {{drillDownData.Years}}\r\n {{drillDownData.Area}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit, Input, ViewChild, ElementRef } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-drill-down-consolidated-report',\r\n templateUrl: './drill-down-consolidated-report.component.html',\r\n styleUrls: ['./drill-down-consolidated-report.component.scss'],\r\n})\r\nexport class DrillDownConsolidatedReportComponent implements OnInit {\r\n @ViewChild('tableContainer1') tableContainer1: ElementRef;\r\n @ViewChild('tableContainer2') tableContainer2: ElementRef;\r\n @Input() drilldownDetails: any;\r\n drillDownData: any;\r\n drillDownDataStatus = false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n\r\n public displayPendingDetailUserWise: boolean = false;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJs: CryptoJsService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n userId: any;\r\n isDate: boolean;\r\n reqParam: any = null;\r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n // }\r\n this.userId = sessionStorage.getItem('User_name_while_login');\r\n // this.userId = encodeURIComponent(this.cryptoJs.Encrypt(this.userId));\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n let router = this.router.url;\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n this.selectedYear = res;\r\n\r\n this.loadData(this.selectedYear);\r\n });\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.drillDownData, 'Drill_down_report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(this.drillDownData, 'Drill_down_report');\r\n // },\r\n // },\r\n ];\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(selectedYear: any) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus = true;\r\n\r\n let sub = this.reportsService\r\n .getPendingDetailUser_DrillDown_Report(this.drilldownDetails)\r\n // .getPendingDetailUser_DrillDown_Report(\r\n // this.drilldownDetails?.ActionType,\r\n // this.drilldownDetails?.District,\r\n // selectedYear,\r\n // this.drilldownDetails?.RequestType\r\n // )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n\r\n // data.forEach((e) => {\r\n // if (e.hasOwnProperty('ApprovedDate')) {\r\n // this.isDate = true;\r\n // }\r\n // e.ApprovedDate = new Date(e.ApprovedDate);\r\n // e.ApprovedDate_filter = e.ApprovedDate.toString().substr(4, 11);\r\n // });\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n // if(this.drilldownDetails?.ReqParam == 'JE' || this.drilldownDetails?.ReqParam == 'XEN'){\r\n // this.drillDownData = data.filter((val) => val.userId.includes(this.drilldownDetails?.ReqParam));\r\n // }else{\r\n this.drillDownData = data;\r\n this.drillDownDataStatus = true;\r\n // }\r\n \r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.drillDownDataStatus = false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus = false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n 'App Id': d.appid,\r\n 'User Name': d.UserName,\r\n 'Next User': d.NextLevelId,\r\n 'Assign Date': d.assigneddate,\r\n 'Pending Days': d.pendingdays,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'userId', header: 'User Id' },\r\n { field: 'userName', header: 'User Name' },\r\n { field: 'District', header: 'District' },\r\n { field: 'mobile', header: 'Mobile No' },\r\n { field: 'pendingApplication', header: 'Pending Application' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n showPendingDetailUserWiseDialog(value) {\r\n // this.value = value;\r\n this.displayPendingDetailUserWise = false;\r\n this.drilldownDetails = {\r\n ActionType: this.drilldownDetails?.ActionType,\r\n District: value?.District,\r\n FinYear: this.selectedYear,\r\n UserId: value?.userId,\r\n RequestType: this.drilldownDetails?.RequestType\r\n };\r\n\r\n setTimeout( () => this.tableContainer2.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n this.displayPendingDetailUserWise = true;\r\n console.log(this.drilldownDetails, 'drilldownDetails userWise');\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n {{'Next User'| translate}}\r\n \r\n \r\n {{'ASSIGN_DATE'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_DAYS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData?.appid}}\r\n {{drillDownData?.UserName}}\r\n {{drillDownData?.NextLevelId}}\r\n {{drillDownData?.assigneddate | date:'mediumDate'}}\r\n {{drillDownData?.pendingdays}}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
","import { Component, OnInit, Input, SimpleChanges } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-drill-down-consolidated-userwise-report',\r\n templateUrl: './drill-down-consolidated-userwise-report.component.html',\r\n styleUrls: ['./drill-down-consolidated-userwise-report.component.scss']\r\n})\r\nexport class DrillDownConsolidatedUserwiseReportComponent implements OnInit {\r\n @Input() drilldownDetails: any;\r\n drillDownData: any;\r\n drillDownDataStatus = false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) {}\r\n userId: any;\r\n isDate: boolean;\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.drilldownDetails) {\r\n const drilldownDetails = changes.drilldownDetails.currentValue;\r\n console.log('Input value changed in child component:', drilldownDetails);\r\n // Perform any actions or logic based on the new input value\r\n this.drillDownData = [];\r\n this.drillDownDataStatus = false;\r\n this.ngOnInit();\r\n }\r\n }\r\n \r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n // }\r\n this.userId = sessionStorage.getItem('User_name_while_login');\r\n // this.userId = encodeURIComponent(this.cryptoJs.Encrypt(this.userId));\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n let router = this.router.url;\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n this.selectedYear = res;\r\n\r\n this.loadData(this.selectedYear);\r\n });\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.drillDownData, 'Drill_down_report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(this.drillDownData, 'Drill_down_report');\r\n // },\r\n // },\r\n ];\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(selectedYear: any) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus = true;\r\n\r\n let sub = this.reportsService\r\n .getPendingDetailUserWise_DrillDown_Report(\r\n this.drilldownDetails?.ActionType,\r\n this.drilldownDetails?.District,\r\n selectedYear,\r\n this.drilldownDetails?.UserId,\r\n this.drilldownDetails?.RequestType\r\n )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n\r\n // data.forEach((e) => {\r\n // if (e.hasOwnProperty('ApprovedDate')) {\r\n // this.isDate = true;\r\n // }\r\n // e.ApprovedDate = new Date(e.ApprovedDate);\r\n // e.ApprovedDate_filter = e.ApprovedDate.toString().substr(4, 11);\r\n // });\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus = true;\r\n // console.log(this.drillDownData)\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.drillDownDataStatus = false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus = false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n 'Application Id': d.appId,\r\n 'Next Action To Be Taken': d.NextActionToBeTaken,\r\n 'District': d.District,\r\n 'Pending Days': d.PendingDays,\r\n 'User Id': d.UserId,\r\n 'Action Date': d.action_Date,\r\n 'User Name': d.UserName,\r\n 'Mobile No': d.mobile,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appId', header: 'Application Id' },\r\n { field: 'NextActionToBeTaken', header: 'Next Action To Be Taken' },\r\n { field: 'District', header: 'District' },\r\n { field: 'PendingDays', header: 'Pending Days' },\r\n { field: 'UserId', header: 'User Id' },\r\n { field: 'pendingAtUser', header: 'Pending At User' },\r\n { field: 'action_Date', header: 'Action Date' },\r\n { field: 'UserName', header: 'UserName' },\r\n { field: 'mobile', header: 'Mobile No' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application?.appId) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application?.appId)]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n}\r\n\r\n","
\r\n {{ \"DATA_NOT_FOUND\" | translate }}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ 'VIEW_APPLICATION' | translate }}\r\n {{'APPLICATION_ID'| translate}}\r\n \r\n \r\n \r\n {{'NEXT_ACTION_TO_BE_TAKEN'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'MOBILE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData?.appId}}\r\n {{drillDownData?.NextActionToBeTaken}}\r\n {{drillDownData?.District}}\r\n {{drillDownData?.PendingDays}}\r\n {{drillDownData?.UserId}}\r\n {{drillDownData?.pendingAtUser}}\r\n {{drillDownData?.action_Date | date:\"medium\"}}\r\n {{drillDownData?.UserName}}\r\n {{drillDownData?.mobile}}\r\n \r\n \r\n\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-drill-down-pending-report',\r\n templateUrl: './drill-down-pending-report.component.html',\r\n styleUrls: ['./drill-down-pending-report.component.scss']\r\n})\r\nexport class DrillDownPendingReportComponent implements OnInit {\r\n @Input() drilldownDetails: any;\r\n drillDownData:any;\r\n drillDownDataStatus=false;\r\n appVerificationItems_dialog: MenuItem[];\r\n isLot:boolean=false;\r\n exportColumns: { title: string; dataKey: string; }[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n userId:any;\r\n isComponentId:boolean;\r\n isArea:boolean;\r\n totalArea:number;\r\n arrayIndex:number;\r\n grandTotalArea:number;\r\n tempVendorWise: any[];\r\n \r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n // console.log(this.drilldownDetails,\"drilldownDetailsdrilldownDetailsdrilldownDetailsdrilldownDetails\")\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus=true;\r\n // console.log(this.drilldownDetails.hasOwnProperty('Block'),\"this.drilldownDetails.hasOwnProperty('Block')\")\r\n if(this.drilldownDetails.hasOwnProperty('Block')){\r\n if(this.drilldownDetails.actionType=='FSV' ||this.drilldownDetails.actionType=='RTF'|| this.drilldownDetails.actionType=='STF'||this.drilldownDetails.actionType=='STV'){\r\n let sub=this.reportsService.getPendingApplication_lot_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.duration,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,this.drilldownDetails.Block,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.isLot=true;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub=this.reportsService.getPendingApplication_Block_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.duration,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,this.drilldownDetails.Block,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n } \r\n }\r\n else{ \r\n if(this.drilldownDetails.actionType=='AppVerification' && this.drilldownDetails.MIType.length==0 ) {\r\n let sub= this.reportsService.getAppVerificationPendingApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.duration,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n \r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n if(this.drilldownDetails.actionType=='VendorMIArea'){\r\n let sub=this.reportsService.getVendor_MI_Area_Report(this.userId,this.drilldownDetails.status,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n \r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n \r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n \r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub= this.reportsService.getPendingApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.duration,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n } \r\n }\r\n \r\n \r\n \r\n }\r\n \r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n \r\n if(this.drilldownDetails.actionType=='AppVerification'){\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n }\r\n }\r\n else{\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'component ':d.componentId,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n 'Area':d.Area\r\n }\r\n }\r\n \r\n \r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppId', header: 'AppId'},\r\n { field: 'ActionId', header: 'Action' },\r\n { field: 'Level_Id', header: 'Level_Id' },\r\n { field: 'UserId', header: 'UserId' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Action_Date_filter', header: 'Action Date' },\r\n { field: 'componentId', header: 'component' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Months', header: 'Months' },\r\n { field: 'years', header: 'Year' },\r\n { field: 'Area', header: 'Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n \r\n -->\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'YEARS'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_AMT_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData.AppId}}\r\n {{drillDownData.ActionId}}\r\n {{drillDownData.Level_Id}}\r\n {{drillDownData.UserId}}\r\n {{drillDownData.Status}}\r\n {{drillDownData.Action_Date_filter}}\r\n {{drillDownData.componentId}}\r\n {{drillDownData.District}}\r\n \r\n {{drillDownData.Months}}\r\n {{drillDownData.Years}}\r\n {{drillDownData.Area}}\r\n {{drillDownData.FarmerShare_to_Vendor}}\r\n {{drillDownData.Subsidy_to_Vendor}}\r\n {{drillDownData.Subsidy_Amt_Farmer}}\r\n {{drillDownData.Refund_to_Farmer}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalArea | number:'1.0-2'}}\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-drill-down-rejected-report',\r\n templateUrl: './drill-down-rejected-report.component.html',\r\n styleUrls: ['./drill-down-rejected-report.component.scss']\r\n})\r\nexport class DrillDownRejectedReportComponent implements OnInit {\r\n\r\n @Input() drilldownDetails: any;\r\n drillDownData:any;\r\n drillDownDataStatus=false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n userId:any;\r\n isComponentId:boolean;\r\n isArea:boolean;\r\n totalArea:number;\r\n arrayIndex:number;\r\n grandTotalArea:number;\r\n tempVendorWise: any[];\r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n // console.log(this.drilldownDetails,\"drilldownDetailsdrilldownDetailsdrilldownDetailsdrilldownDetails\")\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus=true;\r\n if(this.drilldownDetails.hasOwnProperty('Block')){\r\n let sub= this.reportsService.getRejectedApplication_Block_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.filterType,this.drilldownDetails.MIType,this.drilldownDetails.value,this.drilldownDetails.Block,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n if(this.drilldownDetails.actionType=='AppVerification' && this.drilldownDetails.MIType.length==0 ) {\r\n let sub=this.reportsService.getAppVerificationRejectedApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.filterType,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n // console.log( e.Action_Date_filter,\" e.Action_Date_filter\")\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n if(this.drilldownDetails.actionType=='VendorMIArea'){\r\n let sub=this.reportsService.getVendor_MI_Area_Report(this.userId,this.drilldownDetails.status,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n \r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n \r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n \r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub= this.reportsService.getRejectedApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.filterType,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n // console.log( e.Action_Date_filter,\" e.Action_Date_filter\")\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n } \r\n }\r\n \r\n }\r\n \r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n \r\n if(this.drilldownDetails.actionType=='AppVerification'){\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n }\r\n }\r\n else{\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'component ':d.componentId,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n 'Area':d.Area\r\n }\r\n }\r\n \r\n \r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppId', header: 'AppId'},\r\n { field: 'ActionId', header: 'Action' },\r\n { field: 'Level_Id', header: 'Level_Id' },\r\n { field: 'UserId', header: 'UserId' },\r\n { field: 'Status', header: 'Status' },\r\n // { field: 'Assigned_Date_filter', header: 'Assigned Date' },\r\n { field: 'Action_Date_filter', header: 'Action Date' },\r\n { field: 'componentId', header: 'component' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Months', header: 'Months' },\r\n { field: 'Years', header: 'Year' },\r\n { field: 'Area', header: 'Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n \r\n -->\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'YEARS'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData.AppId}}\r\n {{drillDownData.ActionId}}\r\n {{drillDownData.Level_Id}}\r\n {{drillDownData.UserId}}\r\n {{drillDownData.Status}}\r\n \r\n {{drillDownData.Action_Date_filter}}\r\n {{drillDownData.componentId}}\r\n {{drillDownData.District}}\r\n \r\n {{drillDownData.Months}}\r\n {{drillDownData.Years}}\r\n {{drillDownData.Area}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalArea | number:'1.0-2'}}\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\n@Component({\r\n selector: 'app-drill-down-tank-stage-report',\r\n templateUrl: './drill-down-tank-stage-report.component.html',\r\n styleUrls: ['./drill-down-tank-stage-report.component.scss']\r\n})\r\nexport class DrillDownTankStageReportComponent implements OnInit {\r\n\r\n @Input() drilldownDetails: any;\r\n drillDownData:any;\r\n drillDownDataStatus=false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n userId:any;\r\n isDate:boolean;\r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n \r\n // this.loader.start();\r\n this.loading = true;\r\n this.drillDownDataStatus=true;\r\n if(this.drilldownDetails.actionType=='Stage1Intimation' || this.drilldownDetails.actionType=='PVtage1'||\r\n this.drilldownDetails.actionType=='Stage2Intimation' || this.drilldownDetails.actionType=='PVtage2'||\r\n this.drilldownDetails.actionType=='Stage3Intimation' || this.drilldownDetails.actionType=='PVtage3'){\r\n let sub= this.reportsService.getPondCompleted_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.district,this.drilldownDetails.program,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n \r\n data.forEach(e=>{\r\n \r\n if( e.hasOwnProperty('Action_Date')){\r\n this.isDate=true;\r\n if( e.Action_Date!=null){\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n }\r\n else{\r\n e.Action_Date_filter=null;\r\n }\r\n \r\n }\r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub=this.reportsService.getPondPending_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.district,this.drilldownDetails.program,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n \r\n data.forEach(e=>{\r\n \r\n if( e.hasOwnProperty('Action_Date')){\r\n this.isDate=true;\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n }\r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n \r\n \r\n \r\n \r\n \r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'level Id':d.Level_Id,\r\n 'User Name':d.UserId, \r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Area':d.Area\r\n }\r\n \r\n \r\n \r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppId', header: 'AppId'},\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Father_name', header: 'Father Name' },\r\n { field: 'Mother_Name', header: 'Mother Name' },\r\n { field: 'Mobile', header: 'Mobile' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'YEARS'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData.AppId}}\r\n {{drillDownData.ActionId}}\r\n {{drillDownData.Level_Id}}\r\n {{drillDownData.UserId}}\r\n {{drillDownData.Status}}\r\n {{drillDownData.Action_Date_filter}}\r\n {{drillDownData.District}}\r\n \r\n {{drillDownData.Months}}\r\n {{drillDownData.Years}}\r\n {{drillDownData.Area}}\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { shareReplay} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-drill-down-total-report',\r\n templateUrl: './drill-down-total-report.component.html',\r\n styleUrls: ['./drill-down-total-report.component.scss']\r\n})\r\nexport class DrillDownTotalReportComponent implements OnInit {\r\n\r\n @Input() drilldownDetails: any;\r\n drillDownData:any;\r\n drillDownDataStatus=false;\r\n appVerificationItems_dialog: MenuItem[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService \r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n userId:any;\r\n isComponentId:boolean;\r\n isArea:boolean;\r\n totalArea:number;\r\n arrayIndex:number;\r\n grandTotalArea:number;\r\n tempVendorWise: any[];\r\n ngOnInit(): void {\r\n // console.log(\"hello\")\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n this.userId=sessionStorage.getItem('User_name_while_login')\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.userId))\r\n // console.log(this.drilldownDetails,\"drilldownDetailsdrilldownDetailsdrilldownDetailsdrilldownDetails\")\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems_dialog = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.drillDownData, \"Drill_down_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n // console.log(selectedYear,\"selectedYearselectedYearselectedYear\")\r\n // this.loader.start();\r\n this.drillDownDataStatus=true;\r\n this.loading = true;\r\n if(this.drilldownDetails.hasOwnProperty('Block')){\r\n // console.log(this.drilldownDetails.actionType,\"this.drilldownDetails.actionTypethis.drilldownDetails.actionTypethis.drilldownDetails.actionType\")\r\n if(this.drilldownDetails.actionType=='FSV' ||this.drilldownDetails.actionType=='RTF'|| this.drilldownDetails.actionType=='STF'||this.drilldownDetails.actionType=='STV'){\r\n let sub= this.reportsService.getTotalApplication_lot_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,this.drilldownDetails.Block,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n \r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n \r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n this.drillDownDataStatus=false;\r\n // console.log(this.drillDownDataStatus,\"this.drillDownDataStatus\")\r\n // this.loader.close();\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub=this.reportsService.getTotalApplication_Block_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,this.drilldownDetails.Block,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n }\r\n else{ \r\n // if(this.drilldownDetails.actionType=='AppVerification' && this.drilldownDetails.MIType.length==0 ) \r\n if(this.drilldownDetails.actionType=='AppVerification' && this.drilldownDetails.MIType.length==0 ) {\r\n let sub= this.reportsService.getAppVerificationTotalApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.drillDownDataStatus=false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n } \r\n else{\r\n if(this.drilldownDetails.actionType=='VendorMIArea'){\r\n let sub= this.reportsService.getVendor_MI_Area_Report(this.userId,this.drilldownDetails.status,this.drilldownDetails.MIType,this.drilldownDetails.value,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n }\r\n e.Assigned_Date=new Date(e.Assigned_Date)\r\n e.Assigned_Date_filter=e.Assigned_Date.toString().substr(4,11)\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n \r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.drillDownDataStatus=false;\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n \r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n \r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n else{\r\n let sub= this.reportsService.getTotalApplication_DrillDown_Report(this.drilldownDetails.actionType,this.userId,this.drilldownDetails.filterType,this.drilldownDetails.value,this.drilldownDetails.MIType,selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.hasOwnProperty('years')){\r\n e.Years=e.years\r\n }\r\n if(e.hasOwnProperty('componentId')){\r\n this.isComponentId=true;\r\n }\r\n if(e.hasOwnProperty('Area')){\r\n this.isArea=true;\r\n // console.log(this.isArea)\r\n }\r\n e.Action_Date=new Date(e.Action_Date)\r\n e.Action_Date_filter=e.Action_Date.toString().substr(4,11)\r\n })\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.drillDownData = data;\r\n this.drillDownDataStatus=true;\r\n this.tempVendorWise=this.drillDownData;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n this.calculateTotalApp()\r\n \r\n }\r\n else{\r\n \r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.drillDownDataStatus=false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.drillDownDataStatus=false;\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(this.userID, 'Application Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n \r\n } \r\n \r\n \r\n \r\n }\r\n \r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n if(this.drilldownDetails.actionType=='AppVerification'){\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n }\r\n }\r\n else{\r\n return {\r\n 'AppId':d.AppId,\r\n 'Action':d.ActionId,\r\n 'Level Id':d.Level_Id, \r\n 'UserId':d.UserId,\r\n 'Status':d.Status,\r\n 'Action Date':d.Action_Date_filter,\r\n 'component ':d.componentId,\r\n 'District':d.District,\r\n 'Months':d.Months,\r\n 'Years':d.Years,\r\n 'Area':d.Area\r\n }\r\n }\r\n \r\n \r\n \r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AppId', header: 'AppId'},\r\n { field: 'ActionId', header: 'Action' },\r\n { field: 'Level_Id', header: 'Level_Id' },\r\n { field: 'UserId', header: 'UserId' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Action_Date_filter', header: 'Action Date' },\r\n { field: 'componentId', header: 'component' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Months', header: 'Months' },\r\n { field: 'years', header: 'Year' },\r\n { field: 'Area', header: 'Area' },\r\n\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n \r\n -->\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'USER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'YEARS'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_AMT_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{drillDownData.AppId}}\r\n {{drillDownData.ActionId}}\r\n {{drillDownData.Level_Id}}\r\n {{drillDownData.UserId}}\r\n {{drillDownData.Status}}\r\n {{drillDownData.Action_Date_filter}}\r\n {{drillDownData.componentId}}\r\n {{drillDownData.District}}\r\n \r\n {{drillDownData.Months}}\r\n {{drillDownData.Years}}\r\n {{drillDownData.Area}}\r\n {{drillDownData.FarmerShare_to_Vendor}}\r\n {{drillDownData.Subsidy_to_Vendor}}\r\n {{drillDownData.Subsidy_Amt_Farmer}}\r\n {{drillDownData.Refund_to_Farmer}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalArea | number:'1.0-2'}}\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-epc-estimation-details',\r\n templateUrl: './epc-estimation-details.component.html',\r\n styleUrls: ['./epc-estimation-details.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class EpcEstimationDetailsComponent implements OnInit {\r\n @ViewChild('miPondTable', { static: true })\r\n public miPondTable: Table;\r\n\r\n public userId: any;\r\n public estimationTableData: any = [];\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public loading: boolean = false;\r\n public ipAddress: any;\r\n public menuItems: MenuItem[];\r\n\r\n constructor(\r\n private service: BaseService,\r\n private activityRecordService: ActivityRecordService,\r\n private venodrDashBoardService: VendorDashboardService,\r\n private messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private confirmationService: ConfirmationService,\r\n private loader: AppLoaderService,\r\n private _fb: FormBuilder,\r\n private datePipe: DatePipe,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadData();\r\n\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.estimationTableData, \"EPC Estimation Details\");\r\n }\r\n },\r\n ];\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n // loadDataAndApplyFilter() {\r\n // if (sessionStorage.getItem('financialYear')) {\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n // }\r\n\r\n // this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n // (res) => {\r\n // this.selectedYear = res;\r\n // this.loadData();\r\n // }\r\n // );\r\n // }\r\n\r\n loadData() {\r\n this.getIP();\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.venodrDashBoardService\r\n .getEstimationDetailsByUserIDEPC(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Estimation Details', '', new Date(), 'Success');\r\n\r\n this.userId = JSON.parse(payload)?.sub;\r\n // data = JSON.parse(data)\r\n if (data.length > 0) {\r\n this.estimationTableData = data.map((val) => ({\r\n ...val,\r\n }))\r\n }\r\n else {\r\n this.estimationTableData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Estimation Details', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App Id\": d.AppId,\r\n \"Outlets\": d.Outlets,\r\n \"Agreement No\": d.AgreementNo,\r\n \"Programme Name\": d.Program_Name,\r\n \"Chunk Id\": d.ChunkId,\r\n \"XEN Status\": d.XEN_Status,\r\n \"XEN Remarks\": d.XEN_Remarks,\r\n \"JE Status\": d.JE_Status,\r\n \"JE Remarks\": d.JE_Remarks\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n // if (row.Active == 1) {\r\n // //light green\r\n // return '#99e699'\r\n // }\r\n // else if (row.Active == 0) {\r\n // //red\r\n // return '#ff8080';\r\n // }\r\n // else \r\n return '#ffffff';\r\n }\r\n}\r\n\r\n\r\n","\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'OUTLET'| translate}}\r\n {{'AGREEMENT_NO'| translate}}\r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'CHUNK'| translate}}\r\n {{'XEN_STATUS'| translate}}\r\n {{'XEN_REMARKS'| translate}}\r\n {{'JE_STATUS'| translate}}\r\n {{'JE_REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{val?.AppId}}\r\n {{val?.Outlets}}\r\n {{val?.AgreementNo}}\r\n {{val?.Program_Name}}\r\n {{val?.ChunkId}}\r\n {{val?.XEN_Status}}\r\n {{val?.XEN_Remarks}}\r\n {{val?.JE_Status}}\r\n {{val?.JE_Remarks}}\r\n \r\n \r\n\r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{estimationTableData ?\r\n estimationTableData.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { EstimationDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-estimation-district-wise-report',\r\n templateUrl: './estimation-district-wise-report.component.html',\r\n styleUrls: ['./estimation-district-wise-report.component.scss']\r\n})\r\nexport class EstimationDistrictWiseReportComponent implements OnInit {\r\n value:any;\r\n districtWise: any[];\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimation_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (District Wise)', '', new Date(), 'Success');\r\n\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this. calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise =[] ;\r\n this.appVerificationModel = [];\r\n this. calculateGrandTotal();\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount,\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n calculateGrandTotal(){\r\n this.grandTotalApp=0;\r\n this.grandVerfApp=0;\r\n this.grandOnTime=0;\r\n this.grandPendingByWeek=0;\r\n this.grandPendingMoreThanWeek=0;\r\n this.grandEstAmount=0;\r\n this.grandMiArea=0;\r\n for(let districtWiseData of this.districtWise) {\r\n this.grandTotalApp += districtWiseData.TotalApplication;\r\n this.grandVerfApp += districtWiseData.VerifiedApplication;\r\n this.grandOnTime += districtWiseData.PendingEarly;\r\n this.grandPendingByWeek += districtWiseData.Pending_1Week;\r\n this.grandPendingMoreThanWeek += districtWiseData.Pending_Morethan_1Weeks;\r\n this.grandEstAmount += districtWiseData.Est_Amount;\r\n this.grandMiArea += districtWiseData.Mi_Area;\r\n }\r\n }\r\n showMaximizableDialog(value:any,status:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"Estimation\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n status:status,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n} \r\nshowMaximizableDialog_totalApp(value:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"Estimation\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_totalApp = true;\r\n\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\nshowMaximizableDialog_pending(value:any,duration:any) {\r\n \r\n if(duration=='early'){\r\n this.pendingType='On Time'\r\n }\r\n if(duration=='1Week'){\r\n this.pendingType='Pending by Week'\r\n }\r\n if(duration=='morethan_1Week'){\r\n this.pendingType='Pending more than one Week' \r\n }\r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"Estimation\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n duration:duration,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_pendingApp = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n} \r\n\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.VerifiedApplication}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.Est_Amount}}\r\n {{districtWise.Mi_Area}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { EstimationMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n@Component({\r\n selector: 'app-estimation-month-wise-report',\r\n templateUrl: './estimation-month-wise-report.component.html',\r\n styleUrls: ['./estimation-month-wise-report.component.scss']\r\n})\r\nexport class EstimationMonthWiseReportComponent implements OnInit {\r\n value:any;\r\n totalApp:number;\r\n verfApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n monthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimation_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Month Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data; \r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise = [];\r\n this.appVerificationModel =[] ; \r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Years\": d.Years,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount,\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i{\r\n // e=e.substr(0,e.length-2)+\"20\"+e.substr(-2);\r\n // e=new Date (e)\r\n\r\n // })\r\n // console.log(required_date)\r\n // return required_date\r\n\r\n // // eMonths=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n // // e.Months=new Date (e.Months)\r\n // }\r\n showMaximizableDialog(value:any,status:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"Estimation\",\r\n \r\n filterType:\"Months\",\r\n value:this.value,\r\n status:status,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n }\r\n showMaximizableDialog_totalApp(value:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"Estimation\",\r\n \r\n filterType:\"Months\",\r\n value:this.value,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_totalApp = true;\r\n\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\nshowMaximizableDialog_pending(value:any,duration:any) {\r\n \r\n if(duration=='early'){\r\n this.pendingType='On Time'\r\n }\r\n if(duration=='1Week'){\r\n this.pendingType='Pending by Week'\r\n }\r\n if(duration=='morethan_1Week'){\r\n this.pendingType='Pending more than one Week' \r\n }\r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"Estimation\",\r\n \r\n filterType:\"Months\",\r\n value:this.value,\r\n duration:duration,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_pendingApp = true;\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n}\r\n\r\n}\r\n","\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.VerifiedApplication}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.Est_Amount}}\r\n {{monthWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-estimation-report',\r\n templateUrl: './estimation-report.component.html',\r\n styleUrls: ['./estimation-report.component.scss']\r\n})\r\nexport class EstimationReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/estimation/estimation-month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/estimation/estimation-district-wise` },\r\n { label: 'User Wise', routerLink: `/${parentRoute}/report/estimation/estimation-user-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/estimation/estimation-vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { EstimationUserWiseModel } from 'src/app/models/department-reports.model';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-estimation-user-wise-report',\r\n templateUrl: './estimation-user-wise-report.component.html',\r\n styleUrls: ['./estimation-user-wise-report.component.scss']\r\n})\r\nexport class EstimationUserWiseReportComponent implements OnInit {\r\n totalApp:number;\r\n verfApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempUserWise: any[];\r\n userWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationUserWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n value:any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n userName:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimation_UserWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (User Wise)', '', new Date(), 'Success');\r\n\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.userWise = data;\r\n this.appVerificationModel = data;\r\n this.tempUserWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.userWise = [];\r\n this.appVerificationModel = [];\r\n this.tempUserWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (User Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"User ID\" : d.UserID,\r\n \"Level ID\" : d.Level_ID,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount,\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'UserID', header: 'User ID'},\r\n {field: 'Level_ID', header: 'Level ID'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempUserWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempUserWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'USER_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THAN_A_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{userWise.UserID}}\r\n {{userWise.Level_ID}}\r\n {{userWise.TotalApplication}}\r\n {{userWise.VerifiedApplication}}\r\n {{userWise.PendingEarly}}\r\n {{userWise.Pending_1Week}}\r\n {{userWise.Pending_Morethan_1Weeks}}\r\n {{userWise.Est_Amount}}\r\n {{userWise.Mi_Area}} \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { EstimationVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-estimation-vendor-wise-report',\r\n templateUrl: './estimation-vendor-wise-report.component.html',\r\n styleUrls: ['./estimation-vendor-wise-report.component.scss']\r\n})\r\nexport class EstimationVendorWiseReportComponent implements OnInit {\r\n totalApp:number;\r\n verfApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n vendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public userID: any;\r\n value:any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n pendingType:any;\r\n drilldownDetails:any;\r\n vendorName:any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimation_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Vendor Wise)', '', new Date(), 'Success');\r\n\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise =[] ;\r\n this.appVerificationModel = [];\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount,\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THAN_A_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.VerifiedApplication}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.Est_Amount}}\r\n {{vendorWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { EstimationVerificationDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-est-verification-district-wise-report',\r\n templateUrl: './est-verification-district-wise-report.component.html',\r\n styleUrls: ['./est-verification-district-wise-report.component.scss']\r\n})\r\nexport class EstVerificationDistrictWiseReportComponent implements OnInit {\r\n value:any;\r\n districtWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n regectedApp:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempDistrictWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationVerificationDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n approved_return:any;\r\n drilldownDetails:any;\r\n miType:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub= this.reportsService.getEstimationVerification_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this.tempDistrictWise=data;\r\n this.arrayIndex=0;\r\n this. calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise = [];\r\n this.appVerificationModel = [];\r\n this.tempDistrictWise=[];\r\n this.arrayIndex=0;\r\n this. calculateGrandTotal();\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"MIType\" : d.MIType,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\" : d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\" : d.Est_Amount,\r\n \"Rejected Application\" : d.RejectedApplication,\r\n \"Mi Area\" : d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'MIType', header: 'MI Type'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n {field: 'ReturnProcessApplication', header: 'ReturnProcessApplication'},\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n {field: 'RejectedApplication', header: 'Rejected Application'},\r\n {field: 'Est_Amount', header: 'Est Amount'},\r\n {field: 'Mi_Area', header: 'Mi Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempDistrictWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.regectedApp=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempDistrictWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'MI_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.MIType}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.VerifiedApplication}}\r\n {{districtWise.ReturnProcessApplication}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.RejectedApplication}}\r\n {{districtWise.Est_Amount}}\r\n {{districtWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{regectedApp | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRegectedApp | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { EstimationVerificationMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-est-verification-month-wise-report',\r\n templateUrl: './est-verification-month-wise-report.component.html',\r\n styleUrls: ['./est-verification-month-wise-report.component.scss']\r\n})\r\nexport class EstVerificationMonthWiseReportComponent implements OnInit {\r\n value:any;\r\n monthWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n regectedApp:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationVerificationMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n approved_return:any;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimationVerification_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (Month Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data; \r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this. calculateGrandTotal(); \r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise = [];\r\n this.appVerificationModel = []; \r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this. calculateGrandTotal(); \r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"Est Amount\": d.Est_Amount,\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.regectedApp=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.VerifiedApplication}}\r\n {{monthWise.ReturnProcessApplication}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.RejectedApplication}}\r\n {{monthWise.Est_Amount}}\r\n {{monthWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{regectedApp | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRegectedApp | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { EstimationVerificationUserWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-est-verification-user-wise-report',\r\n templateUrl: './est-verification-user-wise-report.component.html',\r\n styleUrls: ['./est-verification-user-wise-report.component.scss']\r\n})\r\nexport class EstVerificationUserWiseReportComponent implements OnInit {\r\n value:any;\r\n userWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n regectedApp:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempUserWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationVerificationUserWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n userName:any;\r\n approved_return:any;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimationVerification_UserWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (User Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.userWise = data;\r\n this.appVerificationModel = data;\r\n this.tempUserWise=data;\r\n this.arrayIndex=0;\r\n this. calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.userWise =[] ;\r\n this.appVerificationModel = [];\r\n this.tempUserWise=[];\r\n this.arrayIndex=0;\r\n this. calculateGrandTotal();\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (User Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"User ID\" : d.UserID,\r\n \"Level ID\" : d.Level_ID,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Week\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"Est Amount\": d.Est_Amount,\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'UserID', header: 'User ID'},\r\n {field: 'Level_ID', header: 'Level ID'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempUserWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.regectedApp=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempUserWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'USER_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{userWise.UserID}}\r\n {{userWise.Level_ID}}\r\n {{userWise.TotalApplication}}\r\n {{userWise.VerifiedApplication}}\r\n {{userWise.ReturnProcessApplication}}\r\n {{userWise.PendingEarly}}\r\n {{userWise.Pending_1Week}}\r\n {{userWise.Pending_Morethan_1Weeks}}\r\n {{userWise.RejectedApplication}}\r\n {{userWise.Est_Amount}}\r\n {{userWise.Mi_Area}} \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { EstimationVerificationVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-est-verification-vendor-wise-report',\r\n templateUrl: './est-verification-vendor-wise-report.component.html',\r\n styleUrls: ['./est-verification-vendor-wise-report.component.scss']\r\n})\r\nexport class EstVerificationVendorWiseReportComponent implements OnInit {\r\n value:any;\r\n vendorWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n regectedApp:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRegectedApp:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationVerificationVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n pendingType:any;\r\n vendorName:any;\r\n userName:any;\r\n approved_return:any;\r\n drilldownDetails:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimationVerification_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (Vendor Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise =[] ;\r\n this.appVerificationModel =[] ;\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal();\r\n \r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimation Verification Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"MI Type\" : d.MIType,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"Est Amount\": d.Est_Amount,\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n {field: 'MIType', header: 'MI Type'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n {field: 'Pending_1Week', header: 'Pending a Week'},\r\n {field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week'},\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n {field: 'Est_Amount', header: 'Est Amount'},\r\n {field: 'Mi_Area', header: 'Mi Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.regectedApp=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'MI_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.MIType}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.VerifiedApplication}}\r\n {{vendorWise.ReturnProcessApplication}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.RejectedApplication}}\r\n {{vendorWise.Est_Amount}}\r\n {{vendorWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{regectedApp | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRegectedApp | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-estimation-verification-report',\r\n templateUrl: './estimation-verification-report.component.html',\r\n styleUrls: ['./estimation-verification-report.component.scss']\r\n})\r\nexport class EstimationVerificationReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/estimation-verification/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/estimation-verification/district-wise` },\r\n { label: 'User Wise', routerLink: `/${parentRoute}/report/estimation-verification/user-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/estimation-verification/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { FsvDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-fsv-district-wise-report',\r\n templateUrl: './fsv-district-wise-report.component.html',\r\n styleUrls: ['./fsv-district-wise-report.component.scss']\r\n})\r\nexport class FsvDistrictWiseReportComponent implements OnInit {\r\n\r\n districtWise: any[];\r\n fsvDeposited:number;\r\n fsvPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandFsvDeposited:number;\r\n grandFsvPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempDistrictWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: FsvDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getFSV_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'FSV Report (District Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this.tempDistrictWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise =[] ;\r\n this.appVerificationModel = [];\r\n this.tempDistrictWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'FSV Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"FSV Deposited\": d.FSVDeposited,\r\n \"FSV Paid\": d.FSVPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\" : d.AmountPaid,\r\n \"MI Area\" : d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'FSVDeposited', header: 'FSV Deposited' },\r\n { field: 'FSVPaid', header: 'FSV Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n {field: 'AmountPaid', header: 'Amount Paid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempDistrictWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.fsvDeposited=0;\r\n this.fsvPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempDistrictWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'FSV_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'FSV_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.Block}}\r\n {{districtWise.FSVDeposited}}\r\n {{districtWise.FSVPaid}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.AmountPaid}}\r\n {{districtWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{fsvDeposited | number:'1.0-2'}}\r\n {{fsvPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandFsvDeposited | number:'1.0-2'}}\r\n {{grandFsvPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { FsvMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-fsv-month-wise-report',\r\n templateUrl: './fsv-month-wise-report.component.html',\r\n styleUrls: ['./fsv-month-wise-report.component.scss']\r\n})\r\nexport class FsvMonthWiseReportComponent implements OnInit {\r\n\r\n monthWise: any[];\r\n fsvDeposited:number;\r\n fsvPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandFsvDeposited:number;\r\n grandFsvPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: FsvMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getFSV_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'FSV Report (Month Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data;\r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise = [];\r\n this.appVerificationModel =[] ;\r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'FSV Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"FSV Deposited\": d.FSVDeposited,\r\n \"FSV Paid\": d.FSVPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'FSVDeposited', header: 'FSV Deposited' },\r\n { field: 'FSVPaid', header: 'FSV Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'AmountPaid', header: 'Amount Paid' },\r\n { field: 'MIArea', header: 'MI Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.fsvDeposited=0;\r\n this.fsvPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'FSV_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'FSV_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.FSVDeposited}}\r\n {{monthWise.FSVPaid}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.AmountPaid}}\r\n {{monthWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{fsvDeposited | number:'1.0-2'}}\r\n {{fsvPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandFsvDeposited | number:'1.0-2'}}\r\n {{grandFsvPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-fsv-report',\r\n templateUrl: './fsv-report.component.html',\r\n styleUrls: ['./fsv-report.component.scss']\r\n})\r\nexport class FsvReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/fsv/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/fsv/district-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/fsv/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { FsvVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-fsv-vendor-wise-report',\r\n templateUrl: './fsv-vendor-wise-report.component.html',\r\n styleUrls: ['./fsv-vendor-wise-report.component.scss']\r\n})\r\nexport class FsvVendorWiseReportComponent implements OnInit {\r\n\r\n vendorWise: any[];\r\n fsvDeposited:number;\r\n fsvPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandFsvDeposited:number;\r\n grandFsvPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: FsvVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any\r\n vendorName:any\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getFSV_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'FSV Report (Vendor Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise = [];\r\n this.appVerificationModel =[] ;\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'FSV Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"FSV Deposited\" : d.FSVDeposited,\r\n \"FSV Paid\": d.FSVPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n {field: 'FSVDeposited', header: 'FSV Deposited'},\r\n { field: 'FSVPaid', header: 'FSV Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n {field: 'Pending_1Week', header: 'Pending a Week'},\r\n {field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week'},\r\n {field: 'AmountPaid', header: 'AmountPaid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.fsvDeposited=0;\r\n this.fsvPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FSV_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'FSV_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.FSVDeposited}}\r\n {{vendorWise.FSVPaid}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.AmountPaid}}\r\n {{vendorWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{fsvDeposited | number:'1.0-2'}}\r\n {{fsvPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandFsvDeposited | number:'1.0-2'}}\r\n {{grandFsvPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { inventory } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-inventory-report',\r\n templateUrl: './inventory-report.component.html',\r\n styleUrls: ['./inventory-report.component.scss']\r\n})\r\nexport class InventoryReportComponent implements OnInit {\r\n\r\n inventoryData: any[];\r\n verfAppArea:any;\r\n pendingArea:any;\r\n incompleteAppArea:any;\r\n rejectedAppArea:any;\r\n changeRequestAppArea:any;\r\n totalAppArea:any;\r\n targetArea:any;\r\n grandVerfAppArea:number;\r\n grandPendingArea:number;\r\n grandIncompleteAppArea:number;\r\n grandRejectedAppArea:number;\r\n grandChangeRequestAppArea:number;\r\n grandTotalAppArea:number;\r\n grandTargetArea:number;\r\n arrayIndex:number;\r\n tempVendorMiArea: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: inventory[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n displayMaximizable_rejectedApp:any;\r\n vendorName:any;\r\n name:any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService) { }\r\n\r\n ngOnInit(): void {\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n // let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n // let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n // (res) => {\r\n // let router=this.router.url\r\n // // this.routePath=router.split('/')\r\n \r\n // this.subscriptions.forEach(sub => sub.unsubscribe());\r\n // this.selectedYear=res\r\n \r\n // this.loadData(this.selectedYear)\r\n // }\r\n \r\n // );\r\n this.loadData()\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Inventory_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Inventory_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getInventoryReport()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Inventory Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.inventoryData = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorMiArea=data;\r\n this.arrayIndex=0;\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.inventoryData = [];\r\n this.appVerificationModel =[] ;\r\n this.tempVendorMiArea=[];\r\n this.arrayIndex=0;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Inventory Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Programme Name\" : d.ProgrammeName,\r\n \"component\": d.component,\r\n \"size\": d.size,\r\n \"Quantity\": d.Quantity,\r\n \"Previously Consumed Quantity\": d.PreviouslyConsumedQuantity,\r\n \"Remaning Quantity\": d.RemaningQuantity,\r\n \"BatchNO\": d.BatchNO,\r\n \"LotNo\": d.LotNo,\r\n \"Purchase InvoiceNo\": d.PurchaseInvoiceNo,\r\n \"Item Type\": d.ItemType,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n {field: 'ProgrammeName', header: 'Programme Name'},\r\n { field: 'component', header: 'component' },\r\n { field: 'size', header: 'size' },\r\n {field: 'Quantity', header: 'Quantity'},\r\n {field: 'PreviouslyConsumedQuantity', header: 'Previously Consumed Quantity'},\r\n {field: 'RemaningQuantity', header: 'Remaning Quantity'},\r\n {field: 'BatchNO', header: 'BatchNO'},\r\n {field: 'LotNo', header: 'LotNo'},\r\n {field: 'PurchaseInvoiceNo', header: 'Purchase InvoiceNo'},\r\n {field: 'ItemType', header: 'Item Type'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 9 }});\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'INVENTORY_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT'| translate}}\r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n {{'QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'PREVIOUSLY_CONSUMED_QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'REMAINING_QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'BATCH_NO'| translate}}\r\n \r\n \r\n \r\n {{'LOT_NO'| translate}}\r\n \r\n \r\n \r\n {{'PURCHASE_INVOICE_NO'| translate}}\r\n \r\n \r\n \r\n {{'ITEM_TYPE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{inventoryData.VendorName}}\r\n {{inventoryData.ProgrammeName}}\r\n {{inventoryData.component}}\r\n {{inventoryData.size}}\r\n {{inventoryData.Quantity}}\r\n {{inventoryData.PreviouslyConsumedQuantity}}\r\n {{inventoryData.RemaningQuantity}}\r\n {{inventoryData.BatchNO}}\r\n {{inventoryData.LotNo}}\r\n {{inventoryData.PurchaseInvoiceNo}}\r\n {{inventoryData.ItemType}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TankAbstract } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-lot-consolidated-report',\r\n templateUrl: './lot-consolidated-report.component.html',\r\n styleUrls: ['./lot-consolidated-report.component.scss']\r\n})\r\nexport class LotConsolidatedReportComponent implements OnInit {\r\n\r\n tankAbstract: any[];\r\n tankApp: any;\r\n tankCoverageArea: any;\r\n tankVerifiedApp: any;\r\n tankRpApp: any;\r\n tankRejectedApp: any;\r\n tankVerifiedCoverageApp: any;\r\n grandTankApp: number;\r\n grandTankCoverageArea: number;\r\n grandTankVerifiedApp: number;\r\n grandTankRpApp: number;\r\n grandTankRejectedApp: number;\r\n grandTankVerifiedCoverageApp: number;\r\n arrayIndex: number;\r\n tempTankAbstract: any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: TankAbstract[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n drilldownDetails: any;\r\n public userID: any;\r\n value: any;\r\n displayMaximizable_all: any\r\n displayMaximizable_verified: any\r\n displayMaximizable_rp: any\r\n displayMaximizable_rejected: any\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public applicationForm: FormGroup;\r\n public isSubmitted: boolean = false;\r\n vendorId: any;\r\n\r\n public tableHeight: any = '50px';\r\n \r\n constructor(private reportsService: ReportsService\r\n , private messageService: MessageService\r\n , private dashboard: DashboardService\r\n , private router: Router\r\n , private activityRecordService: ActivityRecordService\r\n , private loader: AppLoaderService\r\n , private service: BaseService\r\n , private fb: FormBuilder\r\n , private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.vendorId = sessionStorage.getItem('officeCode');\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router = this.router.url\r\n // this.routePath=router.split('/')\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear = res\r\n\r\n // this.loadData(this.selectedYear)\r\n }\r\n\r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"LOT_report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"LOT_report\");\r\n // }\r\n // },\r\n ];\r\n this.applicationForm = this.fb.group({\r\n vendorId: ['', Validators.required],\r\n programId: [''],\r\n });\r\n this.loadData()\r\n }\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService.getLotConsolidatedReport()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data.length)\r\n if (data?.length > 0) {\r\n this.tableHeight = '400px';\r\n this.tankAbstract = data;\r\n this.appVerificationModel = data;\r\n this.tempTankAbstract = data;\r\n this.arrayIndex = 0;\r\n // this.calculateGrandTotal()\r\n\r\n }\r\n else {\r\n this.tableHeight = '50px';\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.tankAbstract = [];\r\n this.appVerificationModel = [];\r\n this.tempTankAbstract = [];\r\n this.arrayIndex = 0;\r\n }\r\n },\r\n error: (err) => {\r\n this.tankAbstract = [];\r\n this.appVerificationModel = [];\r\n this.tempTankAbstract = [];\r\n this.arrayIndex = 0;\r\n this.tableHeight = '50px';\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"Status\": d.Status,\r\n \"Stage\": d.Stage,\r\n \"Lot No\": d.LotNos,\r\n \"Total No of Lot\": d.TotalNoOfLots,\r\n \"Total Records\": d.TotalRecords,\r\n \"Total PFMS Amount\": d.SumTotalAmt,\r\n\r\n \"Success Records\": d.TotalSuccessfulRecords,\r\n \"Success Amount\": d.AmtSuccessfulRecords,\r\n\r\n \"Failed Records\": d.TotalFailedRecords,\r\n \"Failed Amount\": d.AmtFailedRecords,\r\n }\r\n })\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Stage', header: 'Stage' },\r\n { field: 'LotNos', header: 'Lot No' },\r\n { field: 'TotalNoOfLots', header: 'Total No of Lot' },\r\n { field: 'TotalRecords', header: 'Total Records' },\r\n { field: 'SumTotalAmt', header: 'Total PFMS Amount' },\r\n\r\n { field: 'TotalSuccessfulRecords', header: 'Success Records' },\r\n { field: 'AmtSuccessfulRecords', header: 'Success Amount' },\r\n\r\n { field: 'TotalFailedRecords', header: 'Failed Records' },\r\n { field: 'AmtFailedRecords', header: 'Failed Amount' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default('l', 'mm', 'a4');\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempTankAbstract = event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex = 0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp();\r\n }\r\n onPage(event: any) {\r\n this.arrayIndex = event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\n calculateTotalApp() {\r\n this.tankApp = 0;\r\n this.tankCoverageArea = 0;\r\n this.tankVerifiedApp = 0;\r\n this.tankRpApp = 0;\r\n this.tankRejectedApp = 0;\r\n this.tankVerifiedCoverageApp = 0;\r\n for (let i = this.arrayIndex; this.tempTankAbstract.length > 10 ? i < this.arrayIndex + 10 : i < this.tempTankAbstract.length; i++) {\r\n //console.log( this.totalApp,\"totalAPPPPPPPPP\")\r\n this.tankApp += this.tempTankAbstract[i].Tank_App;\r\n this.tankCoverageArea += this.tempTankAbstract[i].Tank_Coverage_Area;\r\n this.tankVerifiedApp += this.tempTankAbstract[i].Tank_Verified_App;\r\n this.tankRpApp += this.tempTankAbstract[i].Tank_RP_App;\r\n this.tankRejectedApp += this.tempTankAbstract[i].tank_Rejected_App;\r\n this.tankVerifiedCoverageApp += this.tempTankAbstract[i].Tank_Verified_Coverage_Area;\r\n\r\n }\r\n\r\n }\r\n // calculateGrandTotal(){\r\n // this.grandTankApp=0;\r\n // this.grandTankCoverageArea=0;\r\n // this.grandTankVerifiedApp=0;\r\n // this.grandTankRpApp=0;\r\n // this.grandTankRejectedApp=0;\r\n // this.grandTankVerifiedCoverageApp=0;\r\n // for(let vendorData of this.tempTankAbstract) {\r\n // this.grandTankApp += vendorData.Tank_App;\r\n // this.grandTankCoverageArea += vendorData.Tank_Coverage_Area;\r\n // this.grandTankVerifiedApp += vendorData.Tank_Verified_App;\r\n // this.grandTankRpApp += vendorData.Tank_RP_App;\r\n // this.grandTankRejectedApp += vendorData.tank_Rejected_App;\r\n // this.grandTankVerifiedCoverageApp += vendorData.Tank_Verified_Coverage_Area;\r\n // }\r\n // }\r\n showMaximizableDialog(district: any, status: any) {\r\n\r\n // if(status=='All'){\r\n // this.displayMaximizable_all=true\r\n // }\r\n // if(status=='Approved'){\r\n // this.displayMaximizable_verified=true\r\n // }\r\n // if(status=='Incomplete'){\r\n // this.displayMaximizable_rp=true\r\n // }\r\n // if(status=='Rejected'){\r\n // this.displayMaximizable_rejected=true\r\n // }\r\n // this.value=district;\r\n // this.drilldownDetails={\r\n // district:district,\r\n // status:status,\r\n // }\r\n\r\n // console.log(this.value,\"value\")\r\n // console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n }\r\n get f() {\r\n return this.applicationForm.controls;\r\n }\r\n clearAppNo() {\r\n this.f.vendorId.setValue(null);\r\n }\r\n submitApplication() {\r\n // console.log(this.f.vendorId.value,\"dddddddddddd\")\r\n this.isSubmitted = true;\r\n this.loadData()\r\n\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status == 'Pending-MI' || row.Status == 'Pending-Pond') {\r\n return '#ffb3b3';\r\n // '#ff8080'\r\n } else if (row.Status == 'Uploaded-MI' || row.Status == 'Uploaded-Pond') {\r\n return '#99e699';\r\n // return '#99e699';\r\n } else return '#ffb3b3';\r\n }\r\n\r\n calculateCustomerTotal(name: string) {\r\n let total = 0;\r\n\r\n if (this.tankAbstract) {\r\n for (let customer of this.tankAbstract) {\r\n if (customer.Status === name) {\r\n total++;\r\n }\r\n }\r\n }\r\n return total;\r\n }\r\n \r\n}\r\n","\r\n\r\n \r\n \r\n
\r\n
{{'LOT_CONSOLIDATED_REPORT'| translate}}
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'STAGE'| translate}}\r\n {{'LOT_NO'| translate}}\r\n {{'NO_OF_LOTS'| translate}}\r\n {{'TOTAL_RECORDS'| translate}}\r\n\r\n {{'TOTAL_PFMS_AMOUNT'| translate}}\r\n {{'SUCCESSFUL_RECORDS'| translate}}\r\n {{'SUCCESSFUL_AMOUNT'| translate}}\r\n \r\n {{'FAILED_RECORDS'| translate}}\r\n {{'FAILED_AMOUNT'| translate}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{customer.Status}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{tankAbstract.Stage}}\r\n {{tankAbstract.LotNos}}\r\n {{tankAbstract.TotalNoOfLots}}\r\n {{tankAbstract.TotalRecords}}\r\n\r\n {{tankAbstract.SumTotalAmt}}\r\n\r\n {{tankAbstract.TotalSuccessfulRecords}}\r\n {{tankAbstract.AmtSuccessfulRecords}}\r\n\r\n {{tankAbstract.TotalFailedRecords}}\r\n {{tankAbstract.AmtFailedRecords}}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
{{'Uploaded'| translate}}\r\n
\r\n
\r\n \r\n
{{'Pending'| translate}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup , Validators} from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TankAbstract } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-lot-report',\r\n templateUrl: './lot-report.component.html',\r\n styleUrls: ['./lot-report.component.scss']\r\n})\r\n\r\nexport class LotReportComponent implements OnInit {\r\n\r\n tankAbstract: any[];\r\n tankApp: any;\r\n tankCoverageArea:any;\r\n tankVerifiedApp:any;\r\n tankRpApp:any;\r\n tankRejectedApp:any;\r\n tankVerifiedCoverageApp:any;\r\n grandTankApp:number;\r\n grandTankCoverageArea:number;\r\n grandTankVerifiedApp:number;\r\n grandTankRpApp:number;\r\n grandTankRejectedApp:number;\r\n grandTankVerifiedCoverageApp:number;\r\n arrayIndex:number;\r\n tempTankAbstract: any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: TankAbstract[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n drilldownDetails:any;\r\n public userID: any;\r\n value:any;\r\n displayMaximizable_all:any\r\n displayMaximizable_verified:any\r\n displayMaximizable_rp:any\r\n displayMaximizable_rejected:any\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public applicationForm: FormGroup;\r\n public isSubmitted: boolean = false;\r\n vendorId:any\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private fb: FormBuilder\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.vendorId=sessionStorage.getItem('officeCode');\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n // this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"LOT_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"LOT_report\");\r\n }\r\n },\r\n ];\r\n this.applicationForm = this.fb.group({\r\n vendorId: ['', Validators.required],\r\n programId: [''],\r\n });\r\n this.loadData()\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getLotReport()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data.length)\r\n if (data?.length > 0) {\r\n this.tankAbstract = data;\r\n this.appVerificationModel = data;\r\n this.tempTankAbstract=data;\r\n this.arrayIndex=0;\r\n // this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.tankAbstract = [];\r\n this.appVerificationModel = [];\r\n this.tempTankAbstract=[];\r\n this.arrayIndex=0;\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"Srno\" : d.Srno,\r\n \"Lot No\" : d.Lot_No,\r\n \"No of All Records\": d.No_of_AllRecords,\r\n \"Sum of All Records\": d.Sum_of_AllRecords,\r\n \"No of Successfull Records\": d.No_of_Successfull_Records,\r\n \"Sum of Successfull Records\": d.Sum_of_Successfull_Records,\r\n \"Sum of Failed Records\": d.Sum_of_Failed_Records,\r\n \"No of Failed Records\": d.No_of_Failed_Records,\r\n \"Lot Type\": d.LotType,\r\n \"Type\": d.Type,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Srno', header: 'Srno'},\r\n {field: 'Lot_No', header: 'Lot No'},\r\n { field: 'No_of_AllRecords', header: 'No of All Records' },\r\n { field: 'Sum_of_AllRecords', header: 'Sum of All Records' },\r\n {field: 'No_of_Successfull_Records', header: 'No of Successfull Records'},\r\n {field: 'Sum_of_Successfull_Records', header: 'Sum of Successfull Records'},\r\n {field: 'Sum_of_Failed_Records', header: 'Sum of Failed Records'},\r\n {field: 'No_of_Failed_Records', header: 'No of Failed Records'},\r\n {field: 'LotType', header: 'Lot Type'},\r\n {field: 'Type', header: 'Type'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default('l', 'mm', 'a4');\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempTankAbstract=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.tankApp=0;\r\n this.tankCoverageArea=0;\r\n this.tankVerifiedApp=0;\r\n this.tankRpApp=0;\r\n this.tankRejectedApp=0;\r\n this.tankVerifiedCoverageApp=0;\r\n for(let i=this.arrayIndex ;this.tempTankAbstract.length>10?i\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'LOT_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'LOT_NO'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_SUCCESSFULL_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'SUM_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'NO_OF_FAILED_RECORDS'| translate}}\r\n \r\n \r\n \r\n {{'LOT_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'TYPE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{tankAbstract.Lot_No}}\r\n {{tankAbstract.No_of_AllRecords}}\r\n {{tankAbstract.Sum_of_AllRecords}}\r\n {{tankAbstract.No_of_Successfull_Records}}\r\n {{tankAbstract.Sum_of_Successfull_Records}}\r\n {{tankAbstract.Sum_of_Failed_Records}}\r\n {{tankAbstract.No_of_Failed_Records}}\r\n {{tankAbstract.LotType}}\r\n {{tankAbstract.Type}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-fsv-lot-report',\r\n templateUrl: './fsv-lot-report.component.html',\r\n styleUrls: ['./fsv-lot-report.component.scss'],\r\n})\r\nexport class FsvLotReportComponent implements OnInit {\r\n @ViewChild('dataTable', { static: true })\r\n public dataTable: Table;\r\n fsv_lot_report: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'FSV_Lot_Report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, 'FSV_Lot_Report');\r\n // },\r\n // },\r\n ];\r\n\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.dataTable.filters['Fin_Year'] = [\r\n {\r\n value: this.selectedYear,\r\n matchMode: 'startsWith',\r\n operator: 'and',\r\n },\r\n ];\r\n });\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getConsolidatedLotRpt('FSV')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'FSV Lot Report',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.fsv_lot_report = data;\r\n this.appVerificationModel = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.fsv_lot_report = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'FSV Lot Report',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot No': d.Lot_No,\r\n 'Application Id': d.AppID,\r\n 'Application Type': d.ApplicationType,\r\n 'Program Name': d.Program_Name,\r\n 'Farmer Share Amount/Full Payment': d.FarmerShare_to_Vendor,\r\n 'Created Date': d.CreatedDate,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n 'Financial Year': d.Fin_Year,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'Lot_No', header: 'Lot No' },\r\n // { field: 'AppID', header: 'AppID' },\r\n // { field: 'ApplicationType', header: 'ApplicationType' },\r\n // { field: 'Program_Name', header: 'Program_Name' },\r\n // { field: 'FarmerShare_to_Vendor', header: 'FarmerShare_to_Vendor' },\r\n // { field: 'CreatedDate', header: 'CreatedDate' },\r\n // { field: 'PFMSPaymentDate', header: 'PFMSPaymentDate' },\r\n // { field: 'Status', header: 'Status' },\r\n // { field: 'Remarks', header: 'Remarks' },\r\n // { field: 'Fin_Year', header: 'Fin_Year' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'FSV_LOT_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'LOT_NO'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'CREATED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{fsv_lot_report?.Lot_No}}\r\n {{fsv_lot_report?.AppID}}\r\n {{fsv_lot_report?.ApplicationType}}\r\n {{fsv_lot_report?.Program_Name}}\r\n {{fsv_lot_report?.FarmerShare_to_Vendor}}\r\n {{fsv_lot_report?.CreatedDate | date:'mediumDate' }}\r\n {{fsv_lot_report?.PFMSPaymentDate}}\r\n {{fsv_lot_report?.Status}}\r\n {{fsv_lot_report?.Remarks}}\r\n {{fsv_lot_report?.Fin_Year}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-lot-wise-report',\r\n templateUrl: './lot-wise-report.component.html',\r\n styleUrls: ['./lot-wise-report.component.scss']\r\n})\r\nexport class LotWiseReportComponent implements OnInit {\r\n\r\n dropDownList: { type: any, value: any }[];\r\n applicationSelected: any;\r\n responseDate: any;\r\n cols: any[];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private ipService: IpAddressService, \r\n private caoService: CaoService, \r\n private messageService: MessageService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n autoId: any;\r\n appId: any;\r\n items: any[];\r\n userID: any;\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'View All Subsidy Lot', '', new Date(), 'Success');\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n\r\n if(this.router.url.startsWith('/cao')){\r\n this.dropDownList = [\r\n {\r\n type: 'Farmer Share To vendor', value: `/report/lot-wise-report/fsv`\r\n },\r\n {\r\n type: 'Subsidy To Farmer', value: `/report/lot-wise-report/stf`\r\n },\r\n {\r\n type: 'Subsidy To Vendor', value: `/report/lot-wise-report/stv`\r\n },\r\n {\r\n type: 'Refund To Farmer', value: `/report/lot-wise-report/rtf`\r\n },\r\n {\r\n type: 'Stage 1', value: `/report/lot-wise-report/stage1`\r\n },\r\n {\r\n type: 'Stage 2', value: `/report/lot-wise-report/stage2`\r\n },\r\n {\r\n type: 'Stage 3', value: `/report/lot-wise-report/stage3`\r\n },\r\n ]\r\n }\r\n \r\n }\r\n\r\n onApplicationTypeSelected(event) {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.router.navigate([`/${parentRoute.concat(event.value.value)}`])\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-rtf-lot-report',\r\n templateUrl: './rtf-lot-report.component.html',\r\n styleUrls: ['./rtf-lot-report.component.scss'],\r\n})\r\nexport class RtfLotReportComponent implements OnInit {\r\n @ViewChild('dataTable', { static: true })\r\n public dataTable: Table;\r\n rtf_lot_report: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'RTF_Lot_Report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"RTF_lot_report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.dataTable.filters['Fin_Year'] = [\r\n {\r\n value: this.selectedYear,\r\n matchMode: 'startsWith',\r\n operator: 'and',\r\n },\r\n ];\r\n });\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getConsolidatedLotRpt('RTF')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'RTF Lot Report',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n // this.loader.close();\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.rtf_lot_report = data;\r\n this.appVerificationModel = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.rtf_lot_report = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'RTF Lot Report',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot No': d.Lot_No,\r\n 'App ID': d.AppID,\r\n 'Application Type': d.ApplicationType,\r\n 'Program Name': d.Program_Name,\r\n 'Refund to Farmer': d.Refund_to_Farmer,\r\n 'Created Date': d.CreatedDate,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n Status: d.Status,\r\n Remarks: d.Remarks,\r\n 'Financial Year': d.Fin_Year,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'Lot_No', header: 'Lot No' },\r\n // { field: 'AppID', header: 'AppID' },\r\n // { field: 'ApplicationType', header: 'ApplicationType' },\r\n // { field: 'Program_Name', header: 'Program_Name ID' },\r\n // { field: 'Refund_to_Farmer', header: 'Refund to Farmer' },\r\n // { field: 'CreatedDate', header: 'CreatedDate' },\r\n // { field: 'PFMSPaymentDate', header: 'PFMSPaymentDate' },\r\n // { field: 'Status', header: 'Status' },\r\n // { field: 'Remarks', header: 'Remarks' },\r\n // { field: 'Fin_Year', header: 'Fin_Year' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'RTF_LOT_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'LOT_NO'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n {{'CREATED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{fsv_lot_report.Lot_No}}\r\n {{fsv_lot_report.AppID}}\r\n {{fsv_lot_report.ApplicationType}}\r\n {{fsv_lot_report.Program_Name}}\r\n {{fsv_lot_report.Refund_to_Farmer}}\r\n {{fsv_lot_report.CreatedDate | date:'mediumDate' }}\r\n {{fsv_lot_report.PFMSPaymentDate | date:'mediumDate' }}\r\n {{fsv_lot_report.Status}}\r\n {{fsv_lot_report.Remarks}}\r\n {{fsv_lot_report.Fin_Year}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-stage1-lot-report',\r\n templateUrl: './stage1-lot-report.component.html',\r\n styleUrls: ['./stage1-lot-report.component.scss'],\r\n})\r\nexport class Stage1LotReportComponent implements OnInit {\r\n @ViewChild('dataTable', { static: true })\r\n public dataTable: Table;\r\n stf_lot_report: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'STG1_Lot_Report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"STF_lot_report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.dataTable.filters['Fin_Year'] = [\r\n {\r\n value: this.selectedYear,\r\n matchMode: 'startsWith',\r\n operator: 'and',\r\n },\r\n ];\r\n });\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getConsolidatedLotRpt('STG1')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Stage-1 Lot Report',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.stf_lot_report = data;\r\n this.appVerificationModel = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.stf_lot_report = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Stage-1 Lot Report',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot_No': d.Lot_No,\r\n 'Application Id': d.AppID,\r\n 'Subsidy Amount': d.Subsidy_Amt,\r\n 'Center Share Amount': d.CenterShare_Amount,\r\n 'State Share Amount': d.StateShare_Amount,\r\n 'Topup Amount': d.Topup,\r\n 'ABY Amount': d.ABY,\r\n 'Created Date': d.CreatedDate,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n 'Financial Year': d.Fin_Year\r\n\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'Lot_No', header: 'Lot No' },\r\n // { field: 'AppID', header: 'AppID' },\r\n // { field: 'ApplicationType', header: 'ApplicationType' },\r\n // { field: 'Program_Name', header: 'Program_Name ID' },\r\n // { field: 'Subsidy_Amt_Farmer', header: 'Subsidy_Amt_Farmer' },\r\n // { field: 'Centre_share_amt', header: 'Centre_share_amt' },\r\n // { field: 'State_share_amt', header: 'State_share_amt' },\r\n // { field: 'CreatedDate', header: 'CreatedDate' },\r\n // { field: 'PFMSPaymentDate', header: 'PFMSPaymentDate' },\r\n // { field: 'Status', header: 'Status' },\r\n // { field: 'Remarks', header: 'Remarks' },\r\n // { field: 'Fin_Year', header: 'Fin_Year' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{ \"TANK_STAGE1_LOT_REPORT\" | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ \"LOT_NO\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"APP_ID\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"SUBSIDY_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CENTER_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATE_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"TOP_UP_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"ABY_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CREATED_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"PFMS_PAYMENT_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"TOP_UP_PFMS_PAYMENT_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATUS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"REMARKS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"FINANCIAL_YEAR\" | translate }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ lot_report?.Lot_No }}\r\n {{ lot_report?.AppID }}\r\n {{ lot_report?.Subsidy_Amt }}\r\n {{ lot_report?.CenterShare_Amount }}\r\n {{ lot_report?.StateShare_Amount }}\r\n {{ lot_report?.Topup }}\r\n {{ lot_report?.ABY }}\r\n {{ lot_report?.CreatedDate | date : \"mediumDate\" }}\r\n {{ lot_report?.PFMSPaymentDate | date : \"mediumDate\" }}\r\n {{ lot_report?.TopUpPFMSPaymentDate | date : \"mediumDate\" }}\r\n {{ lot_report?.Status }}\r\n {{ lot_report?.Remarks }}\r\n {{ lot_report?.Fin_Year }}\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-stage2-lot-report',\r\n templateUrl: './stage2-lot-report.component.html',\r\n styleUrls: ['./stage2-lot-report.component.scss']\r\n})\r\nexport class Stage2LotReportComponent implements OnInit {\r\n @ViewChild('dataTable', { static: true })\r\n public dataTable: Table;\r\n stf_lot_report: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'STG2_Lot_Report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"STF_lot_report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.dataTable.filters['Fin_Year'] = [\r\n {\r\n value: this.selectedYear,\r\n matchMode: 'startsWith',\r\n operator: 'and',\r\n },\r\n ];\r\n });\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getConsolidatedLotRpt('STG2')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Stage-2 Lot Report',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.stf_lot_report = data;\r\n this.appVerificationModel = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.stf_lot_report = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Stage-2 Lot Report',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot_No': d.Lot_No,\r\n 'Application Id': d.AppID,\r\n 'Subsidy Amount': d.Subsidy_Amt,\r\n 'Center Share Amount': d.CenterShare_Amount,\r\n 'State Share Amount': d.StateShare_Amount,\r\n 'Topup Amount': d.Topup,\r\n 'ABY Amount': d.ABY,\r\n 'Created Date': d.CreatedDate,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n 'Financial Year': d.Fin_Year\r\n\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'Lot_No', header: 'Lot No' },\r\n // { field: 'AppID', header: 'AppID' },\r\n // { field: 'ApplicationType', header: 'ApplicationType' },\r\n // { field: 'Program_Name', header: 'Program_Name ID' },\r\n // { field: 'Subsidy_Amt_Farmer', header: 'Subsidy_Amt_Farmer' },\r\n // { field: 'Centre_share_amt', header: 'Centre_share_amt' },\r\n // { field: 'State_share_amt', header: 'State_share_amt' },\r\n // { field: 'CreatedDate', header: 'CreatedDate' },\r\n // { field: 'PFMSPaymentDate', header: 'PFMSPaymentDate' },\r\n // { field: 'Status', header: 'Status' },\r\n // { field: 'Remarks', header: 'Remarks' },\r\n // { field: 'Fin_Year', header: 'Fin_Year' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{ \"TANK_STAGE2_LOT_REPORT\" | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ \"LOT_NO\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"APP_ID\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"SUBSIDY_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CENTER_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATE_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"TOP_UP_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"ABY_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CREATED_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"PFMS_PAYMENT_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"TOP_UP_PFMS_PAYMENT_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATUS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"REMARKS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"FINANCIAL_YEAR\" | translate }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ lot_report?.Lot_No }}\r\n {{ lot_report?.AppID }}\r\n {{ lot_report?.Subsidy_Amt }}\r\n {{ lot_report?.CenterShare_Amount }}\r\n {{ lot_report?.StateShare_Amount }}\r\n {{ lot_report?.Topup }}\r\n {{ lot_report?.ABY }}\r\n {{ lot_report?.CreatedDate | date : \"mediumDate\" }}\r\n {{ lot_report?.PFMSPaymentDate | date : \"mediumDate\" }}\r\n {{ lot_report?.TopUpPFMSPaymentDate | date : \"mediumDate\" }}\r\n {{ lot_report?.Status }}\r\n {{ lot_report?.Remarks }}\r\n {{ lot_report?.Fin_Year }}\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-stage3-lot-report',\r\n templateUrl: './stage3-lot-report.component.html',\r\n styleUrls: ['./stage3-lot-report.component.scss']\r\n})\r\nexport class Stage3LotReportComponent implements OnInit {\r\n @ViewChild('dataTable', { static: true })\r\n public dataTable: Table;\r\n stf_lot_report: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'STG3_Lot_Report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"STF_lot_report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.dataTable.filters['Fin_Year'] = [\r\n {\r\n value: this.selectedYear,\r\n matchMode: 'startsWith',\r\n operator: 'and',\r\n },\r\n ];\r\n });\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getConsolidatedLotRpt('STG3')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Stage-3 Lot Report',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.stf_lot_report = data;\r\n this.appVerificationModel = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.stf_lot_report = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Stage-3 Lot Report',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot_No': d.Lot_No,\r\n 'Application Id': d.AppID,\r\n 'Subsidy Amount': d.Subsidy_Amt,\r\n 'Center Share Amount': d.CenterShare_Amount,\r\n 'State Share Amount': d.StateShare_Amount,\r\n 'Topup Amount': d.Topup,\r\n 'ABY Amount': d.ABY,\r\n 'Created Date': d.CreatedDate,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n 'Top Up PFMS Payment Date': d.TopUpPFMSPaymentDate,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n 'Financial Year': d.Fin_Year\r\n\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'Lot_No', header: 'Lot No' },\r\n // { field: 'AppID', header: 'AppID' },\r\n // { field: 'ApplicationType', header: 'ApplicationType' },\r\n // { field: 'Program_Name', header: 'Program_Name ID' },\r\n // { field: 'Subsidy_Amt_Farmer', header: 'Subsidy_Amt_Farmer' },\r\n // { field: 'Centre_share_amt', header: 'Centre_share_amt' },\r\n // { field: 'State_share_amt', header: 'State_share_amt' },\r\n // { field: 'CreatedDate', header: 'CreatedDate' },\r\n // { field: 'PFMSPaymentDate', header: 'PFMSPaymentDate' },\r\n // { field: 'Status', header: 'Status' },\r\n // { field: 'Remarks', header: 'Remarks' },\r\n // { field: 'Fin_Year', header: 'Fin_Year' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{ \"TANK_STAGE3_LOT_REPORT\" | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ \"LOT_NO\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"APP_ID\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"SUBSIDY_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CENTER_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATE_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"TOP_UP_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"ABY_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CREATED_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"PFMS_PAYMENT_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"TOP_UP_PFMS_PAYMENT_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATUS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"REMARKS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"FINANCIAL_YEAR\" | translate }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ lot_report?.Lot_No }}\r\n {{ lot_report?.AppID }}\r\n {{ lot_report?.Subsidy_Amt }}\r\n {{ lot_report?.CenterShare_Amount }}\r\n {{ lot_report?.StateShare_Amount }}\r\n {{ lot_report?.Topup }}\r\n {{ lot_report?.ABY }}\r\n {{ lot_report?.CreatedDate | date : \"mediumDate\" }}\r\n {{ lot_report?.PFMSPaymentDate | date : \"mediumDate\" }}\r\n {{ lot_report?.TopUpPFMSPaymentDate | date : \"mediumDate\" }}\r\n {{ lot_report?.Status }}\r\n {{ lot_report?.Remarks }}\r\n {{ lot_report?.Fin_Year }}\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stf-lot-report',\r\n templateUrl: './stf-lot-report.component.html',\r\n styleUrls: ['./stf-lot-report.component.scss'],\r\n})\r\nexport class StfLotReportComponent implements OnInit {\r\n @ViewChild('dataTable', { static: true })\r\n public dataTable: Table;\r\n stf_lot_report: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'STF_Lot_Report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"STF_lot_report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.dataTable.filters['Fin_Year'] = [\r\n {\r\n value: this.selectedYear,\r\n matchMode: 'startsWith',\r\n operator: 'and',\r\n },\r\n ];\r\n });\r\n }\r\n\r\n loadData() {\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getConsolidatedLotRpt('STF')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'STF Lot Report',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.stf_lot_report = data;\r\n this.appVerificationModel = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.stf_lot_report = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'STF Lot Report',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot No': d.Lot_No,\r\n 'Application Id': d.AppID,\r\n 'Application Type': d.ApplicationType,\r\n 'Program Name': d.Program_Name,\r\n 'Subsidy Amt_Farmer': d.Subsidy_Amt_Farmer,\r\n 'Centre Share Amount': d.Centre_share_amt,\r\n 'State Share Amount': d.State_share_amt,\r\n 'Created Date': d.CreatedDate,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n 'Financial Year': d.Fin_Year,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'Lot_No', header: 'Lot No' },\r\n // { field: 'AppID', header: 'AppID' },\r\n // { field: 'ApplicationType', header: 'ApplicationType' },\r\n // { field: 'Program_Name', header: 'Program_Name ID' },\r\n // { field: 'Subsidy_Amt_Farmer', header: 'Subsidy_Amt_Farmer' },\r\n // { field: 'Centre_share_amt', header: 'Centre_share_amt' },\r\n // { field: 'State_share_amt', header: 'State_share_amt' },\r\n // { field: 'CreatedDate', header: 'CreatedDate' },\r\n // { field: 'PFMSPaymentDate', header: 'PFMSPaymentDate' },\r\n // { field: 'Status', header: 'Status' },\r\n // { field: 'Remarks', header: 'Remarks' },\r\n // { field: 'Fin_Year', header: 'Fin_Year' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'STF_LOT_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'LOT_NO'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_AMT_FARMER'| translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'STATE_SHARE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'CREATED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'PFMS_PAYMENT_DATE'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{fsv_lot_report?.Lot_No}}\r\n {{fsv_lot_report?.AppID}}\r\n {{fsv_lot_report?.ApplicationType}}\r\n {{fsv_lot_report?.Program_Name}}\r\n {{fsv_lot_report?.Subsidy_Amt_Farmer}}\r\n {{fsv_lot_report?.Centre_share_amt}}\r\n {{fsv_lot_report?.State_share_amt}}\r\n {{fsv_lot_report?.CreatedDate | date:'mediumDate'}}\r\n {{fsv_lot_report?.PFMSPaymentDate | date:'mediumDate' }}\r\n {{fsv_lot_report?.Status}}\r\n {{fsv_lot_report?.Remarks}}\r\n {{fsv_lot_report?.Fin_Year}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stv-lot-report',\r\n templateUrl: './stv-lot-report.component.html',\r\n styleUrls: ['./stv-lot-report.component.scss'],\r\n})\r\nexport class StvLotReportComponent implements OnInit {\r\n @ViewChild('dataTable', { static: true })\r\n public dataTable: Table;\r\n fsv_lot_report: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'FSV_Lot_Report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, 'FSV_lot_report');\r\n // },\r\n // },\r\n ];\r\n\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n }\r\n\r\n this.subjectSub = this.service\r\n .getSelectedYear()\r\n .pipe(shareReplay())\r\n .subscribe((res) => {\r\n this.selectedYear = res;\r\n this.loadData();\r\n this.dataTable.filters['Fin_Year'] = [\r\n {\r\n value: this.selectedYear,\r\n matchMode: 'startsWith',\r\n operator: 'and',\r\n },\r\n ];\r\n });\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getConsolidatedLotRpt('STV')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'STV Lot Report',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.fsv_lot_report = data;\r\n this.appVerificationModel = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.fsv_lot_report = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'STV Lot Report',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Lot No': d.Lot_No,\r\n 'Application Id': d.AppID,\r\n 'Application Type': d.ApplicationType,\r\n 'Program Name': d.Program_Name,\r\n 'Centre Share Amount': d.Centre_share_amt,\r\n 'State Share Amount': d.State_share_amt,\r\n 'Subsidy To Vendor': d.Subsidy_to_Vendor,\r\n 'Created Date': d.CreatedDate,\r\n 'PFMS Payment Date': d.PFMSPaymentDate,\r\n 'Status': d.Status,\r\n 'Remarks': d.Remarks,\r\n 'Financial Year': d.Fin_Year,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'District', header: 'District' },\r\n // { field: 'Block', header: 'Block' },\r\n // { field: 'Village', header: 'Village' },\r\n // { field: 'AppID', header: 'App ID' },\r\n // { field: 'farmerName', header: 'Farmer Name' },\r\n // { field: 'Adm_Amount', header: 'Adm Amount' },\r\n // { field: 'farmer_Mobile', header: 'Farmer Mobile' },\r\n // { field: 'Approval_Date', header: 'Approval Date' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{ \"STV_LOT_REPORT\" | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ \"LOT_NO\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"APP_ID\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"APPLICATION_TYPE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"PROGRAM_NAME\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CENTER_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATE_SHARE_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"SUBSIDY_TO_VENDOR_AMOUNT\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"CREATED_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"PFMS_PAYMENT_DATE\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"STATUS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"REMARKS\" | translate }}\r\n \r\n \r\n \r\n \r\n {{ \"FINANCIAL_YEAR\" | translate }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ fsv_lot_report?.Lot_No }}\r\n {{ fsv_lot_report?.AppID }}\r\n {{ fsv_lot_report?.ApplicationType }}\r\n {{ fsv_lot_report?.Program_Name }}\r\n {{ fsv_lot_report?.Centre_share_amt }}\r\n {{ fsv_lot_report?.State_share_amt }}\r\n {{ fsv_lot_report?.Subsidy_to_Vendor }}\r\n {{ fsv_lot_report?.CreatedDate | date : \"mediumDate\" }}\r\n {{ fsv_lot_report?.PFMSPaymentDate | date : \"mediumDate\" }}\r\n {{ fsv_lot_report?.Status }}\r\n {{ fsv_lot_report?.Remarks }}\r\n {{ fsv_lot_report?.Fin_Year }}\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { MiVerificationSubsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-mi-verification-subsidy-report',\r\n templateUrl: './mi-verification-subsidy-report.component.html',\r\n styleUrls: ['./mi-verification-subsidy-report.component.scss']\r\n})\r\nexport class MiVerificationSubsidyReportComponent implements OnInit {\r\n\r\n miVerfSubsidy: any[];\r\n totalArea:number;\r\n estAmount:number;\r\n boqAmount:number;\r\n pvaAmount:number;\r\n grandTotalArea:number;\r\n grandEstAmount:number;\r\n grandBoqAmount:number;\r\n grandPvaAmount:number;\r\n arrayIndex:number;\r\n tempMiVerfSubsidy: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: MiVerificationSubsidy[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_MI_Area_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_MI_Area_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getMiVerificationSubsidy_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'MI Verification Subsidy Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.miVerfSubsidy = data;\r\n this.appVerificationModel = data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.miVerfSubsidy = [];\r\n this.appVerificationModel = [];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'MI Verification Subsidy Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"Constituency\": d.Constituency,\r\n \"Village\": d.Village,\r\n \"Application No\": d.Application_No,\r\n \"Farmer Name\": d.farmerName,\r\n \"Father Name\": d.Father_name,\r\n \"Programme Name\": d.ProgrammeName,\r\n \"Total Area\": d.TotalArea,\r\n \"Estimate Amount\": d.EstimateAmount,\r\n \"BOQ Amount\": d.BOQAmount,\r\n \"PV Amount\": d.PVAmount,\r\n \"verification date\": d.verification_date,\r\n \"Mobile\": d.Mobile,\r\n \"Vendor Name\": d.VendorName,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Village', header: 'Village' },\r\n {field: 'Application_No', header: 'Application No'},\r\n {field: 'farmerName', header: 'Farmer Name'},\r\n {field: 'Father_name', header: 'Father Name'},\r\n {field: 'ProgrammeName', header: 'Programme Name'},\r\n {field: 'TotalArea', header: 'Total Area'},\r\n {field: 'EstimateAmount', header: 'Estimate Amount'},\r\n {field: 'BOQAmount', header: 'BOQ Amount'},\r\n {field: 'PVAmount', header: 'PV Amount'},\r\n {field: 'verification_date', header: 'verification date'},\r\n {field: 'Mobile', header: 'Mobile'},\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMiVerfSubsidy=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n // console.log(event);\r\n }\r\n calculateTotalApp() {\r\n this.totalArea=0;\r\n this.estAmount=0;\r\n this.boqAmount=0;\r\n this.pvaAmount=0; \r\n for(let i=this.arrayIndex ;this.tempMiVerfSubsidy.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MI_VERIFICATION_SUBSIDY_REPORT' | translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_NO'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FATHER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'BOQ_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'PV_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'VERIFICATION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'MOBILE'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {{miVerfSubsidy.District}}\r\n {{miVerfSubsidy.Block}}\r\n {{miVerfSubsidy.Constituency}}\r\n {{miVerfSubsidy.Village}}\r\n {{miVerfSubsidy.Application_No}}\r\n {{miVerfSubsidy.farmerName}}\r\n {{miVerfSubsidy.Father_name}}\r\n {{miVerfSubsidy.ProgrammeName}}\r\n {{miVerfSubsidy.TotalArea}}\r\n {{miVerfSubsidy.EstimateAmount}}\r\n {{miVerfSubsidy.BOQAmount}}\r\n {{miVerfSubsidy.PVAmount}}\r\n {{miVerfSubsidy.verification_Date}}\r\n {{miVerfSubsidy.Mobile}}\r\n {{miVerfSubsidy.VendorName}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{totalArea | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{boqAmount | number:'1.0-2'}}\r\n {{pvaAmount | number:'1.0-2'}}\r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{grandTotalArea | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandBoqAmount | number:'1.0-2'}}\r\n {{grandPvaAmount | number:'1.0-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { PhysicalVerificationDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-physical-verification-district-wise-report',\r\n templateUrl: './physical-verification-district-wise-report.component.html',\r\n styleUrls: ['./physical-verification-district-wise-report.component.scss']\r\n})\r\nexport class PhysicalVerificationDistrictWiseReportComponent implements OnInit {\r\n value:any;\r\n districtWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n rejectedApp:number;\r\n pvAmount:number;\r\n pvArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRejectedApp:number;\r\n grandPvAmount:number;\r\n grandPvArea:number;\r\n arrayIndex:number;\r\n tempDistrictWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: PhysicalVerificationDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n approved_return:any;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getPhysicalVerification_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (District Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this.tempDistrictWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise =[] ;\r\n this.appVerificationModel =[] ;\r\n this.tempDistrictWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\" : d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\" : d.RejectedApplication,\r\n \"PV Amount\" : d.PVAmount,\r\n \"PV Area\" : d.PVArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n {field: 'ReturnProcessApplication', header: 'ReturnProcessApplication'},\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n {field: 'RejectedApplication', header: 'Rejected Application'},\r\n {field: 'PVAmount', header: 'PV Amount'},\r\n {field: 'PVArea', header: 'PV Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempDistrictWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.rejectedApp=0;\r\n this.pvAmount=0;\r\n this.pvArea=0;\r\n for(let i=this.arrayIndex ;this.tempDistrictWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PV_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'PV_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.Block}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.VerifiedApplication}}\r\n {{districtWise.ReturnProcessApplication}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.RejectedApplication}}\r\n {{districtWise.PVAmount}}\r\n {{districtWise.PVArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{rejectedApp | number:'1.0-2'}}\r\n {{pvAmount | number:'1.0-2'}}\r\n {{pvArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRejectedApp | number:'1.0-2'}}\r\n {{grandPvAmount | number:'1.0-2'}}\r\n {{grandPvArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { PhysicalVerificationMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-physical-verification-month-wise-report',\r\n templateUrl: './physical-verification-month-wise-report.component.html',\r\n styleUrls: ['./physical-verification-month-wise-report.component.scss']\r\n})\r\nexport class PhysicalVerificationMonthWiseReportComponent implements OnInit {\r\n value:any;\r\n monthWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n rejectedApp:number;\r\n pvAmount:number;\r\n pvArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRejectedApp:number;\r\n grandPvAmount:number;\r\n grandPvArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: PhysicalVerificationMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n drilldownDetails:any;\r\n approved_return:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getPhysicalVerification_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (Month Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data;\r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise =[] ;\r\n this.appVerificationModel = [];\r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Week\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"PV Amount\": d.PVAmount,\r\n \"PV Area\": d.PVArea,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'PVAmount', header: 'PV Amount' },\r\n { field: 'PVArea', header: 'PVA rea' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.rejectedApp=0;\r\n this.pvAmount=0;\r\n this.pvArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PV_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'PV_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.VerifiedApplication}}\r\n {{monthWise.ReturnProcessApplication}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.RejectedApplication}}\r\n {{monthWise.PVAmount}}\r\n {{monthWise.PVArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{rejectedApp | number:'1.0-2'}}\r\n {{pvAmount | number:'1.0-2'}}\r\n {{pvArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRejectedApp | number:'1.0-2'}}\r\n {{grandPvAmount | number:'1.0-2'}}\r\n {{grandPvArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-physical-verification-report',\r\n templateUrl: './physical-verification-report.component.html',\r\n styleUrls: ['./physical-verification-report.component.scss']\r\n})\r\nexport class PhysicalVerificationReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/physical-verification/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/physical-verification/district-wise` },\r\n { label: 'User Wise', routerLink: `/${parentRoute}/report/physical-verification/user-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/physical-verification/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { PhysicalVerificationUserWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-physical-verification-user-wise-report',\r\n templateUrl: './physical-verification-user-wise-report.component.html',\r\n styleUrls: ['./physical-verification-user-wise-report.component.scss']\r\n})\r\nexport class PhysicalVerificationUserWiseReportComponent implements OnInit {\r\n value:any;\r\n userWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n rejectedApp:number;\r\n pvAmount:number;\r\n pvArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRejectedApp:number;\r\n grandPvAmount:number;\r\n grandPvArea:number;\r\n arrayIndex:number;\r\n tempUserWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: PhysicalVerificationUserWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n approved_return:any;\r\n drilldownDetails:any;\r\n userName:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getPhysicalVerification_UserWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (User Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.userWise = data;\r\n this.appVerificationModel = data;\r\n this.tempUserWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.userWise = [];\r\n this.appVerificationModel =[] ;\r\n this.tempUserWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (User Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"User ID\" : d.UserID,\r\n \"Level ID\" : d.Level_ID,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"PV Amount\": d.PVAmount,\r\n \"PV Area\": d.PVArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'UserID', header: 'User ID'},\r\n {field: 'Level_ID', header: 'Level ID'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'PVAmount', header: 'PV Amount' },\r\n { field: 'PVArea', header: 'PV Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempUserWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.rejectedApp=0;\r\n this.pvAmount=0;\r\n this.pvArea=0;\r\n for(let i=this.arrayIndex ;this.tempUserWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'USER_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PV_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'PV_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{userWise.UserID}}\r\n {{userWise.Level_ID}}\r\n {{userWise.TotalApplication}}\r\n {{userWise.VerifiedApplication}}\r\n {{userWise.ReturnProcessApplication}}\r\n {{userWise.PendingEarly}}\r\n {{userWise.Pending_1Week}}\r\n {{userWise.Pending_Morethan_1Weeks}}\r\n {{userWise.RejectedApplication}}\r\n {{userWise.PVAmount}}\r\n {{userWise.PVArea}} \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { PhysicalVerificationVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-physical-verification-vendor-wise-report',\r\n templateUrl: './physical-verification-vendor-wise-report.component.html',\r\n styleUrls: ['./physical-verification-vendor-wise-report.component.scss']\r\n})\r\nexport class PhysicalVerificationVendorWiseReportComponent implements OnInit {\r\n\r\n vendorWise: any[];\r\n totalApp:number;\r\n verfApp:number;\r\n returnProcessApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n rejectedApp:number;\r\n pvAmount:number;\r\n pvArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandReturnProcessApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandRejectedApp:number;\r\n grandPvAmount:number;\r\n grandPvArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: PhysicalVerificationVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n value:any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n displayMaximizable_rejectedApp:boolean;\r\n drilldownDetails:any;\r\n vendorName:any;\r\n approved_return:any;\r\n pendingType:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getPhysicalVerification_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (Vendor Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise = [];\r\n this.appVerificationModel = [];\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Physical Verification Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"Return Process Application\": d.ReturnProcessApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending_Morethan_1Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Rejected Application\": d.RejectedApplication,\r\n \"PV Amount\": d.PVAmount,\r\n \"PV Area\": d.PVArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'PVAmount', header: 'PV Amount' },\r\n { field: 'PVArea', header: 'PV Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.returnProcessApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.rejectedApp=0;\r\n this.pvAmount=0;\r\n this.pvArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'RETURN_PROCESS_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PV_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'PV_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.VerifiedApplication}}\r\n {{vendorWise.ReturnProcessApplication}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.RejectedApplication}}\r\n {{vendorWise.PVAmount}}\r\n {{vendorWise.PVArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{returnProcessApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{rejectedApp | number:'1.0-2'}}\r\n {{pvAmount | number:'1.0-2'}}\r\n {{pvArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandReturnProcessApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandRejectedApp | number:'1.0-2'}}\r\n {{grandPvAmount | number:'1.0-2'}}\r\n {{grandPvArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { VendorMiArea } from 'src/app/models/department-reports.model';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport saveAs from 'file-saver';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { Location } from '@angular/common';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\n\r\n@Component({\r\n selector: 'app-pond-consolidate-report',\r\n templateUrl: './pond-consolidate-report.component.html',\r\n styleUrls: ['./pond-consolidate-report.component.scss'],\r\n})\r\nexport class PondConsolidateReportComponent implements OnInit {\r\n consolidateData: any = [];\r\n public districtsArray: any = [];\r\n public distWiseTotalApp: any = [];\r\n public loading: boolean = false;\r\n\r\n appVerificationModel: VendorMiArea[];\r\n tempConsolidateData: any[];\r\n arrayIndex: number;\r\n\r\n totalApp: any;\r\n totalArea: any;\r\n verifiedApp: any;\r\n verifiedAppArea: any;\r\n pendingApp: any;\r\n incompleteApp: any;\r\n incompleteAppArea: any;\r\n rejectApp: any;\r\n totalEstimatedApp: any;\r\n totalEstimatedArea: any;\r\n verifiedEstimateApp: any;\r\n verifiedEstimateArea: any;\r\n pendingEstimateApp: any;\r\n verifiedEstApproved: any;\r\n verifiedEstApprovedArea: any;\r\n pendingEstApproved: any;\r\n rejectedEstVerified: any;\r\n challanGenerated: any;\r\n challanDeposited: any;\r\n BOQUploaded: any;\r\n BOQMIArea: any;\r\n BOQPending: any;\r\n PVCompleted: any;\r\n PV_MI_Area: any;\r\n PV_Pending_with_JE: any;\r\n PV_Pending_with_XEN: any;\r\n pending_Subsidy_Calculation: any;\r\n applicationswithDMIforSubsidy_Approval: any;\r\n applications_Approved_at_Administartion: any;\r\n subsisdy_Approved_MI_Area: any;\r\n assistanceAmount: any;\r\n pending_Application_For_Payment_By_CAO: any;\r\n payment_Done_Application_By_CAO: any;\r\n payment_done_MI_Area: any;\r\n\r\n grandTotalApp: any;\r\n grandTotalArea: any;\r\n grandVerifiedApp: any;\r\n grandVerifiedAppArea: any;\r\n grandPendingApp: any;\r\n grandIncompleteApp: any;\r\n grandIncompleteAppArea: any;\r\n grandRejectApp: any;\r\n grandTotalEstimatedApp: any;\r\n grandTotalEstimatedArea: any;\r\n grandVerifiedEstimateApp: any;\r\n grandVerifiedEstimateArea: any;\r\n grandPendingEstimateApp: any;\r\n grandVerifiedEstApproved: any;\r\n grandVerifiedEstApprovedArea: any;\r\n grandPendingEstApproved: any;\r\n grandRejectedEstVerified: any;\r\n grandChallanGenerated: any;\r\n grandChallanDeposited: any;\r\n grandBOQUploaded: any;\r\n grandBOQMIArea: any;\r\n grandBOQPending: any;\r\n grandPVCompleted: any;\r\n grandPV_MI_Area: any;\r\n grandPV_Pending_with_JE: any;\r\n grandPV_Pending_with_XEN: any;\r\n grandPending_Subsidy_Calculation: any;\r\n grandApplicationswithDMIforSubsidy_Approval: any;\r\n grandApplications_Approved_at_Administartion: any;\r\n grandSubsisdy_Approved_MI_Area: any;\r\n grandAssistanceAmount: any;\r\n grandPending_Application_For_Payment_By_CAO: any;\r\n grandPayment_Done_Application_By_CAO: any;\r\n grandPayment_done_MI_Area: any;\r\n\r\n public subjectSub: any;\r\n public subscriptions: any = [];\r\n public selectedYear: any;\r\n\r\n public drilldownDetails: any;\r\n public displayPendingDetailUser: boolean = false;\r\n\r\n appVerificationItems: MenuItem[];\r\n\r\n filteredVillage: any;\r\n // districtList: any = [];\r\n\r\n finYearList: any = [];\r\n selectedFinYear: any = null;\r\n constituencyList: any = [];\r\n selectedconstituency: any = null;\r\n districtList: any = [];\r\n selectedDistrict: any = null;\r\n blockList: any = [];\r\n selectedBlock: any = null;\r\n villageList: any = [];\r\n selectedVillage: any = null;\r\n\r\n cropTypeList: any = [];\r\n selectedCrop: any = null;\r\n casteList: any = [];\r\n selectedCaste: any = null;\r\n appTypeList: any = [];\r\n selectedAppType: any = null;\r\n\r\n scrollHeight: any = '130px';\r\n\r\n column1Name: any = \"District\";\r\n\r\n public cropMergeList: any;\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private service: BaseService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private location: Location,\r\n private reportService: ReportsService,\r\n private flService: FarmerLandDetailService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n // this.loadDataAndApplyFilter();\r\n // this.loadData('');\r\n this.getFinYearList();\r\n this.getDistrictList();\r\n this.getConstituencyList();\r\n this.getCasteList();\r\n this.getCorpTypeList();\r\n this.getAppTypeList();\r\n\r\n this.onClickApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'MI_Consolidate_report');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'MI_Consolidate_report'\r\n // );\r\n // },\r\n // },\r\n ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n getDistrictList() {\r\n let sub = this.reportService\r\n .getDistrictMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.districtList = data;\r\n } else {\r\n this.districtList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.districtList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'District List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getCorpTypeList() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.cropTypeList = data;\r\n\r\n let arrayCrop = [];\r\n let cropMerge = data.map((parent) => {\r\n arrayCrop.push(\r\n parent['children'].map((child) => ({\r\n ...child,\r\n parentData: parent.data,\r\n parentLabel: parent.label\r\n }))\r\n );\r\n });\r\n\r\n this.cropMergeList = [].concat(...arrayCrop);\r\n\r\n } else {\r\n this.cropTypeList = [];\r\n this.cropMergeList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.cropTypeList = [];\r\n this.cropMergeList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Crop Type List',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCasteList() {\r\n setTimeout(() => {\r\n this.casteList = [\r\n {\r\n Caste_Code: 1,\r\n Caste_Description: 'Gen'\r\n },\r\n {\r\n Caste_Code: 2,\r\n Caste_Description: 'BC'\r\n },\r\n {\r\n Caste_Code: 3,\r\n Caste_Description: 'SC'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getAppTypeList() {\r\n setTimeout(() => {\r\n this.appTypeList = [\r\n {\r\n AppType_Code: 1,\r\n AppType_Description: 'Normal'\r\n },\r\n {\r\n AppType_Code: 2,\r\n AppType_Description: 'ABY'\r\n }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getFinYearList() {\r\n let sub = this.reportService\r\n .getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.finYearList = data;\r\n } else {\r\n this.finYearList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.finYearList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Finanacial Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getConstituencyList() {\r\n let sub = this.reportService\r\n .getConsituencyMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.constituencyList = data;\r\n } else {\r\n this.constituencyList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.constituencyList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Constituency List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectConstituency() {\r\n this.selectedVillage = null;\r\n this.villageList = [];\r\n\r\n console.log(this.selectedconstituency)\r\n let constituencyCode = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let blockCode = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n this.getVillageList(blockCode, constituencyCode);\r\n }\r\n\r\n onSelectDistrict() {\r\n this.selectedBlock = null;\r\n this.blockList = [];\r\n\r\n\r\n console.log(this.selectedDistrict)\r\n let districtCode = this.selectedDistrict?.Dist_Code;\r\n this.getBlockList(districtCode);\r\n }\r\n\r\n getBlockList(districtCode) {\r\n let sub = this.reportService\r\n .getBlockMaster(districtCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.blockList = data;\r\n } else {\r\n this.blockList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.blockList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Block List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectBlock() {\r\n this.selectedVillage = null;\r\n this.villageList = [];\r\n\r\n console.log(this.selectedBlock)\r\n let constituencyCode = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let blockCode = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n this.getVillageList(blockCode, constituencyCode);\r\n }\r\n\r\n getVillageList(blockCode, conCode) {\r\n let sub = this.reportService\r\n .getVillageMasterByConsituency(blockCode, conCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.villageList = data;\r\n } else {\r\n this.villageList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.villageList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Village List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n // getVillageData(){\r\n // this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // this.villageList = res;\r\n // this.filteredVillage = [...this.villageList]\r\n\r\n // if (!window.localStorage.getItem(\"villageMaster\")) {\r\n // window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n // }\r\n // })\r\n // }\r\n\r\n // filterVillage(event: any) {\r\n // const filtered: any[] = [];\r\n // const query = event.query;\r\n // for (let i = 0; i < this.villageList.length; i++) {\r\n // const village = this.villageList[i];\r\n // if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n // filtered.push(village);\r\n // }\r\n // }\r\n\r\n // this.filteredVillage = filtered;\r\n // }\r\n\r\n // loadDataAndApplyFilter(){\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n // }\r\n\r\n // this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n // (res) => {\r\n\r\n // this.selectedYear = res;\r\n // this.loadData(this.selectedYear);\r\n // }\r\n // );\r\n // }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(reqBody) {\r\n this.loading = true;\r\n\r\n let sub = this.reportService\r\n .getPondConsolidated_Report(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n if (data?.length == 1) {\r\n this.scrollHeight = '180px';\r\n } else if (data?.length <= 5) {\r\n this.scrollHeight = '300px';\r\n } else {\r\n this.scrollHeight = '400px';\r\n }\r\n\r\n this.consolidateData = data;\r\n // console.log(this.consolidateData);\r\n this.districtsArray = this.consolidateData.map(\r\n (item) => item['District']\r\n );\r\n this.distWiseTotalApp = this.consolidateData.map(\r\n (item) => item['totalApp']\r\n );\r\n // console.log(this.districtsArray);\r\n // this.loadPieChartData();\r\n\r\n this.appVerificationModel = data;\r\n this.tempConsolidateData = data;\r\n this.arrayIndex = 0;\r\n this.calculateGrandTotal();\r\n // this.applyNewGraph1Data();\r\n this.loading = false;\r\n } else {\r\n this.scrollHeight = '130px';\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.scrollHeight = '130px';\r\n // this.loader.close();\r\n this.consolidateData = [];\r\n this.appVerificationModel = [];\r\n this.tempConsolidateData = [];\r\n this.calculateGrandTotal();\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(\r\n // this.userID,\r\n // 'MI Consolidated Report',\r\n // '',\r\n // new Date(),\r\n // err\r\n // );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n calculateGrandTotal() {\r\n this.grandTotalApp = 0;\r\n this.grandTotalArea = 0;\r\n this.grandVerifiedApp = 0;\r\n this.grandVerifiedAppArea = 0;\r\n this.grandPendingApp = 0;\r\n this.grandIncompleteApp = 0;\r\n this.grandIncompleteAppArea = 0;\r\n this.grandRejectApp = 0;\r\n this.grandTotalEstimatedApp = 0;\r\n this.grandTotalEstimatedArea = 0;\r\n this.grandVerifiedEstimateApp = 0;\r\n this.grandVerifiedEstimateArea = 0;\r\n this.grandPendingEstimateApp = 0;\r\n this.grandVerifiedEstApproved = 0;\r\n this.grandVerifiedEstApprovedArea = 0;\r\n this.grandPendingEstApproved = 0;\r\n this.grandRejectedEstVerified = 0;\r\n this.grandChallanGenerated = 0;\r\n this.grandChallanDeposited = 0;\r\n this.grandBOQUploaded = 0;\r\n this.grandBOQMIArea = 0;\r\n this.grandBOQPending = 0;\r\n this.grandPVCompleted = 0;\r\n this.grandPV_MI_Area = 0;\r\n this.grandPV_Pending_with_JE = 0;\r\n this.grandPV_Pending_with_XEN = 0;\r\n this.grandPending_Subsidy_Calculation = 0;\r\n this.grandApplicationswithDMIforSubsidy_Approval = 0;\r\n this.grandApplications_Approved_at_Administartion = 0;\r\n this.grandSubsisdy_Approved_MI_Area = 0;\r\n this.grandAssistanceAmount = 0;\r\n this.grandPending_Application_For_Payment_By_CAO = 0;\r\n this.grandPayment_Done_Application_By_CAO = 0;\r\n this.grandPayment_done_MI_Area = 0;\r\n\r\n for (let vendorData of this.tempConsolidateData) {\r\n this.grandTotalApp += vendorData.totalApp;\r\n this.grandTotalArea += vendorData.TotalArea;\r\n this.grandVerifiedApp += vendorData.VerifiedApp;\r\n this.grandVerifiedAppArea += vendorData.verifiedAppArea;\r\n this.grandPendingApp += vendorData.PendingApp;\r\n this.grandIncompleteApp += vendorData.IncompleteApp;\r\n this.grandIncompleteAppArea += vendorData.incompleteAppArea;\r\n this.grandRejectApp += vendorData.rejectApp;\r\n this.grandTotalEstimatedApp += vendorData.totalEstimatedApp;\r\n this.grandTotalEstimatedArea += vendorData.totalEstimatedArea;\r\n this.grandVerifiedEstimateApp += vendorData.verifiedEstimateApp;\r\n this.grandVerifiedEstimateArea += vendorData.verifiedEstimateArea;\r\n this.grandPendingEstimateApp += vendorData.pendingEstimateApp;\r\n this.grandVerifiedEstApproved += vendorData.verifiedEstApproved;\r\n this.grandVerifiedEstApprovedArea += vendorData.verifiedEstApprovedArea;\r\n this.grandPendingEstApproved += vendorData.pendingEstApproved;\r\n this.grandRejectedEstVerified += vendorData.rejectedEstVerified;\r\n this.grandChallanGenerated += vendorData.ChallanGenerated;\r\n this.grandChallanDeposited += vendorData.ChallanDeposited;\r\n this.grandBOQUploaded += vendorData.BOQUploaded;\r\n this.grandBOQMIArea += vendorData.BOQMIArea;\r\n this.grandBOQPending += vendorData.BOQPending;\r\n this.grandPVCompleted += vendorData.PVCompleted;\r\n this.grandPV_MI_Area += vendorData.PV_MI_Area;\r\n this.grandPV_Pending_with_JE += vendorData.PV_Pending_with_JE;\r\n this.grandPV_Pending_with_XEN += vendorData.PV_Pending_with_XEN;\r\n this.grandPending_Subsidy_Calculation +=\r\n vendorData.Pending_Subsidy_Calculation;\r\n this.grandApplicationswithDMIforSubsidy_Approval +=\r\n vendorData.ApplicationswithDMIforSubsidy_Approval;\r\n this.grandApplications_Approved_at_Administartion +=\r\n vendorData.Applications_Approved_at_Administartion;\r\n this.grandSubsisdy_Approved_MI_Area +=\r\n vendorData.Subsisdy_Approved_MI_Area;\r\n this.grandAssistanceAmount += vendorData.AssistanceAmount;\r\n this.grandPending_Application_For_Payment_By_CAO +=\r\n vendorData.Pending_Application_For_Payment_By_CAO;\r\n this.grandPayment_Done_Application_By_CAO +=\r\n vendorData.Payment_Done_Application_By_CAO;\r\n this.grandPayment_done_MI_Area += vendorData.Payment_done_MI_Area;\r\n }\r\n }\r\n\r\n showPendingDetailUserDialog(value, actionType, ...args) {\r\n // this.value = value;\r\n\r\n // console.log(value)\r\n\r\n // let finYear = this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '';\r\n // let constituency = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n // let district = this.selectedDistrict?.Dist_Code ? this.selectedDistrict?.Dist_Code : '';\r\n // let block = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n // let village = this.selectedVillage?.Vill_Code ? this.selectedVillage?.Vill_Code : '';\r\n // let crop = this.selectedCrop?.data ? this.selectedCrop?.data : 0;\r\n // let caste = this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '';\r\n // let appType = this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '';\r\n\r\n this.drilldownDetails = {\r\n ActionType: actionType,\r\n District: '',\r\n FinYear: this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '',\r\n RequestType: 'MI',\r\n ReqParam: args[0] ? args[0] : '',\r\n GeoType: this.selectedconstituency?.Vill_Code ? 'Village' : ((this.selectedBlock?.Block_Code ? 'Village' : (this.selectedDistrict?.Dist_Code ? 'Block' : 'District'))),\r\n GeoCode: value?.District_Code,\r\n Caste: this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '',\r\n CropId: this.selectedCrop?.data ? this.selectedCrop?.data : 0,\r\n userType: this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '',\r\n };\r\n\r\n this.displayPendingDetailUser = true;\r\n // console.log(this.drilldownDetails, 'this.drilldownDetails');\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n // 'Financial Year': this.selectedYear == '' ? 'All' : this.selectedYear,\r\n District: d.District,\r\n // Block: d.Block,\r\n // Constituency: d.Constituency,\r\n '': '',\r\n 'Total App(application approval)': d.totalApp,\r\n 'Total Area(application approval)': d.TotalArea,\r\n 'Verified App(application approval)': d.VerifiedApp,\r\n 'Verified App Area(application approval)': d.verifiedAppArea,\r\n 'Pending App(application approval)': d.PendingApp,\r\n 'Incomplete App Area(application approval)': d.incompleteAppArea,\r\n 'Reject App(application approval)': d.rejectApp,\r\n ' ': '',\r\n 'Total Estimated App(estimate)': d.totalEstimatedApp,\r\n 'Total Estimated Area(estimate)': d.totalEstimatedArea,\r\n 'Pending Estimate App(estimate)': d.pendingEstimateApp,\r\n ' ': ' ',\r\n 'Verified Estimate App (estimate Approval)': d.verifiedEstimateApp,\r\n 'Verified Estimate Area (estimate Approval)': d.verifiedEstimateArea,\r\n\r\n 'Verified Est Approved (estimate Approval)': d.verifiedEstApproved,\r\n 'Verified Est Approved Area (estimate Approval)':\r\n d.verifiedEstApprovedArea,\r\n 'Pending Est Approved (estimate Approval)': d.pendingEstApproved,\r\n 'Rejected Est Verified (estimate Approval)': d.rejectedEstVerified,\r\n ' ': ' ',\r\n 'Challan Generated(challan)': d.ChallanGenerated,\r\n 'Challan Deposited(challan)': d.ChallanDeposited,\r\n ' ': ' ',\r\n 'BOQ Uploaded(BOQ)': d.BOQUploaded,\r\n 'BOQ MI Area(BOQ)': d.BOQMIArea,\r\n 'BOQ Pending(BOQ)': d.BOQPending,\r\n ' ': ' ',\r\n 'PV Completed(PV)': d.PVCompleted,\r\n 'PV MI Area(PV)': d.PV_MI_Area,\r\n 'PV Pending with JE(PV)': d.PV_Pending_with_JE,\r\n 'PV Pending with XEN(PV)': d.PV_Pending_with_XEN,\r\n ' ': ' ',\r\n 'Pending Subsidy Calculation(SUBSIDY CAL)':\r\n d.Pending_Subsidy_Calculation,\r\n 'Applications with DMI for Subsidy_Approval(SUBSIDY CAL)':\r\n d.ApplicationswithDMIforSubsidy_Approval,\r\n 'Applications Approved at Administartion(SUBSIDY CAL)':\r\n d.Applications_Approved_at_Administartion,\r\n 'Subsisdy Approved MI Area(SUBSIDY CAL)': d.Subsisdy_Approved_MI_Area,\r\n 'Assistance Amount(SUBSIDY CAL)': d.AssistanceAmount,\r\n ' ': ' ',\r\n 'Pending Application For Payment By CAO(SUBSIDY )':\r\n d.Pending_Application_For_Payment_By_CAO,\r\n 'Payment Done Application By CAO(SUBSIDY )':\r\n d.Payment_Done_Application_By_CAO,\r\n 'Payment done MI Area(SUBSIDY )': d.Payment_done_MI_Area,\r\n };\r\n });\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onPage(event: any) {\r\n this.arrayIndex = event.first;\r\n this.calculateTotalApp();\r\n }\r\n calculateTotalApp() {\r\n this.totalApp = 0;\r\n this.totalArea = 0;\r\n this.incompleteAppArea = 0;\r\n this.verifiedApp = 0;\r\n this.verifiedAppArea = 0;\r\n this.pendingApp = 0;\r\n this.incompleteApp = 0;\r\n this.incompleteAppArea = 0;\r\n this.rejectApp = 0;\r\n this.totalEstimatedApp = 0;\r\n this.totalEstimatedArea = 0;\r\n this.verifiedEstimateApp = 0;\r\n this.verifiedEstimateArea = 0;\r\n this.pendingEstimateApp = 0;\r\n this.verifiedEstApproved = 0;\r\n this.verifiedEstApprovedArea = 0;\r\n this.pendingEstApproved = 0;\r\n this.rejectedEstVerified = 0;\r\n this.challanGenerated = 0;\r\n this.challanDeposited = 0;\r\n this.BOQUploaded = 0;\r\n this.BOQMIArea = 0;\r\n this.BOQPending = 0;\r\n this.PVCompleted = 0;\r\n this.PV_MI_Area = 0;\r\n this.PV_Pending_with_JE = 0;\r\n this.PV_Pending_with_XEN = 0;\r\n this.pending_Subsidy_Calculation = 0;\r\n this.applicationswithDMIforSubsidy_Approval = 0;\r\n this.applications_Approved_at_Administartion = 0;\r\n this.subsisdy_Approved_MI_Area = 0;\r\n this.assistanceAmount = 0;\r\n this.pending_Application_For_Payment_By_CAO = 0;\r\n this.payment_Done_Application_By_CAO = 0;\r\n this.payment_done_MI_Area = 0;\r\n for (\r\n let i = this.arrayIndex;\r\n this.tempConsolidateData.length > 10\r\n ? i < this.arrayIndex + 10\r\n : i < this.tempConsolidateData.length;\r\n i++\r\n ) {\r\n this.totalApp += this.tempConsolidateData[i].totalApp;\r\n this.totalArea += this.tempConsolidateData[i].TotalArea;\r\n this.verifiedApp += this.tempConsolidateData[i].VerifiedApp;\r\n this.verifiedAppArea += this.tempConsolidateData[i].verifiedAppArea;\r\n this.pendingApp += this.tempConsolidateData[i].PendingApp;\r\n this.incompleteApp += this.tempConsolidateData[i].IncompleteApp;\r\n this.incompleteAppArea += this.tempConsolidateData[i].incompleteAppArea;\r\n this.rejectApp += this.tempConsolidateData[i].rejectApp;\r\n this.totalEstimatedApp += this.tempConsolidateData[i].totalEstimatedApp;\r\n this.totalEstimatedArea += this.tempConsolidateData[i].totalEstimatedArea;\r\n this.verifiedEstimateApp +=\r\n this.tempConsolidateData[i].verifiedEstimateApp;\r\n this.verifiedEstimateArea +=\r\n this.tempConsolidateData[i].verifiedEstimateArea;\r\n this.pendingEstimateApp += this.tempConsolidateData[i].pendingEstimateApp;\r\n this.verifiedEstApproved +=\r\n this.tempConsolidateData[i].verifiedEstApproved;\r\n this.verifiedEstApprovedArea +=\r\n this.tempConsolidateData[i].verifiedEstApprovedArea;\r\n this.pendingEstApproved += this.tempConsolidateData[i].pendingEstApproved;\r\n this.rejectedEstVerified +=\r\n this.tempConsolidateData[i].rejectedEstVerified;\r\n this.challanGenerated += this.tempConsolidateData[i].ChallanGenerated;\r\n this.challanDeposited += this.tempConsolidateData[i].ChallanDeposited;\r\n this.BOQUploaded += this.tempConsolidateData[i].BOQUploaded;\r\n this.BOQMIArea += this.tempConsolidateData[i].BOQMIArea;\r\n this.BOQPending += this.tempConsolidateData[i].BOQPending;\r\n this.PVCompleted += this.tempConsolidateData[i].PVCompleted;\r\n this.PV_MI_Area += this.tempConsolidateData[i].PV_MI_Area;\r\n this.PV_Pending_with_JE += this.tempConsolidateData[i].PV_Pending_with_JE;\r\n this.PV_Pending_with_XEN +=\r\n this.tempConsolidateData[i].PV_Pending_with_XEN;\r\n this.pending_Subsidy_Calculation +=\r\n this.tempConsolidateData[i].Pending_Subsidy_Calculation;\r\n this.applicationswithDMIforSubsidy_Approval +=\r\n this.tempConsolidateData[i].ApplicationswithDMIforSubsidy_Approval;\r\n this.applications_Approved_at_Administartion +=\r\n this.tempConsolidateData[i].Applications_Approved_at_Administartion;\r\n this.subsisdy_Approved_MI_Area +=\r\n this.tempConsolidateData[i].Subsisdy_Approved_MI_Area;\r\n this.assistanceAmount += this.tempConsolidateData[i].AssistanceAmount;\r\n this.pending_Application_For_Payment_By_CAO +=\r\n this.tempConsolidateData[i].Pending_Application_For_Payment_By_CAO;\r\n this.payment_Done_Application_By_CAO +=\r\n this.tempConsolidateData[i].Payment_Done_Application_By_CAO;\r\n this.payment_done_MI_Area +=\r\n this.tempConsolidateData[i].Payment_done_MI_Area;\r\n }\r\n // this.verfAppArea= this.verfAppArea.toFixed(4);\r\n }\r\n\r\n tableDataFunction(event: any) {\r\n this.tempConsolidateData = event.filteredValue;\r\n this.arrayIndex = 0;\r\n this.calculateTotalApp();\r\n }\r\n\r\n onClickBack() {\r\n this.location.back();\r\n }\r\n\r\n onClickApplyFilter() {\r\n let finYear = this.selectedFinYear?.FinancialYears ? this.selectedFinYear.FinancialYears : '';\r\n let constituency = this.selectedconstituency?.Constituency_Code ? this.selectedconstituency?.Constituency_Code : '';\r\n let district = this.selectedDistrict?.Dist_Code ? this.selectedDistrict?.Dist_Code : '';\r\n let block = this.selectedBlock?.Block_Code ? this.selectedBlock?.Block_Code : '';\r\n let village = this.selectedVillage?.Vill_Code ? this.selectedVillage?.Vill_Code : '';\r\n let crop = this.selectedCrop?.data ? this.selectedCrop?.data : 0;\r\n let caste = this.selectedCaste?.Caste_Description ? this.selectedCaste?.Caste_Description : '';\r\n let appType = this.selectedAppType?.AppType_Description ? this.selectedAppType?.AppType_Description : '';\r\n\r\n let reqBody = {\r\n \"financialYear\": finYear,\r\n \"constituency\": constituency,\r\n \"district\": district,\r\n \"block\": block,\r\n \"village\": village,\r\n \"cropid\": crop,\r\n \"caste\": caste,\r\n \"isABY\": appType\r\n }\r\n\r\n if (constituency && district == '') {\r\n this.column1Name = \"Village\";\r\n } else if (constituency == '' && district && block == '') {\r\n this.column1Name = \"Block\";\r\n } else if ((constituency && district) || (district && block) || (constituency && district && block)) {\r\n this.column1Name = \"Village\";\r\n } else {\r\n this.column1Name = \"District\";\r\n }\r\n\r\n this.loadData(reqBody);\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'VendorName', header: 'Vendor Name' },\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'ReturnProcessApplication', header: 'Return Process Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'RejectedApplication', header: 'Rejected Application' },\r\n { field: 'MIArea', header: 'Mi Area' },\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n}","\r\n
\r\n
\r\n
\r\n {{'POND_CONSOLIDATED_REPORT_DETAILS'| translate}}\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{ column1Name }}\r\n \r\n {{'TOTAL_APP'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n {{'VERIFIED_APP'| translate}}\r\n {{'VERIFIED_APP_AREA'| translate}}\r\n \r\n {{'INCOMPLETE_APP'| translate}}\r\n {{'INCOMPLETE_APP_AREA'| translate}}\r\n {{'REJECTED_APP'| translate}}\r\n\r\n \r\n\r\n {{'Total Intimation Stage 1'| translate}}\r\n {{'Verified Intimation Stage1'| translate}}\r\n {{'verified intimation stage1 area'| translate}}\r\n {{'pending intimation stage1'| translate}} \r\n {{'total PV stage1'| translate}}\r\n {{'total PV stage1 Area'| translate}}\r\n {{'verified PV stage1'| translate}}\r\n {{'verified PV stage1 Area'| translate}}\r\n {{'pending PV stage1'| translate}}\r\n {{'rejected PV stage1'| translate}}\r\n\r\n {{'total subsidy calc stage1'| translate}}\r\n {{'total subsidy calc stage1 Area'| translate}}\r\n {{'verified subsidy calc stage1'| translate}}\r\n {{'verified subsidy calc stage1 Area'| translate}}\r\n {{'pending subsidy calc stage1'| translate}}\r\n {{'rejected subsidy calc stage1'| translate}}\r\n\r\n {{'total lot generated stage1'| translate}}\r\n {{'verified lot generated stage1'| translate}}\r\n {{'verified lot generated stage1 centershare'| translate}}\r\n {{'verified lot generated stage1 stateshare'| translate}}\r\n {{'pending lot generated stage1'| translate}}\r\n\r\n {{'total subsidy disbursal stage1'| translate}}\r\n {{'verified subsidy disbursal stage1'| translate}}\r\n {{'verified subsidy disbursal stage1 centershare'| translate}}\r\n {{'verified subsidy disbursal stage1 stateshare'| translate}}\r\n {{'pending subsidy disbursal stage1'| translate}}\r\n\r\n \r\n\r\n {{'total intimation stage2'| translate}}\r\n {{'verified intimation stage2'| translate}}\r\n {{'verified intimation stage2 area'| translate}}\r\n {{'pending intimation stage2'| translate}}\r\n\r\n {{'total PV stage2'| translate}}\r\n {{'total PV stage2 Area'| translate}}\r\n {{'verified PV stage2'| translate}}\r\n {{'verified PV stage2 Area'| translate}}\r\n {{'pending PV stage2'| translate}}\r\n {{'rejected PV stage2'| translate}}\r\n\r\n {{'total subsidy calc stage2'| translate}}\r\n {{'total subsidy calc stage2 Area'| translate}}\r\n {{'verified subsidy calc stage2'| translate}}\r\n {{'verified subsidy calc stage2 Area'| translate}}\r\n {{'pending subsidy calc stage2'| translate}}\r\n {{'rejected subsidy calc stage2'| translate}}\r\n\r\n {{'total lot generated stage2'| translate}}\r\n {{'verified lot generated stage2'| translate}}\r\n {{'verified lot generated stage2 centershare'| translate}}\r\n {{'verified lot generated stage2 stateshare'| translate}}\r\n {{'pending lot generated stage2'| translate}}\r\n\r\n {{'total subsidy disbursal stage2'| translate}}\r\n {{'verified subsidy disbursal stage2'| translate}}\r\n {{'verified subsidy disbursal stage2 centershare'| translate}}\r\n {{'verified subsidy disbursal stage2 stateshare'| translate}}\r\n {{'pending subsidy disbursal stage2'| translate}}\r\n\r\n \r\n\r\n {{'total subsidy calc stage3'| translate}}\r\n {{'total subsidy calc stage3 Area'| translate}}\r\n {{'verified subsidy calc stage3'| translate}}\r\n {{'verified subsidy calc stage3 Area'| translate}}\r\n {{'pending subsidy calc stage3'| translate}} \r\n {{'rejected subsidy calc stage3'| translate}}\r\n\r\n {{'total lot generated stage3'| translate}}\r\n {{'verified lot generated stage3'| translate}}\r\n {{'verified lot generated stage3 centershare'| translate}}\r\n {{'verified lot generated stage3 stateshare'| translate}}\r\n {{'pending lot generated stage3'| translate}}\r\n\r\n {{'total subsidy disbursal stage3'| translate}}\r\n {{'verified subsidy disbursal stage3'| translate}}\r\n {{'verified subsidy disbursal stage3 centershare'| translate}}\r\n {{'verified subsidy disbursal stage3 stateshare'| translate}}\r\n {{'pending subsidy disbursal stage3'| translate}}\r\n \r\n \r\n \r\n \r\n {{consolidateData.title}}\r\n {{consolidateData.totalApp}}\r\n {{consolidateData.totalArea}}\r\n {{consolidateData.verifiedApp}}\r\n {{consolidateData.verifiedAppArea}}\r\n {{consolidateData.IncompleteApp}}\r\n {{consolidateData.IncompleteAppArea}}\r\n {{consolidateData.rejectApp}}\r\n\r\n \r\n {{consolidateData.total_intimation_stage1}}\r\n {{consolidateData.verified_intimation_stage1}}\r\n {{consolidateData.verified_intimation_stage1_area}}\r\n {{consolidateData.pending_intimation_stage1}}\r\n\r\n {{consolidateData.total_PV_stage1}}\r\n {{consolidateData.total_PV_stage1_Area}}\r\n {{consolidateData.verified_PV_stage1}}\r\n {{consolidateData.verified_PV_stage1_Area}}\r\n {{consolidateData.pending_PV_stage1}}\r\n {{consolidateData.rejected_PV_stage1}}\r\n\r\n {{consolidateData.total_subsidy_calc_stage1}}\r\n {{consolidateData.total_subsidy_calc_stage1_Area}}\r\n {{consolidateData.verified_subsidy_calc_stage1}}\r\n {{consolidateData.verified_subsidy_calc_stage1_Area}}\r\n {{consolidateData.pending_subsidy_calc_stage1}}\r\n {{consolidateData.rejected_subsidy_calc_stage1}}\r\n\r\n {{consolidateData.total_lot_generated_stage1}}\r\n {{consolidateData.verified_lot_generated_stage1}}\r\n {{consolidateData.verified_lot_generated_stage1_centershare}}\r\n {{consolidateData.verified_lot_generated_stage1_stateshare}}\r\n {{consolidateData.pending_lot_generated_stage1}}\r\n\r\n {{consolidateData.total_subsidy_disbursal_stage1}}\r\n {{consolidateData.verified_subsidy_disbursal_stage1}}\r\n {{consolidateData.verified_subsidy_disbursal_stage1_centershare}}\r\n {{consolidateData.verified_subsidy_disbursal_stage1_stateshare}}\r\n {{consolidateData.pending_subsidy_disbursal_stage1}}\r\n \r\n\r\n\r\n \r\n {{consolidateData.total_intimation_stage2}}\r\n {{consolidateData.verified_intimation_stage2}}\r\n {{consolidateData.verified_intimation_stage2_area}}\r\n {{consolidateData.pending_intimation_stage2}}\r\n\r\n {{consolidateData.total_PV_stage2}}\r\n {{consolidateData.total_PV_stage2_Area}}\r\n {{consolidateData.verified_PV_stage2}}\r\n {{consolidateData.verified_PV_stage2_Area}}\r\n {{consolidateData.pending_PV_stage2}}\r\n {{consolidateData.rejected_PV_stage2}}\r\n\r\n {{consolidateData.total_subsidy_calc_stage2}}\r\n {{consolidateData.total_subsidy_calc_stage2_Area}}\r\n {{consolidateData.verified_subsidy_calc_stage2}}\r\n {{consolidateData.verified_subsidy_calc_stage2_Area}}\r\n {{consolidateData.pending_subsidy_calc_stage2}}\r\n {{consolidateData.rejected_subsidy_calc_stage2}}\r\n\r\n {{consolidateData.total_lot_generated_stage2}}\r\n {{consolidateData.verified_lot_generated_stage2}}\r\n {{consolidateData.verified_lot_generated_stage2_centershare}}\r\n {{consolidateData.verified_lot_generated_stage2_stateshare}}\r\n {{consolidateData.pending_lot_generated_stage2}}\r\n\r\n {{consolidateData.total_subsidy_disbursal_stage2}}\r\n {{consolidateData.verified_subsidy_disbursal_stage2}}\r\n {{consolidateData.verified_subsidy_disbursal_stage2_centershare}}\r\n {{consolidateData.verified_subsidy_disbursal_stage2_stateshare}}\r\n {{consolidateData.pending_subsidy_disbursal_stage2}}\r\n \r\n\r\n \r\n {{consolidateData.total_subsidy_calc_stage3}}\r\n {{consolidateData.total_subsidy_calc_stage3_Area}}\r\n {{consolidateData.verified_subsidy_calc_stage3}}\r\n {{consolidateData.verified_subsidy_calc_stage3_Area}}\r\n {{consolidateData.pending_subsidy_calc_stage3}}\r\n {{consolidateData.rejected_subsidy_calc_stage3}}\r\n\r\n {{consolidateData.total_lot_generated_stage3}}\r\n {{consolidateData.verified_lot_generated_stage3}}\r\n {{consolidateData.verified_lot_generated_stage3_centershare}}\r\n {{consolidateData.verified_lot_generated_stage3_stateshare}}\r\n {{consolidateData.pending_lot_generated_stage3}}\r\n\r\n {{consolidateData.total_subsidy_disbursal_stage3}}\r\n {{consolidateData.verified_subsidy_disbursal_stage3}}\r\n {{consolidateData.verified_subsidy_disbursal_stage3_centershare}}\r\n {{consolidateData.verified_subsidy_disbursal_stage3_stateshare}}\r\n {{consolidateData.pending_subsidy_disbursal_stage3}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n No Data found.\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport saveAs from 'file-saver';\r\n\r\n@Component({\r\n selector: 'app-ranking-rating-report',\r\n templateUrl: './ranking-rating-report.component.html',\r\n styleUrls: ['./ranking-rating-report.component.scss']\r\n})\r\nexport class RankingRatingReportComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n \r\n rankingReportExport: MenuItem[];\r\n rankingReportDrillDownExport: MenuItem[];\r\n \r\n public userId: string;\r\n public rankingReportData: any = [];\r\n public rankingReportWithFilteredVal: any = [];\r\n public rankingReportWithFilteredValTable: any = [];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub: any;\r\n\r\n scrollHeight: any = '130px';\r\n scrollHeightDD: any = '130px';\r\n date: any;\r\n\r\n dataForFilterDropdown: any = [];\r\n selectedFilterVal: any;\r\n\r\n selectedUserRole: any;\r\n userRoleList: any = [];\r\n selectedUserId: any;\r\n userIdList: any = [];\r\n selectedUserAction: any;\r\n userActionList: any = [];\r\n\r\n rankingReportDrillDownData: any = [];\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loadData(this.userId);\r\n\r\n this.rankingReportExport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.rankingReportWithFilteredVal, `Ranking_Report_${this.date}`);\r\n },\r\n }\r\n ];\r\n this.rankingReportDrillDownExport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcelDrillDown(this.rankingReportDrillDownData, `Ranking Report DrillDrown Data${this.date}`);\r\n },\r\n }\r\n ];\r\n }\r\n\r\n onSelectUserRoleList(){\r\n this.rankingReportWithFilteredValTable = [];\r\n this.userIdList = [];\r\n this.selectedUserId = null;\r\n this.userActionList = [];\r\n this.selectedUserAction = null;\r\n\r\n\r\n this.rankingReportWithFilteredValTable = this.rankingReportData.filter(item => {\r\n return item.UserRole == this.selectedUserRole?.name\r\n });\r\n\r\n this.userIdList = this.getUniqueUserId(this.rankingReportData);\r\n }\r\n\r\n onSelectUserIdList(){\r\n // this.rankingReportWithFilteredValTable = [];\r\n this.userActionList = [];\r\n this.selectedUserAction = null;\r\n\r\n this.rankingReportWithFilteredValTable = this.rankingReportData.filter(item => {\r\n return item.UserID_UserDetail == this.selectedUserId?.name && item.UserRole == this.selectedUserRole?.name\r\n });\r\n\r\n this.userActionList = this.getUniqueUserAction(this.rankingReportData);\r\n\r\n }\r\n\r\n onSelectUserActionList(){\r\n this.rankingReportWithFilteredValTable = this.rankingReportData.filter(item => {\r\n return item.Action_Type == this.selectedUserAction?.name && item.UserID_UserDetail == this.selectedUserId?.name && item.UserRole == this.selectedUserRole?.name\r\n });\r\n }\r\n\r\n // onSelectMIConsFilter(){\r\n // // console.log(this.selectedFilterVal);\r\n // if(this.selectedFilterVal != null){\r\n // // console.log(this.rankingReportData);\r\n // this.rankingReportWithFilteredVal = this.rankingReportData.filter(item => {\r\n // return item.filterCol == this.selectedFilterVal?.actionLevel\r\n // console.log(item.filterCol == this.selectedFilterVal?.actionLevel);\r\n // // console.log(this.selectedFilterVal);\r\n // });\r\n // console.log(this.rankingReportWithFilteredVal);\r\n // }else{\r\n // this.rankingReportWithFilteredVal = this.rankingReportData;\r\n // }\r\n // }\r\n\r\n loadData(userId) {\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getAllUserRanking()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n if(data?.length == 1) {\r\n this.scrollHeight = '180px';\r\n }else if(data?.length <=5) {\r\n this.scrollHeight = '300px';\r\n }else{\r\n this.scrollHeight = '400px';\r\n }\r\n\r\n data = data.map((val)=> ({\r\n ...val,\r\n UserID_UserDetail : `${val?.UserID}- ${val?.User_detail}`,\r\n Rating_Start: val?.Ranking_Ve == 'Very Poor' ? 0 : val?.Ranking_Ve == 'Poor' ? 1 : val?.Ranking_Ve == 'Average' ? 2 : val?.Ranking_Ve == 'Good' ? 3 : val?.Ranking_Ve == 'Very Good' ? 4 : val?.Ranking_Ve == 'Outstanding' ? 5 : 0\r\n }))\r\n this.rankingReportData = data;\r\n\r\n this.userRoleList = this.getUniqueUserRole(data);\r\n console.log(this.dataForFilterDropdown)\r\n }else{\r\n this.rankingReportData = [];\r\n this.rankingReportWithFilteredVal = [];\r\n this.scrollHeight = '130px';\r\n }\r\n this.activityRecordService.activityRecord(this.userId, 'Ranking Report', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.rankingReportData = [];\r\n this.rankingReportWithFilteredVal = [];\r\n this.scrollHeight = '130px';\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Ranking Report Error', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n loadDrillDownData(row) {\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getUserRankingByActionUser(row?.Action_Type, row?.UserRole, row?.UserID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n setTimeout( () => this.targetTable.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n \r\n this.loading = false;\r\n if (data?.length > 0) {\r\n if(data?.length == 1) {\r\n this.scrollHeightDD = '180px';\r\n }else if(data?.length <=5) {\r\n this.scrollHeightDD = '300px';\r\n }else{\r\n this.scrollHeightDD = '400px';\r\n }\r\n \r\n this.rankingReportDrillDownData = data;\r\n\r\n \r\n }else{\r\n this.rankingReportDrillDownData = [];\r\n\r\n this.scrollHeightDD = '130px';\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n this.activityRecordService.activityRecord(this.userId, 'Ranking Report DrillDown', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n setTimeout( () => this.targetTable.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n this.rankingReportDrillDownData = [];\r\n\r\n this.scrollHeightDD = '130px';\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Ranking Report DrillDown Error', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getUniqueUserRole(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.UserRole));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(name => ({ name }));\r\n return actionLevelObjects;\r\n }\r\n\r\n getUniqueUserId(data) {\r\n const filteredData = data.filter(item => item.UserRole == this.selectedUserRole?.name);\r\n\r\n const actionLevelSet = new Set(filteredData.map(entry => entry.UserID_UserDetail));\r\n\r\n const actionLevelObjects = Array.from(actionLevelSet).map(name => ({ name }));\r\n\r\n return actionLevelObjects;\r\n // console.log('getUniqueUserId', data)\r\n // const actionLevelSet = new Set(data.map(entry => entry.UserID_UserDetail));\r\n // const actionLevelObjects = Array.from(actionLevelSet).map(name => ({ name }));\r\n // return actionLevelObjects;\r\n }\r\n\r\n getUniqueUserAction(data) {\r\n const filteredData = data.filter(item => item.UserID_UserDetail == this.selectedUserId?.name && item.UserRole == this.selectedUserRole?.name);\r\n\r\n const actionLevelSet = new Set(filteredData.map(entry => entry.Action_Type));\r\n\r\n const actionLevelObjects = Array.from(actionLevelSet).map(name => ({ name }));\r\n\r\n return actionLevelObjects;\r\n\r\n // const actionLevelSet = new Set(data.map(entry => entry.Action_Type));\r\n // const actionLevelObjects = Array.from(actionLevelSet).map(name => ({ name }));\r\n // return actionLevelObjects;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Role' : d?.UserRole,\r\n 'User ID' : d?.UserID,\r\n 'Action' : d?.Action_Type,\r\n 'User Detail' : d?.User_detail,\r\n 'No.s Of App' : d?.Nos_of_action,\r\n 'Max Score' : d?.Max_rank,\r\n 'Obtained Score' : d?.Obtained_Rank_with_Ve,\r\n 'Obtained Percentage' : d?.Per_Obtained_Rank_with_Ve,\r\n 'Rating' : d?.Ranking_Ve,\r\n 'Rating Star' : d?.Rating_Start,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n exportExcelDrillDown(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Role' : d?.UserRole,\r\n 'Application Id' : d?.appid,\r\n 'Action' : d?.Action_Type,\r\n 'User Detail' : d?.User_detail,\r\n 'Assigned Date' : d?.AssignedDate,\r\n 'Action Date' : d?.Action_Date,\r\n 'Days Taken' : d?.Days_Taken,\r\n 'Target Days' : d?.TargetDays\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onSelectRow(item){\r\n console.log(item);\r\n this.loadDrillDownData(item);\r\n }\r\n\r\n getColorForRanking(rank: number) {\r\n if(rank == 0){\r\n return '#E58788'; // very poor\r\n }else if(rank == 1){\r\n return '#DDB7E8'; // poor\r\n }else if(rank == 2){\r\n return '#DFD0B0'; // average\r\n }else if(rank == 3){\r\n return '#F9ECB9'; // Good \r\n }else if(rank == 4){\r\n return '#D2E27E'; // Very Good\r\n }else if(rank == 5){\r\n return '#A5ED89'; // Outstanding\r\n }else{\r\n return '#FFFFF'; // Default\r\n }\r\n }\r\n \r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
0\" class=\"card dashboardTable\">\r\n
\r\n

Ranking Criteria: 10 marks will be awarded for within target days for each application and deduction of 0.5 marks per day beyond target days

\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ 'Ranking Report' | translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{ 'Role' | translate}}\r\n {{ 'User ID' | translate}}\r\n {{ 'Action' | translate}}\r\n {{ 'User Detail' | translate}}\r\n {{ 'No.s Of App' | translate}}\r\n {{ 'Max Score' | translate}}\r\n \r\n {{ 'Obtained Score' | translate}}\r\n \r\n {{ 'Obtained Percentage' | translate}}\r\n \r\n {{ 'Rating' | translate}}\r\n {{ 'Star' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{item.UserRole}}\r\n {{item.UserID}}\r\n {{item.Action_Type}}\r\n {{item.User_detail}}\r\n {{item.Nos_of_action}}\r\n {{item.Max_rank}}\r\n \r\n {{item.Obtained_Rank_with_Ve}}\r\n \r\n {{item.Per_Obtained_Rank_with_Ve}}\r\n {{item.Ranking_Ve}}\r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
\r\n\r\n
0\" class=\"card dashboardTable\">\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ 'Ranking Drill Down Report' | translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{ 'Role' | translate}}\r\n {{ 'APP_NO' | translate}}\r\n {{ 'Action' | translate}}\r\n {{ 'User Detail' | translate}}\r\n {{ 'Assigned Date' | translate}}\r\n {{ 'Action Date' | translate}}\r\n {{ 'Days Taken' | translate}}\r\n {{ 'Target Days' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{item.UserRole}}\r\n {{item.appid}}\r\n {{item.Action_Type}}\r\n {{item.User_detail}}\r\n {{item.AssignedDate | date:'mediumDate'}}\r\n {{item.Action_Date | date:'mediumDate'}}\r\n {{item.Days_Taken}}\r\n {{item.TargetDays}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { RtfDistrictWiseModel, StfDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-rtf-district-wise-report',\r\n templateUrl: './rtf-district-wise-report.component.html',\r\n styleUrls: ['./rtf-district-wise-report.component.scss']\r\n})\r\nexport class RtfDistrictWiseReportComponent implements OnInit {\r\n\r\n districtWise: any[];\r\n fsvDeposited:number;\r\n fsvPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandFsvDeposited:number;\r\n grandFsvPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempDistrictWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: RtfDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getRTF_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'RTF Report (District Wise)', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this.tempDistrictWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise = [];\r\n this.appVerificationModel = [];\r\n this.tempDistrictWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'RTF Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"FSV Deposited\": d.FSVDeposited,\r\n \"FSV Paid\": d.FSVPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\" : d.AmountPaid,\r\n \"MI Area\" : d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'FSVDeposited', header: 'FSV Deposited' },\r\n { field: 'FSVPaid', header: 'FSV Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n {field: 'AmountPaid', header: 'Amount Paid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempDistrictWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.fsvDeposited=0;\r\n this.fsvPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempDistrictWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'FSV_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'FSV_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.Block}}\r\n {{districtWise.FSVDeposited}}\r\n {{districtWise.FSVPaid}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.AmountPaid}}\r\n {{districtWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{fsvDeposited | number:'1.0-2'}}\r\n {{fsvPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandFsvDeposited | number:'1.0-2'}}\r\n {{grandFsvPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { RtfMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-rtf-month-wise-report',\r\n templateUrl: './rtf-month-wise-report.component.html',\r\n styleUrls: ['./rtf-month-wise-report.component.scss']\r\n})\r\nexport class RtfMonthWiseReportComponent implements OnInit {\r\n\r\n monthWise: any[];\r\n fsvDeposited:number;\r\n fsvPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandFsvDeposited:number;\r\n grandFsvPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: RtfMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getRTF_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'RTF Report (Month Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data;\r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise = [];\r\n this.appVerificationModel = [];\r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'RTF Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"FSV Deposited\": d.FSVDeposited,\r\n \"FSV Paid\": d.FSVPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'FSVDeposited', header: 'FSV Deposited' },\r\n { field: 'FSVPaid', header: 'FSV Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'AmountPaid', header: 'Amount Paid' },\r\n { field: 'MIArea', header: 'MI Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.fsvDeposited=0;\r\n this.fsvPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS' | translate}}\r\n \r\n \r\n \r\n {{'FSV_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'FSV_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.FSVDeposited}}\r\n {{monthWise.FSVPaid}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.AmountPaid}}\r\n {{monthWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{fsvDeposited | number:'1.0-2'}}\r\n {{fsvPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandFsvDeposited | number:'1.0-2'}}\r\n {{grandFsvPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-rtf-report',\r\n templateUrl: './rtf-report.component.html',\r\n styleUrls: ['./rtf-report.component.scss']\r\n})\r\nexport class RtfReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/rtf/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/rtf/district-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/rtf/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { RtfVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-rtf-vendor-wise-report',\r\n templateUrl: './rtf-vendor-wise-report.component.html',\r\n styleUrls: ['./rtf-vendor-wise-report.component.scss']\r\n})\r\nexport class RtfVendorWiseReportComponent implements OnInit {\r\n\r\n vendorWise: any[];\r\n fsvDeposited:number;\r\n fsvPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandFsvDeposited:number;\r\n grandFsvPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: RtfVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any\r\n vendorName:any\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getRTF_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'RTF Report (Vendor Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise = [];\r\n this.appVerificationModel =[] ;\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'RTF Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"FSV Deposited\" : d.FSVDeposited,\r\n \"FSV Paid\": d.FSVPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n {field: 'FSVDeposited', header: 'FSV Deposited'},\r\n { field: 'FSVPaid', header: 'FSV Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n {field: 'Pending_1Week', header: 'Pending a Week'},\r\n {field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week'},\r\n {field: 'AmountPaid', header: 'AmountPaid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.fsvDeposited=0;\r\n this.fsvPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FSV_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'FSV_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.FSVDeposited}}\r\n {{vendorWise.FSVPaid}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.AmountPaid}}\r\n {{vendorWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{fsvDeposited | number:'1.0-2'}}\r\n {{fsvPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandFsvDeposited | number:'1.0-2'}}\r\n {{grandFsvPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { MonthWiseModel } from 'src/app/models/department-app-verification.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-seventy-five-hundred-demo',\r\n templateUrl: './seventy-five-hundred-demo.component.html',\r\n styleUrls: ['./seventy-five-hundred-demo.component.scss']\r\n})\r\nexport class SeventyFiveHundredDemoComponent implements OnInit {\r\n\r\n\r\n public demo7500Data: any = [];\r\n public filterdDataForExport: any = [];\r\n \r\n appVerificationItems: MenuItem[];\r\n \r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n public userID: any;\r\n public subjectSub:any;\r\n public selectedYear:any\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n constructor(private reportsService:ReportsService,\r\n private messageService:MessageService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.loadData();\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n } \r\n );\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.filterdDataForExport, \"7500_DEMO_REPORT\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filterdDataForExport, \"7500_DEMO_REPORT\");\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.reportsService.get7500Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, '7500 Demo Report', '', new Date(), 'Success');\r\n \r\n if (data?.length > 0) {\r\n this.demo7500Data = data;\r\n this.filterdDataForExport = data;\r\n }else if(data?.length == 0) {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.demo7500Data = [];\r\n this.filterdDataForExport = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, '7500 Demo Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n 'District': d.District,\r\n '':'',\r\n 'NoOfCases (Applications)': d.NoOfCases,\r\n 'NoOfApprovedCases (Applications)': d.NoOfApprovedCases, \r\n 'TotalArea (Applications)': d.TotalArea,\r\n ' ':'',\r\n 'NoOfCases (Estimation)': d.NoOfCasesEst,\r\n 'NoOfApprovedCases (Estimation)': d.NoOfApprovedCasesEstimation,\r\n 'TotalArea (Estimation)': d.TotalAreaEST,\r\n 'Amount (Estimation)': d.AmountEst,\r\n ' ':'',\r\n 'NoOfCases (PV)': d.NoOfCasesPV,\r\n 'NoOfApprovedCases (PV)': d.NoOfApprovedCasesPV,\r\n 'TotalArea (PV)': d.TotalAreaPV,\r\n 'Amount (PV)': d.AmountPV,\r\n ' ':'',\r\n 'NoOfCasesSubsidy (Subsidy Disbusment)': d.NoOfCasesSubsidy,\r\n 'ApprovedSubsidyApps (Subsidy Disbusment)': d.ApprovedSubsidyApps,\r\n 'TotalAreaSubsidy (Subsidy Disbusment)': d.TotalAreaSubsidy,\r\n 'AmountSubsidy (Subsidy Disbusment)': d.AmountSubsidy,\r\n 'SubsidyPaid (Subsidy Disbusment)': d.SubsidyPaid,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // {field: 'Date', header: 'Date'},\r\n // { field: 'ChallanDeposited', header: 'Challan Deposited' },\r\n // { field: 'AmountDeposited', header: 'Amount Deposited' },\r\n // { field: 'ChallanRejected', header: 'Challan Rejected' },\r\n // { field: 'AmountRejected', header: 'Amount Rejected' },\r\n // ];\r\n // this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n // import(\"jspdf\").then(jsPDF => {\r\n // import(\"jspdf-autotable\").then(x => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // })\r\n // })\r\n // }\r\n\r\n tableDataFunction(event: any) {\r\n this.filterdDataForExport = event.filteredValue\r\n // this.tempDayWise=event.filteredValue\r\n // //console.log(event);\r\n // this.arrayIndex=0;\r\n // // console.log(this.vendorWise);\r\n // this.calculateTotalApp() ;\r\n }\r\n\r\n onPage(event:any) {\r\n // this.arrayIndex=event.first;\r\n // this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\n\r\n// calculateTotalApp() {\r\n// this.totalChallanDeposited=0;\r\n// this.totalAmountDeposited=0;\r\n// this.totalChallanRejected=0;\r\n// this.totalAmountRejected=0;\r\n \r\n// for(let i=this.arrayIndex ;this.tempDayWise.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'7500_DEMO_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n APPLICATIONS\r\n \r\n\r\n \r\n\r\n \r\n ESTIMATE\r\n \r\n \r\n\r\n \r\n\r\n \r\n PV\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n SUBSIDY DISBUSMENT\r\n \r\n \r\n \r\n\r\n \r\n {{'District'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_RS'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_RS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n {{'NO_OF_CASES'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA_(ACRE)'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_RS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PAID'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{data.District}}\r\n \r\n\r\n {{data.NoOfCases}}\r\n {{data.NoOfApprovedCases}}\r\n {{data.TotalArea}}\r\n\r\n \r\n \r\n {{data.NoOfCasesEst}}\r\n {{data.NoOfApprovedCasesEstimation}}\r\n {{data.TotalAreaEST}}\r\n {{data.AmountEst}}\r\n\r\n \r\n \r\n \r\n {{data.NoOfCasesPV}}\r\n {{data.NoOfApprovedCasesPV}}\r\n {{data.TotalAreaPV}}\r\n {{data.AmountPV}}\r\n\r\n \r\n \r\n \r\n {{data.NoOfCasesSubsidy}}\r\n {{data.ApprovedSubsidyApps}}\r\n {{data.TotalAreaSubsidy}}\r\n {{data.AmountSubsidy}}\r\n {{data.SubsidyPaid}}\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Stage1 } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stage1-report',\r\n templateUrl: './stage1-report.component.html',\r\n styleUrls: ['./stage1-report.component.scss']\r\n})\r\nexport class Stage1ReportComponent implements OnInit {\r\n\r\n stage1: any[];\r\n totalApp:number;\r\n totalReceivedCoverageArea:number;\r\n totalApproveApp:number;\r\n totalApprovedCoverageArea:number;\r\n totalAppIncomplete:number;\r\n totalAppPending:number;\r\n totalAppRejected:number;\r\n totalIntimationStage1:number;\r\n pendingAtJe:number;\r\n pendingAtXen:number;\r\n pendingAtDmicada:number;\r\n pendingAtAdmin:number;\r\n phyDone:number;\r\n grandTotalApp:number;\r\n grandTotalReceivedCoverageArea:number;\r\n grandTotalApproveApp:number;\r\n grandTotalApprovedCoverageArea:number;\r\n grandTotalAppIncomplete:number;\r\n grandTotalAppPending:number;\r\n grandTotalAppRejected:number;\r\n grandTotalIntimationStage1:number;\r\n grandPendingAtJe:number;\r\n grandPendingAtXen:number;\r\n grandPendingAtDmicada:number;\r\n grandPendingAtAdmin:number;\r\n grandPhyDone:number;\r\n arrayIndex:number;\r\n tempStage1: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n drilldownDetails:any;\r\n displayMaximizable_all:boolean;\r\n displayMaximizable_verified:boolean;\r\n displayMaximizable_incomplete:boolean;\r\n displayMaximizable_rejected:boolean;\r\n displayMaximizable_pending:boolean;\r\n value:any;\r\n displayMaximizable_intimation:boolean;\r\n displayMaximizable_je:boolean;\r\n displayMaximizable_xen:boolean;\r\n displayMaximizable_dmicada:boolean;\r\n displayMaximizable_admin:boolean;\r\n displayMaximizable_phy:boolean;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Stage1_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Stage1_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getStage1_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-1 Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.stage1 = data;\r\n this.appVerificationModel = data;\r\n this.tempStage1=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.stage1 = [];\r\n this.appVerificationModel = [];\r\n this.tempStage1=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-1 Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"district\" : d.district,\r\n \"Total App Recieved\" : d.Total_App_Recieved,\r\n \"Recieved Coverage Area\": d.recieved_Coverage_Area,\r\n \"Total Approved Application\": d.total_Approved_Application,\r\n \"Approved Coverage Area\": d.approved_Coverage_Area,\r\n \"Total App Incomplete\": d.total_App_Incomplete,\r\n \"Total App Pending\": d.total_App_Pending,\r\n \"Total App Rejected\": d.total_App_Rejected,\r\n \"Total Intimation Stage1\": d.total_Intimation_Stage1,\r\n \"Pending At JE\": d.pending_At_JE,\r\n \"Pending At XEN\": d.pending_At_XEN,\r\n \"Pending At DMICADA\": d.pending_At_DMICADA,\r\n \"Pending At Admin\": d.pending_At_Admin,\r\n \"PHY Done\": d.PHY_Done,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'district', header: 'District'},\r\n {field: 'Total_App_Recieved', header: 'Total App Recieved'},\r\n { field: 'recieved_Coverage_Area', header: 'Recieved Coverage Area' },\r\n { field: 'total_Approved_Application', header: 'Total Approved Application' },\r\n {field: 'approved_Coverage_Area', header: 'Approved Coverage Area'},\r\n {field: 'total_App_Incomplete', header: 'Total App Incomplete'},\r\n {field: 'total_App_Pending', header: 'Total App Pending'},\r\n {field: 'total_App_Rejected', header: 'Total App Rejected'},\r\n {field: 'total_Intimation_Stage1', header: 'Total Intimation Stage1'},\r\n {field: 'pending_At_JE', header: 'Pending At JE'},\r\n {field: 'pending_At_XEN', header: 'Pending At XEN'},\r\n {field: 'pending_At_DMICADA', header: 'Pending At DMICADA'},\r\n {field: 'pending_At_Admin', header: 'Pending At Admin'},\r\n {field: 'PHY_Done', header: 'PHY Done'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempStage1=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.totalReceivedCoverageArea=0;\r\n this.totalApproveApp=0;\r\n this.totalApprovedCoverageArea=0;\r\n this.totalAppIncomplete=0;\r\n this.totalAppPending=0;\r\n this.totalAppRejected=0;\r\n this.totalIntimationStage1=0;\r\n this.pendingAtJe=0;\r\n this.pendingAtXen=0;\r\n this.pendingAtDmicada=0;\r\n this.pendingAtAdmin=0;\r\n this.phyDone=0;\r\n \r\n for(let i=this.arrayIndex ;this.tempStage1.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'STAGE1_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_RECIEVED'| translate}}\r\n \r\n \r\n \r\n {{'RECIEVED_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPROVED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_INCOMPLETE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_PENDING'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_REJECTED'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_INTIMATION_STAGE1'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT_JE'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT_XEN'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT_DMICADA'| translate}}\r\n \r\n \r\n \r\n {{'ENDING_AT_ADMIN'| translate}}\r\n \r\n \r\n \r\n {{'PV_DONE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{stage1.district}}\r\n {{stage1.Total_App_Recieved}}\r\n {{stage1.recieved_Coverage_Area}}\r\n {{stage1.total_Approved_Application}}\r\n {{stage1.approved_Coverage_Area}}\r\n {{stage1.total_App_Incomplete}}\r\n {{stage1.total_App_Pending}}\r\n {{stage1.total_App_Rejected}}\r\n {{stage1.total_Intimation_Stage1}}\r\n {{stage1.pending_At_JE}}\r\n {{stage1.pending_At_XEN}}\r\n {{stage1.pending_At_DMICADA}}\r\n {{stage1.pending_At_Admin}}\r\n {{stage1.PHY_Done}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{totalReceivedCoverageArea | number:'1.0-2'}}\r\n {{totalApproveApp | number:'1.0-2'}}\r\n {{totalApprovedCoverageArea | number:'1.0-2'}}\r\n {{totalAppIncomplete | number:'1.0-2'}}\r\n {{totalAppPending | number:'1.0-2'}}\r\n {{totalAppRejected | number:'1.0-2'}}\r\n {{totalIntimationStage1 | number:'1.0-2'}}\r\n {{pendingAtJe | number:'1.0-2'}}\r\n {{pendingAtXen | number:'1.0-2'}}\r\n {{pendingAtDmicada | number:'1.0-2'}}\r\n {{pendingAtAdmin | number:'1.0-2'}}\r\n {{phyDone | number:'1.0-2'}}\r\n \r\n \r\n Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandTotalReceivedCoverageArea | number:'1.0-2'}}\r\n {{grandTotalApproveApp | number:'1.0-2'}}\r\n {{grandTotalApprovedCoverageArea | number:'1.0-2'}}\r\n {{grandTotalAppIncomplete | number:'1.0-2'}}\r\n {{grandTotalAppPending | number:'1.0-2'}}\r\n {{grandTotalAppRejected | number:'1.0-2'}}\r\n {{grandTotalIntimationStage1 | number:'1.0-2'}}\r\n {{grandPendingAtJe | number:'1.0-2'}}\r\n {{grandPendingAtXen | number:'1.0-2'}}\r\n {{grandPendingAtDmicada | number:'1.0-2'}}\r\n {{grandPendingAtAdmin | number:'1.0-2'}}\r\n {{grandPhyDone | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage1Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stage1-subsidy-report',\r\n templateUrl: './stage1-subsidy-report.component.html',\r\n styleUrls: ['./stage1-subsidy-report.component.scss']\r\n})\r\nexport class Stage1SubsidyReportComponent implements OnInit {\r\n\r\n stage1_Subsidy: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage1Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Stage1_Subsidy_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Stage1_Subsidy_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getStage1_Subsidy_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-1 Subsidy Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.stage1_Subsidy = data;\r\n this.appVerificationModel = data;\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.stage1_Subsidy = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-1 Subsidy Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"Village\": d.Village,\r\n \"App ID\": d.AppID,\r\n \"Farmer Name\": d.farmerName,\r\n \"Adm Amount\": d.Adm_Amount,\r\n \"Farmer Mobile\": d.farmer_Mobile,\r\n \"Approval Date\": d.Approval_Date,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'Village', header: 'Village' },\r\n { field: 'AppID', header: 'App ID' },\r\n {field: 'farmerName', header: 'Farmer Name'},\r\n {field: 'Adm_Amount', header: 'Adm Amount'},\r\n {field: 'farmer_Mobile', header: 'Farmer Mobile'},\r\n {field: 'Approval_Date', header: 'Approval Date'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'STAGE1_SUBSIDY_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'ADM_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_MOBILE'| translate}}\r\n \r\n \r\n \r\n {{'APPROVAL_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{stage1_Subsidy.District}}\r\n {{stage1_Subsidy.Block}}\r\n {{stage1_Subsidy.Village}}\r\n {{stage1_Subsidy.AppID}}\r\n {{stage1_Subsidy.farmerName}}\r\n {{stage1_Subsidy.Adm_Amount}}\r\n {{stage1_Subsidy.farmer_Mobile}}\r\n {{stage1_Subsidy.Approval_Date}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Stage2 } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stage2-report',\r\n templateUrl: './stage2-report.component.html',\r\n styleUrls: ['./stage2-report.component.scss']\r\n})\r\nexport class Stage2ReportComponent implements OnInit {\r\n\r\n stage2: any[];\r\n totalApp:number;\r\n totalReceivedCoverageArea:number;\r\n totalApproveApp:number;\r\n totalApprovedCoverageArea:number;\r\n totalAppIncomplete:number;\r\n totalAppPending:number;\r\n totalAppRejected:number;\r\n totalIntimationStage1:number;\r\n pendingAtJe:number;\r\n pendingAtXen:number;\r\n pendingAtDmicada:number;\r\n pendingAtAdmin:number;\r\n phyDone:number;\r\n grandTotalApp:number;\r\n grandTotalReceivedCoverageArea:number;\r\n grandTotalApproveApp:number;\r\n grandTotalApprovedCoverageArea:number;\r\n grandTotalAppIncomplete:number;\r\n grandTotalAppPending:number;\r\n grandTotalAppRejected:number;\r\n grandTotalIntimationStage1:number;\r\n grandPendingAtJe:number;\r\n grandPendingAtXen:number;\r\n grandPendingAtDmicada:number;\r\n grandPendingAtAdmin:number;\r\n grandPhyDone:number;\r\n arrayIndex:number;\r\n tempStage2: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage2[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n drilldownDetails:any;\r\n displayMaximizable_all:boolean;\r\n displayMaximizable_verified:boolean;\r\n displayMaximizable_incomplete:boolean;\r\n displayMaximizable_rejected:boolean;\r\n displayMaximizable_pending:boolean;\r\n value:any;\r\n displayMaximizable_intimation:boolean;\r\n displayMaximizable_je:boolean;\r\n displayMaximizable_xen:boolean;\r\n displayMaximizable_dmicada:boolean;\r\n displayMaximizable_admin:boolean;\r\n displayMaximizable_phy:boolean;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Stage2_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Stage2_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getStage2_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-2 Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.stage2 = data;\r\n this.appVerificationModel = data;\r\n this.tempStage2=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.stage2 = [];\r\n this.appVerificationModel =[] ;\r\n this.tempStage2=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-2 Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"district\" : d.district,\r\n \"Total App Recieved\" : d.Total_App_Recieved,\r\n \"Recieved Coverage Area\": d.recieved_Coverage_Area,\r\n \"Total Approved Application\": d.total_Approved_Application,\r\n \"Approved Coverage Area\": d.approved_Coverage_Area,\r\n \"Total App Incomplete\": d.total_App_Incomplete,\r\n \"Total App Pending\": d.total_App_Pending,\r\n \"Total App Rejected\": d.total_App_Rejected,\r\n \"Total Intimation Stage2\": d.total_Intimation_Stage2,\r\n \"Pending At JE\": d.pending_At_JE,\r\n \"Pending At XEN\": d.pending_At_XEN,\r\n \"Pending At DMICADA\": d.pending_At_DMICADA,\r\n \"Pending At Admin\": d.pending_At_Admin,\r\n \"PHY Done\": d.PHY_Done,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'district', header: 'district'},\r\n {field: 'Total_App_Recieved', header: 'Total App Recieved'},\r\n { field: 'recieved_Coverage_Area', header: 'Recieved Coverage Area' },\r\n { field: 'total_Approved_Application', header: 'Total Approved Application' },\r\n {field: 'approved_Coverage_Area', header: 'Approved Coverage Area'},\r\n {field: 'total_App_Incomplete', header: 'Total App Incomplete'},\r\n {field: 'total_App_Pending', header: 'Total App Pending'},\r\n {field: 'total_App_Rejected', header: 'Total App Rejected'},\r\n {field: 'total_Intimation_Stage2', header: 'Total Intimation Stage2'},\r\n {field: 'pending_At_JE', header: 'Pending At JE'},\r\n {field: 'pending_At_XEN', header: 'Pending At XEN'},\r\n {field: 'pending_At_DMICADA', header: 'Pending At DMICADA'},\r\n {field: 'pending_At_Admin', header: 'Pending At Admin'},\r\n {field: 'PHY_Done', header: 'PHY Done'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempStage2=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.totalReceivedCoverageArea=0;\r\n this.totalApproveApp=0;\r\n this.totalApprovedCoverageArea=0;\r\n this.totalAppIncomplete=0;\r\n this.totalAppPending=0;\r\n this.totalAppRejected=0;\r\n this.totalIntimationStage1=0;\r\n this.pendingAtJe=0;\r\n this.pendingAtXen=0;\r\n this.pendingAtDmicada=0;\r\n this.pendingAtAdmin=0;\r\n this.phyDone=0;\r\n \r\n for(let i=this.arrayIndex ;this.tempStage2.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'STAGE2_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_RECIEVED'| translate}}\r\n \r\n \r\n \r\n {{'RECIEVED_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPROVED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_INCOMPLETE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_PENDING'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_REJECTED'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_INTIMATION_STAGE2'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT_JE'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT_XEN'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT_DMICADA'| translate}}\r\n \r\n \r\n \r\n {{'ENDING_AT_ADMIN'| translate}}\r\n \r\n \r\n \r\n {{'PV_DONE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{stage2.district}}\r\n {{stage2.Total_App_Recieved}}\r\n {{stage2.recieved_Coverage_Area}}\r\n {{stage2.total_Approved_Application}}\r\n {{stage2.approved_Coverage_Area}}\r\n {{stage2.total_App_Incomplete}}\r\n {{stage2.total_App_Pending}}\r\n {{stage2.total_App_Rejected}}\r\n {{stage2.total_Intimation_Stage2}}\r\n {{stage2.pending_At_JE}}\r\n {{stage2.pending_At_XEN}}\r\n {{stage2.pending_At_DMICADA}}\r\n {{stage2.pending_At_Admin}}\r\n {{stage2.PHY_Done}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{totalReceivedCoverageArea | number:'1.0-2'}}\r\n {{totalApproveApp | number:'1.0-2'}}\r\n {{totalApprovedCoverageArea | number:'1.0-2'}}\r\n {{totalAppIncomplete | number:'1.0-2'}}\r\n {{totalAppPending | number:'1.0-2'}}\r\n {{totalAppRejected | number:'1.0-2'}}\r\n {{totalIntimationStage1 | number:'1.0-2'}}\r\n {{pendingAtJe | number:'1.0-2'}}\r\n {{pendingAtXen | number:'1.0-2'}}\r\n {{pendingAtDmicada | number:'1.0-2'}}\r\n {{pendingAtAdmin | number:'1.0-2'}}\r\n {{phyDone | number:'1.0-2'}}\r\n \r\n \r\n Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandTotalReceivedCoverageArea | number:'1.0-2'}}\r\n {{grandTotalApproveApp | number:'1.0-2'}}\r\n {{grandTotalApprovedCoverageArea | number:'1.0-2'}}\r\n {{grandTotalAppIncomplete | number:'1.0-2'}}\r\n {{grandTotalAppPending | number:'1.0-2'}}\r\n {{grandTotalAppRejected | number:'1.0-2'}}\r\n {{grandTotalIntimationStage1 | number:'1.0-2'}}\r\n {{grandPendingAtJe | number:'1.0-2'}}\r\n {{grandPendingAtXen | number:'1.0-2'}}\r\n {{grandPendingAtDmicada | number:'1.0-2'}}\r\n {{grandPendingAtAdmin | number:'1.0-2'}}\r\n {{grandPhyDone | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router, RouterEvent } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage2Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stage2-subsidy-report',\r\n templateUrl: './stage2-subsidy-report.component.html',\r\n styleUrls: ['./stage2-subsidy-report.component.scss']\r\n})\r\nexport class Stage2SubsidyReportComponent implements OnInit {\r\n\r\n stage2_Subsidy: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage2Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Stage2_Subsidy_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Stage2_Subsidy_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getStage2_Subsidy_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-2 Subsidy Report', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.stage2_Subsidy = data;\r\n this.appVerificationModel = data;\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.stage2_Subsidy = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-2 Subsidy Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"Village\": d.Village,\r\n \"App ID\": d.AppID,\r\n \"Farmer Name\": d.farmerName,\r\n \"Adm Amount\": d.Adm_Amount,\r\n \"Farmer Mobile\": d.farmer_Mobile,\r\n \"Approval Date\": d.Approval_Date,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'Village', header: 'Village' },\r\n { field: 'AppID', header: 'App ID' },\r\n {field: 'farmerName', header: 'Farmer Name'},\r\n {field: 'Adm_Amount', header: 'Adm Amount'},\r\n {field: 'farmer_Mobile', header: 'Farmer Mobile'},\r\n {field: 'Approval_Date', header: 'Approval Date'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'STAGE2_SUBSIDY_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'ADM_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_MOBILE'| translate}}\r\n \r\n \r\n \r\n {{'APPROVAL_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{stage2_Subsidy.District}}\r\n {{stage2_Subsidy.Block}}\r\n {{stage2_Subsidy.Village}}\r\n {{stage2_Subsidy.AppID}}\r\n {{stage2_Subsidy.farmerName}}\r\n {{stage2_Subsidy.Adm_Amount}}\r\n {{stage2_Subsidy.farmer_Mobile}}\r\n {{stage2_Subsidy.Approval_Date}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Stage3 } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stage3-report',\r\n templateUrl: './stage3-report.component.html',\r\n styleUrls: ['./stage3-report.component.scss']\r\n})\r\nexport class Stage3ReportComponent implements OnInit {\r\n\r\n stage3: any[];\r\n totalApp:number;\r\n totalReceivedCoverageArea:number;\r\n totalApproveApp:number;\r\n totalApprovedCoverageArea:number;\r\n totalAppIncomplete:number;\r\n totalAppPending:number;\r\n totalAppRejected:number;\r\n totalIntimationStage1:number;\r\n pendingAtJe:number;\r\n pendingAtXen:number;\r\n pendingAtDmicada:number;\r\n pendingAtAdmin:number;\r\n phyDone:number;\r\n grandTotalApp:number;\r\n grandTotalReceivedCoverageArea:number;\r\n grandTotalApproveApp:number;\r\n grandTotalApprovedCoverageArea:number;\r\n grandTotalAppIncomplete:number;\r\n grandTotalAppPending:number;\r\n grandTotalAppRejected:number;\r\n grandTotalIntimationStage1:number;\r\n grandPendingAtJe:number;\r\n grandPendingAtXen:number;\r\n grandPendingAtDmicada:number;\r\n grandPendingAtAdmin:number;\r\n grandPhyDone:number;\r\n arrayIndex:number;\r\n tempStage3: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage3[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n drilldownDetails:any;\r\n displayMaximizable_all:boolean;\r\n displayMaximizable_verified:boolean;\r\n displayMaximizable_incomplete:boolean;\r\n displayMaximizable_rejected:boolean;\r\n displayMaximizable_pending:boolean;\r\n value:any;\r\n displayMaximizable_dmicada:boolean;\r\n displayMaximizable_admin:boolean;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Stage3_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Stage3_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getStage3_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-3 Report', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.stage3 = data;\r\n this.appVerificationModel = data;\r\n this.tempStage3=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.stage3 =[]\r\n this.appVerificationModel = []\r\n this.tempStage3=[]\r\n this.calculateGrandTotal()\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false; \r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-3 Report', '', new Date(), err);\r\n\r\n \r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"District\" : d.district,\r\n \"Total App Recieved\" : d.Total_App_Recieved,\r\n \"Recieved Coverage Area\": d.recieved_Coverage_Area,\r\n \"Total Approved Application\": d.total_Approved_Application,\r\n \"Approved Coverage Area\": d.approved_Coverage_Area,\r\n \"Total App Incomplete\": d.total_App_Incomplete,\r\n \"Total App Pending\": d.total_App_Pending,\r\n \"Total App Rejected\": d.total_App_Rejected,\r\n \"Pending At DMICADA\": d.pending_At_DMICADA,\r\n \"Pending At Admin\": d.pending_At_Admin,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'district', header: 'district'},\r\n {field: 'Total_App_Recieved', header: 'Total App Recieved'},\r\n { field: 'recieved_Coverage_Area', header: 'Recieved Coverage Area' },\r\n { field: 'total_Approved_Application', header: 'Total Approved Application' },\r\n {field: 'approved_Coverage_Area', header: 'Approved Coverage Area'},\r\n {field: 'total_App_Incomplete', header: 'Total App Incomplete'},\r\n {field: 'total_App_Pending', header: 'Total App Pending'},\r\n {field: 'total_App_Rejected', header: 'Total App Rejected'},,\r\n {field: 'pending_At_DMICADA', header: 'Pending At DMICADA'},\r\n {field: 'pending_At_Admin', header: 'Pending At Admin'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempStage3=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.totalReceivedCoverageArea=0;\r\n this.totalApproveApp=0;\r\n this.totalApprovedCoverageArea=0;\r\n this.totalAppIncomplete=0;\r\n this.totalAppPending=0;\r\n this.totalAppRejected=0;\r\n this.totalIntimationStage1=0;\r\n this.pendingAtJe=0;\r\n this.pendingAtXen=0;\r\n this.pendingAtDmicada=0;\r\n this.pendingAtAdmin=0;\r\n this.phyDone=0;\r\n \r\n for(let i=this.arrayIndex ;this.tempStage3.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'STAGE3_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_RECIEVED'| translate}}\r\n \r\n \r\n \r\n {{'RECIEVED_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPROVED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'APPROVED_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_INCOMPLETE'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_PENDING'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_REJECTED'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_AT_DMICADA'| translate}}\r\n \r\n \r\n \r\n {{'ENDING_AT_ADMIN'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{stage3.district}}\r\n {{stage3.Total_App_Recieved}}\r\n {{stage3.recieved_Coverage_Area}}\r\n {{stage3.total_Approved_Application}}\r\n {{stage3.approved_Coverage_Area}}\r\n {{stage3.total_App_Incomplete}}\r\n {{stage3.total_App_Pending}}\r\n {{stage3.total_App_Rejected}}\r\n {{stage3.pending_At_DMICADA}}\r\n {{stage3.pending_At_Admin}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{totalReceivedCoverageArea | number:'1.0-2'}}\r\n {{totalApproveApp | number:'1.0-2'}}\r\n {{totalApprovedCoverageArea | number:'1.0-2'}}\r\n {{totalAppIncomplete | number:'1.0-2'}}\r\n {{totalAppPending | number:'1.0-2'}}\r\n {{totalAppRejected | number:'1.0-2'}}\r\n {{pendingAtDmicada | number:'1.0-2'}}\r\n {{pendingAtAdmin | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandTotalReceivedCoverageArea | number:'1.0-2'}}\r\n {{grandTotalApproveApp | number:'1.0-2'}}\r\n {{grandTotalApprovedCoverageArea | number:'1.0-2'}}\r\n {{grandTotalAppIncomplete | number:'1.0-2'}}\r\n {{grandTotalAppPending | number:'1.0-2'}}\r\n {{grandTotalAppRejected | number:'1.0-2'}}\r\n {{grandPendingAtDmicada | number:'1.0-2'}}\r\n {{grandPendingAtAdmin | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { Stage3Subsidy } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stage3-subsidy-report',\r\n templateUrl: './stage3-subsidy-report.component.html',\r\n styleUrls: ['./stage3-subsidy-report.component.scss']\r\n})\r\nexport class Stage3SubsidyReportComponent implements OnInit {\r\n\r\n stage3_Subsidy: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: Stage3Subsidy[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Stage3_Subsidy_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Stage3_Subsidy_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getStage3_Subsidy_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-3 Subsidy Report', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.stage3_Subsidy = data;\r\n this.appVerificationModel = data;\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.stage3_Subsidy = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Stage-3 Subsidy Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"Village\": d.Village,\r\n \"App ID\": d.AppID,\r\n \"Farmer Name\": d.farmerName,\r\n \"Adm Amount\": d.Adm_Amount,\r\n \"Farmer Mobile\": d.farmer_Mobile,\r\n \"Approval Date\": d.Approval_Date,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'Village', header: 'Village' },\r\n { field: 'AppID', header: 'App ID' },\r\n {field: 'farmerName', header: 'Farmer Name'},\r\n {field: 'Adm_Amount', header: 'Adm Amount'},\r\n {field: 'farmer_Mobile', header: 'Farmer Mobile'},\r\n {field: 'Approval_Date', header: 'Approval Date'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'STAGE3_SUBSIDY_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'ADM_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_MOBILE'| translate}}\r\n \r\n \r\n \r\n {{'APPROVAL_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{stage3_Subsidy.District}}\r\n {{stage3_Subsidy.Block}}\r\n {{stage3_Subsidy.Village}}\r\n {{stage3_Subsidy.AppID}}\r\n {{stage3_Subsidy.farmerName}}\r\n {{stage3_Subsidy.Adm_Amount}}\r\n {{stage3_Subsidy.farmer_Mobile}}\r\n {{stage3_Subsidy.Approval_Date}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { FsvDistrictWiseModel, StfDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stf-district-wise-report',\r\n templateUrl: './stf-district-wise-report.component.html',\r\n styleUrls: ['./stf-district-wise-report.component.scss']\r\n})\r\nexport class StfDistrictWiseReportComponent implements OnInit {\r\n\r\n districtWise: any[];\r\n totalApp:number;\r\n subsidyPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandSubsidyPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempDistrictWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: StfDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getSTF_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STF Report (District Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this.tempDistrictWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise = [];\r\n this.appVerificationModel = [];\r\n this.tempDistrictWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STF Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"Total Application\": d.TotalApplication,\r\n \"Subsidy Paid\": d.SubsidyPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\" : d.AmountPaid,\r\n \"MI Area\" : d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'SubsidyPaid', header: 'Subsidy Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n {field: 'AmountPaid', header: 'Amount Paid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempDistrictWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.subsidyPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempDistrictWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.Block}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.SubsidyPaid}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.AmountPaid}}\r\n {{districtWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{totalApp | number:'1.0-2'}}\r\n {{subsidyPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandSubsidyPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { StfMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stf-month-wise-report',\r\n templateUrl: './stf-month-wise-report.component.html',\r\n styleUrls: ['./stf-month-wise-report.component.scss']\r\n})\r\nexport class StfMonthWiseReportComponent implements OnInit {\r\n\r\n monthWise: any[];\r\n totalApp:number;\r\n subsidyPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandSubsidyPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: StfMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getSTF_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STF Report (Month Wise)', '', new Date(), 'Success');\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n } \r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data;\r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise = [];\r\n this.appVerificationModel =[] ;\r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STF Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Total Application\": d.TotalApplication,\r\n \"Subsidy Paid\": d.SubsidyPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'SubsidyPaid', header: 'Subsidy Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'AmountPaid', header: 'Amount Paid' },\r\n { field: 'MIArea', header: 'MI Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.subsidyPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.SubsidyPaid}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.AmountPaid}}\r\n {{monthWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{subsidyPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandSubsidyPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-stf-report',\r\n templateUrl: './stf-report.component.html',\r\n styleUrls: ['./stf-report.component.scss']\r\n})\r\nexport class StfReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/stf/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/stf/district-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/stf/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { StfVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stf-vendor-wise-report',\r\n templateUrl: './stf-vendor-wise-report.component.html',\r\n styleUrls: ['./stf-vendor-wise-report.component.scss']\r\n})\r\nexport class StfVendorWiseReportComponent implements OnInit {\r\n\r\n vendorWise: any[];\r\n totalApp:number;\r\n subsidyPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandSubsidyPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: StfVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any;\r\n vendorName:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getSTF_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'STF Report (Vendor Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise = [];\r\n this.appVerificationModel = [];\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STF Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Total Application\" : d.TotalApplication,\r\n \"Subsidy Paid\": d.SubsidyPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n {field: 'TotalApplication', header: 'Total Application'},\r\n { field: 'SubsidyPaid', header: 'Subsidy Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n {field: 'Pending_1Week', header: 'Pending a Week'},\r\n {field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week'},\r\n {field: 'AmountPaid', header: 'AmountPaid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.subsidyPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.SubsidyPaid}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.AmountPaid}}\r\n {{vendorWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{subsidyPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandSubsidyPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { StvDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stv-district-wise-report',\r\n templateUrl: './stv-district-wise-report.component.html',\r\n styleUrls: ['./stv-district-wise-report.component.scss']\r\n})\r\nexport class StvDistrictWiseReportComponent implements OnInit {\r\n\r\n districtWise: any[];\r\n totalApp:number;\r\n subsidyPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandSubsidyPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempDistrictWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: StvDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getSTV_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'STV Report (District Wise)', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this.tempDistrictWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise =[] ;\r\n this.appVerificationModel =[] ;\r\n this.tempDistrictWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STV Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Block\" : d.Block,\r\n \"Total Application\": d.TotalApplication,\r\n \"Subsidy Paid\": d.SubsidyPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\" : d.AmountPaid,\r\n \"MI Area\" : d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Block', header: 'Block'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'SubsidyPaid', header: 'Subsidy Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n {field: 'AmountPaid', header: 'Amount Paid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempDistrictWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.subsidyPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempDistrictWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.Block}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.SubsidyPaid}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.AmountPaid}}\r\n {{districtWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{totalApp | number:'1.0-2'}}\r\n {{subsidyPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandSubsidyPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { StvMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stv-month-wise',\r\n templateUrl: './stv-month-wise.component.html',\r\n styleUrls: ['./stv-month-wise.component.scss']\r\n})\r\nexport class StvMonthWiseComponent implements OnInit {\r\n\r\n monthWise: any[];\r\n totalApp:number;\r\n subsidyPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandSubsidyPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: StvMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n this.loading = true;\r\n let sub=this.reportsService.getSTV_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STV Report (Month Wise)', '', new Date(), 'Success');\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data;\r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise = [];\r\n this.appVerificationModel = [];\r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal() \r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STV Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Total Application\": d.TotalApplication,\r\n \"Subsidy Paid\": d.SubsidyPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Week\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'SubsidyPaid', header: 'Subsidy Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending a Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week' },\r\n { field: 'AmountPaid', header: 'Amount Paid' },\r\n { field: 'MIArea', header: 'MI Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n //console.log(this.monthWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.subsidyPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.SubsidyPaid}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.AmountPaid}}\r\n {{monthWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{subsidyPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandSubsidyPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-stv-report',\r\n templateUrl: './stv-report.component.html',\r\n styleUrls: ['./stv-report.component.scss']\r\n})\r\nexport class StvReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/stv/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/stv/district-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/stv/vendor-wise` },\r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { FsvVendorWiseModel, StvVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-stv-vendor-wise-report',\r\n templateUrl: './stv-vendor-wise-report.component.html',\r\n styleUrls: ['./stv-vendor-wise-report.component.scss']\r\n})\r\nexport class StvVendorWiseReportComponent implements OnInit {\r\n\r\n vendorWise: any[];\r\n totalApp:number;\r\n subsidyPaid:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n amountPaid:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandSubsidyPaid:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandAmountPaid:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: StvVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n value:any;\r\n vendorName:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n \r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n this.loading = true;\r\n let sub=this.reportsService.getSTV_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STV Report (Vendor Wise)', '', new Date(), 'Success');\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise = [];\r\n this.appVerificationModel = [];\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'STV Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Total Application\" : d.TotalApplication,\r\n \"Subsidy Paid\": d.SubsidyPaid,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending a Week\": d.Pending_1Week,\r\n \"Pending More than a Weeks\": d.Pending_Morethan_1Weeks,\r\n \"Amount Paid\": d.AmountPaid,\r\n \"MI Area\": d.MIArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n {field: 'TotalApplication', header: 'Total Application'},\r\n { field: 'SubsidyPaid', header: 'Subsidy Paid' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n {field: 'Pending_1Week', header: 'Pending a Week'},\r\n {field: 'Pending_Morethan_1Weeks', header: 'Pending More than a Week'},\r\n {field: 'AmountPaid', header: 'AmountPaid'},\r\n {field: 'MIArea', header: 'MI Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.subsidyPaid=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.amountPaid=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_PAID'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_PAID'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.SubsidyPaid}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.AmountPaid}}\r\n {{vendorWise.MIArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{subsidyPaid | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{amountPaid | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandSubsidyPaid | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandAmountPaid | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Table } from 'primeng/table';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-wise-report',\r\n templateUrl: './subsidy-wise-report.component.html',\r\n styleUrls: ['./subsidy-wise-report.component.scss'],\r\n})\r\nexport class SubsidyWiseReportComponent implements OnInit {\r\n @ViewChild('subsidyWiseDetails', { static: true }) \r\n public subsidyWiseDetails: Table;\r\n \r\n public districtData: any = [];\r\n public selectedDistrict: any = null;\r\n\r\n public blockData: any = [];\r\n public selectedBlock: any = null;\r\n\r\n public villageData: any = [];\r\n public selectedVillage: any = null;\r\n\r\n public loading: boolean = false;\r\n public userId: any;\r\n public tableDataToShow: any = [];\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n public showTable: boolean = false;\r\n public selectedYear: any;\r\n public exportType: MenuItem[];\r\n public date: any;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private router: Router,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.getDistrictMasterData();\r\n\r\n this.exportType = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.tableDataToShow, `Subsidy Wise Details (${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.tableDataToShow, \"Subsidy_Wise_Details\");\r\n // }\r\n // },\r\n ];\r\n\r\n }\r\n\r\n getDistrictMasterData() {\r\n this.loader.start();\r\n this.reportsService\r\n .getDistrictMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.districtData = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectDistrict() {\r\n this.closeActiveAPIs();\r\n this.tableDataToShow = [];\r\n this.blockData = [];\r\n this.selectedBlock = null;\r\n this.getBlockMasterData(this.selectedDistrict?.Dist_Code);\r\n }\r\n \r\n getBlockMasterData(distCode) {\r\n this.loader.start();\r\n this.reportsService\r\n .getBlockMaster(distCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.blockData = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n\r\n onSelectBlock() {\r\n this.tableDataToShow = [];\r\n this.closeActiveAPIs();\r\n this.loadTableData();\r\n this.showTable = true;\r\n }\r\n\r\n // onSelectVillage() {\r\n // this.closeActiveAPIs();\r\n // this.loadTableData();\r\n // }\r\n\r\n loadTableData() {\r\n let reqBody = {\r\n Dist_Code: this.selectedDistrict?.Dist_Code,\r\n Block_Code: this.selectedBlock?.Block_Code,\r\n Vill_Code: '',\r\n };\r\n\r\n this.loadData(reqBody);\r\n }\r\n\r\n // loadDataAndApplyFilter(reqBody){\r\n // if(sessionStorage.getItem('financialYear')){\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n // }\r\n\r\n // this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n // (res) => {\r\n // this.loadData(reqBody);\r\n \r\n // this.selectedYear = res;\r\n // this.subsidyWiseDetails.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' }];\r\n // }\r\n // );\r\n // }\r\n\r\n loadData(reqBody: any) {\r\n this.loading = true;\r\n let sub = this.reportsService\r\n .getDrillDownSubsidyDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('data', data);\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Subsidy Wise Details',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n if (data?.length > 0) {\r\n this.tableDataToShow = data;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n this.tableDataToShow = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Subsidy Wise Details',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n closeActiveAPIs() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.closeActiveAPIs();\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application?.AppID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application?.AppID)]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App Id\" : d.AppID,\r\n \"District\": d.District,\r\n \"Block\" : d.Block,\r\n \"Village\": d.Village,\r\n \"Programme Name\": d.ProgramName,\r\n \"Vendor Name\": d.VendorName,\r\n \"Scheme\": d.Scheme,\r\n \"Type of Water Source\": d.Water_Source_Name,\r\n \"Financial Year\": d.FinYear,\r\n \"Farmer Share To Vendor\": d.FarmerShare_to_Vendor,\r\n \"Subsidy To Vendor\": d.Subsidy_to_Vendor,\r\n \"Subsidy To Farmer\": d.Subsidy_Amt_Farmer,\r\n \"Subsidy Amount Stage 1\": d.Subsidy_Amt_Stage1,\r\n \"Subsidy Amount Stage 2\": d.Subsidy_Amt_Stage2,\r\n \"Subsidy Amount Stage 3\": d.Subsidy_Amt_Stage3,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n \r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'SUBSIDY_WISE_DETAILS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME'| translate}}\r\n \r\n \r\n \r\n {{'TYPE_OF_WATER_SOURCE'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_SHARE_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_TO_VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_AMOUNT_STAGE1'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_AMOUNT_STAGE2'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_AMOUNT_STAGE3'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ res?.AppID }}\r\n {{ res?.District }}\r\n {{ res?.Block }}\r\n {{ res?.Village }}\r\n {{ res?.ProgramName }}\r\n {{ res?.VendorName }}\r\n {{ res?.Scheme }}\r\n {{ res?.Water_Source_Name }}\r\n {{ res?.FinYear }}\r\n {{ res?.FarmerShare_to_Vendor }}\r\n {{ res?.Subsidy_to_Vendor }}\r\n {{ res?.Subsidy_Amt_Farmer }}\r\n {{ res?.Subsidy_Amt_Stage1 }}\r\n {{ res?.Subsidy_Amt_Stage2 }}\r\n {{ res?.Subsidy_Amt_Stage3 }}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{tableDataToShow ? tableDataToShow.length : 0 }}\r\n {{'SUBSIDY_WISE_DETAILS'| translate}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TankAbstract } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-tank-abstract-report',\r\n templateUrl: './tank-abstract-report.component.html',\r\n styleUrls: ['./tank-abstract-report.component.scss']\r\n})\r\nexport class TankAbstractReportComponent implements OnInit {\r\n\r\n tankAbstract: any[];\r\n tankApp: any;\r\n tankCoverageArea:any;\r\n tankVerifiedApp:any;\r\n tankRpApp:any;\r\n tankRejectedApp:any;\r\n tankVerifiedCoverageApp:any;\r\n grandTankApp:number;\r\n grandTankCoverageArea:number;\r\n grandTankVerifiedApp:number;\r\n grandTankRpApp:number;\r\n grandTankRejectedApp:number;\r\n grandTankVerifiedCoverageApp:number;\r\n arrayIndex:number;\r\n tempTankAbstract: any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: TankAbstract[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n drilldownDetails:any;\r\n public userID: any;\r\n value:any;\r\n displayMaximizable_all:any\r\n displayMaximizable_verified:any\r\n displayMaximizable_rp:any\r\n displayMaximizable_rejected:any\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Tank_Abstract_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Tank_Abstract_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getTankAbstract_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.tankAbstract = data;\r\n this.appVerificationModel = data;\r\n this.tempTankAbstract=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.tankAbstract = [];\r\n this.appVerificationModel = [];\r\n this.tempTankAbstract=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Tank Abstract Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Tank App\" : d.Tank_App,\r\n \"Tank Coverage Area\": d.Tank_Coverage_Area,\r\n \"Tank Verified App\": d.Tank_Verified_App,\r\n \"Tank RP App\": d.Tank_RP_App,\r\n \"tank Rejected App\": d.tank_Rejected_App,\r\n \"Tank Verified Coverage Area\": d.Tank_Verified_Coverage_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n {field: 'Tank_App', header: 'Tank App'},\r\n { field: 'Tank_Coverage_Area', header: 'Tank Coverage Area' },\r\n { field: 'Tank_Verified_App', header: 'Tank Verified App' },\r\n {field: 'Tank_RP_App', header: 'Tank RP App'},\r\n {field: 'tank_Rejected_App', header: 'tank Rejected App'},\r\n {field: 'Tank_Verified_Coverage_Area', header: 'Tank Verified Coverage Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempTankAbstract=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.tankApp=0;\r\n this.tankCoverageArea=0;\r\n this.tankVerifiedApp=0;\r\n this.tankRpApp=0;\r\n this.tankRejectedApp=0;\r\n this.tankVerifiedCoverageApp=0;\r\n for(let i=this.arrayIndex ;this.tempTankAbstract.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'TANK_ABSTRACT_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TANK_APP'| translate}}\r\n \r\n \r\n \r\n {{'TANK_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TANK_VERIFIED_APP'| translate}}\r\n \r\n \r\n \r\n {{'TANK_RP_APP'| translate}}\r\n \r\n \r\n \r\n {{'TANK_REJECTED_APP'| translate}}\r\n \r\n \r\n \r\n {{'TANK_VERIFIED_COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{tankAbstract.District}}\r\n {{tankAbstract.Tank_App}}\r\n {{tankAbstract.Tank_Coverage_Area}}\r\n {{tankAbstract.Tank_Verified_App}}\r\n {{tankAbstract.Tank_RP_App}}\r\n {{tankAbstract.tank_Rejected_App}}\r\n {{tankAbstract.Tank_Verified_Coverage_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{tankApp | number:'1.0-2'}}\r\n {{tankCoverageArea | number:'1.0-2'}}\r\n {{tankVerifiedApp | number:'1.0-2'}}\r\n {{tankRpApp | number:'1.0-2'}}\r\n {{tankRejectedApp | number:'1.0-2'}}\r\n {{tankVerifiedCoverageApp | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTankApp | number:'1.0-2'}}\r\n {{grandTankCoverageArea | number:'1.0-2'}}\r\n {{grandTankVerifiedApp | number:'1.0-2'}}\r\n {{grandTankRpApp | number:'1.0-2'}}\r\n {{grandTankRejectedApp | number:'1.0-2'}}\r\n {{grandTankVerifiedCoverageApp | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Location } from '@angular/common'\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-mi-consolidated-count-wise-vendor-report',\r\n templateUrl: './mi-consolidated-count-wise-vendor-report.component.html',\r\n styleUrls: ['./mi-consolidated-count-wise-vendor-report.component.scss']\r\n})\r\nexport class MiConsolidatedCountWiseVendorReportComponent implements OnInit {\r\n @Input() finyear: string;\r\n // @Input() vendorCode: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n miUnderProcessReport: MenuItem[];\r\n \r\n public actionType: any;\r\n // public finYear: any;\r\n public miTableData: any = [];\r\n public miTableDataWithFilter: any = [];\r\n public loading: boolean = false;\r\n public userId: any;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public isAdminLogin: boolean = false;\r\n public underProcessCount: any;\r\n public showDrillDownTable: boolean = false;\r\n\r\n public miBifurcatedData: any;\r\n public options1: any;\r\n\r\n public tableHeaderName = 'Application Details';\r\n public tableHeaderColor = '#FFFFFF';\r\n\r\n public actionTypesFromTableData: any = [];\r\n\r\n public selectedMIUnderProcFilter: any;\r\n public miUnderProcFilterList: any = [];\r\n vendorCode:any\r\n userType:any\r\n // visible: boolean = false;\r\n\r\n // showDialog() {\r\n // this.visible = true;\r\n // }\r\n constructor(\r\n private route: ActivatedRoute,\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private location: Location,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n // items: MenuItem[];\r\n \r\n // activeIndex: number = 0;\r\n\r\n ngOnInit(): void {\r\n // this.items = [\r\n // {\r\n // label: 'Personal',\r\n // routerLink: 'personal',\r\n // status: 'success', // Success status for Personal\r\n // },\r\n // {\r\n // label: 'Seat',\r\n // routerLink: 'seat',\r\n // status: 'pending', // Pending status for Seat\r\n // },\r\n // {\r\n // label: 'Payment',\r\n // routerLink: 'payment',\r\n // status: 'pending', // Pending status for Payment\r\n // },\r\n // ];\r\n // this.actionType = this.route.snapshot.paramMap.get('actionType');\r\n // this.finYear = this.route.snapshot.paramMap.get('finYear');\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode;\r\n\r\n // this.userIdUpperCase = JSON.parse(payload)?.sub\r\n this.userType=JSON.parse(sessionToken).role\r\n\r\n // console.log(this.finYear, this.actionType);\r\n\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n // if(this.actionType == 3){\r\n // console.log('action type 3');\r\n // this.loadCountBoxesData();\r\n // }else{\r\n // this.loadMIData('3');\r\n // }\r\n\r\n this.loadCountBoxesData();\r\n\r\n this.miUnderProcessReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'App_Verification_List'\r\n // );\r\n // },\r\n // },\r\n ];\r\n }\r\n\r\n // getStepClass(step: MenuItem) {\r\n // return step.status === 'success' ? 'success' : 'pending';\r\n // }\r\n // nextStep() {\r\n // if (this.activeIndex < this.items.length - 1) {\r\n // this.activeIndex++;\r\n // }\r\n // }\r\n \r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appid,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n 'KYC Status': d.KYCStatus,\r\n 'KYC Date': d.TransDate,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadCountBoxesData() {\r\n this.loader.start();\r\n\r\n let sub = this.reportsService\r\n .getMIAggTabsUnProcessedAppsCountNewVendor(this.vendorCode, this.finyear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // console.log(data.length, data)\r\n if (data?.length > 0) {\r\n this.underProcessCount = data[0];\r\n console.log(this.underProcessCount)\r\n this.loadMIBifurcatedDataForGraph();\r\n } else {\r\n this.underProcessCount = null;\r\n this.loadMIBifurcatedDataForGraph();\r\n }\r\n // console.log(this.underProcessCount)\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loader.close();\r\n this.underProcessCount = null;\r\n this.loadMIBifurcatedDataForGraph();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n loadMIBifurcatedDataForGraph() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n console.log(this.underProcessCount);\r\n this.miBifurcatedData = {\r\n // labels: [`MI(PDMC) Applications: (${miTotalCount}) `, `Pond/Tank Applications: (${pondTotalCount})`],\r\n labels: ['App Scrutiny/Verification', \r\n 'Pre-Survey By Vendor', \r\n 'Vendor Estimate', \r\n 'Estimate Scrutiny/Verification', \r\n 'Challan(FS) Generation',\r\n 'Farmer Share Deposited',\r\n 'Installation',\r\n 'Field Inspection',\r\n 'Subsidy Approvals',\r\n 'Subsidy Lots Creation',\r\n 'Subsidy Disbursement',\r\n ],\r\n datasets: [\r\n {\r\n data: [\r\n this.underProcessCount?.IncompleteApps, \r\n this.underProcessCount?.preestimate, \r\n this.underProcessCount?.pendingEstimateApp, \r\n this.underProcessCount?.pendingEstApproved, \r\n this.underProcessCount?.pending_challan, \r\n this.underProcessCount?.pending_challan_deposit, \r\n this.underProcessCount?.Pending_BOQ, \r\n this.underProcessCount?.pending_PV, \r\n this.underProcessCount?.pending_Subsidy, \r\n this.underProcessCount?.pending_lot, \r\n this.underProcessCount?.pending_subsidy_disbursal\r\n ],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-600'),\r\n // documentStyle.getPropertyValue('--yellow-600'),\r\n '#00b33c',\r\n '#8a8a5c',\r\n '#ff0000',\r\n '#ff9900',\r\n '#3939ac',\r\n '#b30000',\r\n '#408000',\r\n '#2952a3',\r\n '#b30059',\r\n '#52527a',\r\n '#e67300'\r\n // documentStyle.getPropertyValue('--blue-500')\r\n // documentStyle.getPropertyValue('--pink-500'),\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--yellow-500'),\r\n '#00b33c',\r\n '#8a8a5c',\r\n '#ff0000',\r\n '#ff9900',\r\n '#3939ac',\r\n '#b30000',\r\n '#408000',\r\n '#2952a3',\r\n '#b30059',\r\n '#52527a',\r\n '#e67300'\r\n // documentStyle.getPropertyValue('--pink-400'),\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // stepSize: 20,\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n }\r\n };\r\n\r\n // this.options1 = {\r\n // maintainAspectRatio: false,\r\n // aspectRatio: 0.8,\r\n // plugins: {\r\n // datalabels: {\r\n // anchor: 'end',\r\n // align: 'end',\r\n // color: 'black',\r\n // font: {\r\n // weight: 'bold'\r\n // }\r\n // },\r\n // legend: {\r\n // display: false // Hide the legend\r\n // }\r\n // },\r\n // scales: {\r\n // x: {\r\n // ticks: {\r\n // color: textColor,\r\n // font: {\r\n // weight: 500\r\n // }\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // },\r\n // y: {\r\n // ticks: {\r\n // color: textColor\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n // }\r\n // };\r\n }\r\n\r\n onMIChartClick(event){\r\n this.selectedMIUnderProcFilter = null;\r\n if(event?.element?.index == 0){\r\n this.onClickCountBox('AppVerification');\r\n this.tableHeaderName = 'Application Scrutiny/Verification';\r\n this.tableHeaderColor = '#00b33c';\r\n }else if(event?.element?.index == 1){\r\n this.onClickCountBox('PreEstimation');\r\n this.tableHeaderName = 'Pre-Survey By Vendor';\r\n this.tableHeaderColor = '#8a8a5c';\r\n }else if(event?.element?.index == 2){\r\n this.onClickCountBox('Estimation');\r\n this.tableHeaderName = 'Vendor Estimate';\r\n this.tableHeaderColor = '#ff0000';\r\n }else if(event?.element?.index == 3){\r\n this.onClickCountBox('EstVerification');\r\n this.tableHeaderName = 'Estimate Scrutiny/Verification';\r\n this.tableHeaderColor = '#ff9900';\r\n }else if(event?.element?.index == 4){\r\n this.onClickCountBox('Challan');\r\n this.tableHeaderName = 'Challan(FS) Generation';\r\n this.tableHeaderColor = '#3939ac';\r\n }else if(event?.element?.index == 5){\r\n this.onClickCountBox('ChallanDeposited');\r\n this.tableHeaderName = 'Farmer Share Deposited';\r\n this.tableHeaderColor = '#b30000';\r\n }else if(event?.element?.index == 6){\r\n this.onClickCountBox('BOQ');\r\n this.tableHeaderName = 'Installation';\r\n this.tableHeaderColor = '#408000';\r\n }else if(event?.element?.index == 7){\r\n this.onClickCountBox('PVVerification');\r\n this.tableHeaderName = 'Field Inspection';\r\n this.tableHeaderColor = '#2952a3';\r\n }else if(event?.element?.index == 8){\r\n this.onClickCountBox('Subsidy');\r\n this.tableHeaderName = 'Subsidy Approvals';\r\n this.tableHeaderColor = '#b30059';\r\n }else if(event?.element?.index == 9){\r\n this.onClickCountBox('subsidy_lot');\r\n this.tableHeaderName = 'Subsidy Lots Creation'\r\n this.tableHeaderColor = '#52527a';\r\n }else if(event?.element?.index == 10){\r\n this.onClickCountBox('subsidyDis');\r\n this.tableHeaderName = 'Subsidy Disbursement';\r\n this.tableHeaderColor = '#e67300';\r\n }\r\n }\r\n\r\n // loadMIData(count) {\r\n // if(count == 3){\r\n // this.loader.start();\r\n // }else{\r\n // this.loader.close();\r\n // }\r\n // let sub = this.reportsService\r\n // .getConsolidatedAggReportNew2DrillDown(this.finYear, this.actionType, count)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.loader.close();\r\n // if (data?.length > 0) {\r\n // if(count == '1'){\r\n // this.miTableData = data;\r\n // if(data.length == 100){\r\n // this.loadMIData('2');\r\n // }\r\n // }else if(count == '2'){\r\n // this.miTableData = data;\r\n // if(data.length == 1000){\r\n // this.loadMIData('3');\r\n // }\r\n // }else if(count == '3'){\r\n // this.miTableData = data;\r\n // }\r\n // } else {\r\n // if(count == '1'){\r\n // this.miTableData = [];\r\n // }\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // if(count == '1'){\r\n // this.miTableData = [];\r\n // }\r\n // },\r\n // });\r\n\r\n // this.subscriptions.push(sub);\r\n // }\r\n\r\n printForm(appId) {\r\n \r\n if (appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', appId], { queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n\r\n // if(this.subjectSub)\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // console.log(payload, this.userID);\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else if(this.userType== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(appId)]));\r\n // window.open(link, '_blank');\r\n }\r\n }\r\n else{\r\n // this.messageService.add({\r\n // summary: 'Error Message',\r\n // severity: 'info',\r\n // detail: 'Application Id Not Found',\r\n // });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.loader.close();\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onClickBack(){\r\n this.location.back();\r\n }\r\n // onSelect(type:any){\r\n // this.loadMIData(type)\r\n // }\r\n\r\n onClickCountBox(val){\r\n this.showDrillDownTable = true;\r\n console.log(val)\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.ngOnDestroy();\r\n this.loadMIDataUnderProcess(val, 0);\r\n setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n }\r\n\r\n loadMIDataUnderProcess(subActionType, autoId) {\r\n // this.loader.start();\r\n if (autoId == 0) {\r\n this.loading = true;\r\n }\r\n let sub = this.reportsService\r\n .getMIAggTabsUnProcessedAppsDrillDownNewVendor(this.finyear, subActionType,this.vendorCode,this.userType,autoId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.miTableData = data;\r\n this.miTableDataWithFilter = data;\r\n\r\n // Using the function to get unique actionTypes\r\n this.actionTypesFromTableData, this.miUnderProcFilterList = this.getUniqueActionType(data);\r\n\r\n console.log(this.actionTypesFromTableData)\r\n }else{\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n this.loading = false;\r\n this.miTableData = [];\r\n this.miTableDataWithFilter = [];\r\n this.actionTypesFromTableData = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n // getUniqueActionType(data) {\r\n // const districts = data.map(entry => entry?.nextuser);\r\n // return [...new Set(districts)];\r\n // }\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n\r\n onSelectMIConsFilter(){\r\n if(this.selectedMIUnderProcFilter != null){\r\n this.miTableDataWithFilter = this.miTableData.filter(item => item.nextuser === this.selectedMIUnderProcFilter?.actionLevel);\r\n }else{\r\n this.miTableDataWithFilter = this.miTableData;\r\n }\r\n }\r\n \r\n}\r\n\r\n","
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'APP_VERIFICATION' | translate}}
\r\n
{{ underProcessCount?.IncompleteApps | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'PRE_SURVEY' | translate}}
\r\n
{{ underProcessCount?.preestimate | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'VENDOR_ESTIMATES' | translate}}
\r\n
{{ underProcessCount?.pendingEstimateApp | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'ESTIMATE_VERIFICATION' | translate}}
\r\n
{{ underProcessCount?.pendingEstApproved | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'CHALLAN_GENERATION' | translate}}
\r\n
{{ underProcessCount?.pending_challan | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'CHALLAN_DEPOSITED' | translate}}
\r\n
{{ underProcessCount?.pending_challan_deposit | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'BOQ' | translate}}
\r\n
{{ underProcessCount?.Pending_BOQ | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'PHYSICAL_VER' | translate}}
\r\n
{{ underProcessCount?.pending_PV | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'SUBSIDY_CALCULATION' | translate}}
\r\n
{{ underProcessCount?.pending_Subsidy | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'LOT_GENERATION' | translate}}
\r\n
{{ underProcessCount?.pending_lot | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'SUBSIDY_DISBURSEMENT' | translate}}
\r\n
{{ underProcessCount?.pending_subsidy_disbursal | number:'1.0-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'CURRENT_LEVEL'| translate}}\r\n {{'CURRENT_ACTION'| translate}}\r\n {{'LAST_ACTION_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n {{'PENDING_LEVEL'| translate}}\r\n \r\n {{'PENDING_ACTION'| translate}}\r\n {{'KYC Status'| translate}}\r\n {{'KYC Date'| translate}}\r\n {{'VIEW' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.appid}}\r\n {{consolidateData?.District}}\r\n {{consolidateData?.Block}}\r\n {{consolidateData?.Village}}\r\n {{consolidateData?.Level_ID}}\r\n {{consolidateData?.ActionType}}\r\n {{consolidateData?.assigneddate | date: \"mediumDate\"}}\r\n {{consolidateData?.Status}}\r\n {{consolidateData?.nextuser}}\r\n {{consolidateData?.NextAction}}\r\n {{consolidateData?.KYCStatus}}\r\n {{consolidateData?.TransDate | date: \"mediumDate\"}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Chart } from 'chart.js';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { InnerPageLayoutComponent } from 'src/app/components/layouts/inner-page-layout/inner-page-layout.component';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport ChartDataLabels from 'chartjs-plugin-datalabels';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-dashboard',\r\n templateUrl: './vendor-dashboard.component.html',\r\n styleUrls: ['./vendor-dashboard.component.scss']\r\n})\r\nexport class VendorDashboardComponent implements OnInit {\r\n\r\n @ViewChild('divClick') divClick: ElementRef;\r\n @ViewChild('miDrillDownData') miDrillDownData: ElementRef;\r\n @ViewChild('pondDrillDownData') pondDrillDownData: ElementRef;\r\n @ViewChild('miDistrictWiseDataCard') miDistrictWiseDataCard: ElementRef;\r\n\r\n public pieChartData: any = [];\r\n public options: any;\r\n public options1: any;\r\n public options2: any;\r\n public optionsLine: any;\r\n public optionsMIDW: any;\r\n public optionsSubsidy: any;\r\n public optionsCaste: any;\r\n public optionsAppType: any;\r\n public optionsComponent: any;\r\n\r\n\r\n public miData: any;\r\n public miBifurcatedData: any;\r\n \r\n public pondData: any;\r\n public pondBifurcatedData: any;\r\n \r\n public miDistrictWiseData: any;\r\n public miDistrictWiseDataForChart: any;\r\n\r\n public miDistrictWiseDashboardData: any;\r\n\r\n // public subsidyData: any;\r\n public subsidyDataForChart: any;\r\n \r\n public subsidyAreaDataForChart: any;\r\n public subsidyAmountDataForChart: any;\r\n\r\n // public casteData: any;\r\n public casteDataForChart: any;\r\n\r\n // public appTypeData: any;\r\n public appTypeDataForChart: any;\r\n\r\n // public componentData: any;\r\n public componentDataForChart: any;\r\n\r\n // public yearWiseData: any;\r\n public yearWiseDataForChart: any;\r\n\r\n public showMIUnderProcessDetails: boolean = false;\r\n public showMICompletedDetails: boolean = false;\r\n public showMIRejectedDetails: boolean = false;\r\n public showMIIncompletedDetails: boolean = false;\r\n public showMITotalDDDetails: boolean = false;\r\n public showMITotalDetails: boolean = false;\r\n\r\n public showPondUnderProcessDetails: boolean = false;\r\n\r\n public pieChartOptions: any = {}\r\n\r\n public districtWiseHeader = `All districts details`;\r\n\r\n public userId: any;\r\n\r\n public totalSubsidyDisbursed: number = 0;\r\n public totalAppCompleted: number = 0;\r\n public totalMIAreaCompleted: number = 0;\r\n\r\n // private targetTotalSubsidyDisbursed = 0;\r\n // private targetTotalAppCompleted = 0;\r\n // private targetTotalMIAreaCompleted = 0;\r\n userType:any\r\n public showMIDistrciData: boolean = false;\r\n vendorCode:any\r\n\r\n public selectedYearForData: any = '';\r\n\r\n constructor(\r\n public appMain: InnerPageLayoutComponent,\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { \r\n Chart.register(ChartDataLabels);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.selectedYearForData = '';\r\n setTimeout(() => {\r\n this.divClick.nativeElement.click();\r\n }, 200);\r\n\r\n this.animateCounter('totalSubsidyDisbursed', this.totalSubsidyDisbursed);\r\n this.animateCounter('totalAppCompleted', this.totalAppCompleted);\r\n this.animateCounter('totalMIAreaCompleted', this.totalMIAreaCompleted);\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = (JSON.parse(payload)?.sub).toLowerCase();\r\n this.vendorCode=JSON.parse(sessionToken).officeCode\r\n // this.userIdUpperCase = JSON.parse(payload)?.sub\r\n this.userType = JSON.parse(sessionToken).role;\r\n\r\n\r\n this.loadMIData()\r\n this.loadPondData()\r\n if(this.userType=='Vendor'){\r\n this.loadMIDistrictWiseData();\r\n this.loadMIDistrictWiseDashboardData('');\r\n this.showMIDistrciData = true;\r\n this.districtWiseHeader = `All districts details`\r\n }\r\n }\r\n private animateCounter(property: string, endValue: number): void {\r\n const duration = 2000; // Duration of the animation in milliseconds\r\n const frameRate = 60; // Number of updates per second\r\n const totalFrames = (duration / 1000) * frameRate;\r\n let frame = 0;\r\n\r\n const intervalId = setInterval(() => {\r\n frame++;\r\n const progress = frame / totalFrames;\r\n const currentCount = Math.floor(progress * endValue);\r\n\r\n this[property] = currentCount;\r\n\r\n if (frame >= totalFrames) {\r\n clearInterval(intervalId);\r\n this[property] = endValue; // Ensure the final value is set\r\n }\r\n }, 1000 / frameRate);\r\n }\r\n\r\n loadMIData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getMIAggregateTabsDataNewVendor(this.selectedYearForData, this.userType, this.vendorCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miData = data[0];\r\n this.loadPieChartData();\r\n this.loadMIBifurcatedData();\r\n\r\n //save data in session storage\r\n // if (finYear == '') {\r\n // window.sessionStorage.setItem('MIDataAll', JSON.stringify(data));\r\n // }\r\n // else if (finYear == '2022-23') {\r\n // window.sessionStorage.setItem('MIData2223', JSON.stringify(data));\r\n // }\r\n // else if (finYear == '2023-24') {\r\n // window.sessionStorage.setItem('MIData2324', JSON.stringify(data));\r\n // }\r\n\r\n } else {\r\n this.miData = [];\r\n this.loadPieChartData();\r\n this.loadMIBifurcatedData();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miData = [];\r\n\r\n this.loadPieChartData();\r\n this.loadMIBifurcatedData();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadPondData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getPondAggregateTabsDataNew(this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.pondData = data[0];\r\n this.loadPieChartData();\r\n this.loadPondBifurcatedData();\r\n\r\n // //save data in session storage\r\n // if (finYear == '') {\r\n // window.sessionStorage.setItem('MIDataAll', JSON.stringify(data));\r\n // }\r\n // else if (finYear == '2022-23') {\r\n // window.sessionStorage.setItem('MIData2223', JSON.stringify(data));\r\n // }\r\n // else if (finYear == '2023-24') {\r\n // window.sessionStorage.setItem('MIData2324', JSON.stringify(data));\r\n // }\r\n\r\n } else {\r\n this.pondData = [];\r\n this.loadPieChartData();\r\n this.loadPondBifurcatedData();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.pondData = [];\r\n\r\n this.loadPieChartData();\r\n this.loadPondBifurcatedData();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadPieChartData1() {\r\n\r\n let miTotalCount = this.miData ? (this.miData?.totalApp ? this.miData?.totalApp : 0) : 0;\r\n let pondTotalCount = this.pondData ? (this.pondData?.totalApp ? this.pondData?.totalApp : 0) : 0;\r\n\r\n\r\n this.pieChartOptions = {\r\n animationEnabled: true,\r\n theme: \"dark2\",\r\n colorSet: \"customColorSet\",\r\n title: {\r\n text: \"Total Applications\"\r\n },\r\n data: [{\r\n type: \"doughnut\",\r\n indexLabel: \"{name}: {y}\",\r\n innerRadius: \"90%\",\r\n yValueFormatString: \"#,##0.00\",\r\n dataPoints: [\r\n { y: miTotalCount, name: `MI(PDMC)` },\r\n { y: pondTotalCount, name: `Pond/Tank` },\r\n ]\r\n }]\r\n }\r\n }\r\n\r\n loadPieChartData() {\r\n // let labels = [];\r\n // let areaData = [];\r\n // let backgroundColors = [];\r\n // for (let index = 0; index < this.districtWiseData.length; index++) {\r\n // labels.push(this.districtWiseData[index].District)\r\n // areaData.push(this.districtWiseData[index].totalApp)\r\n // const randomColor = \"#\" + ((1 << 24) * Math.random() | 0).toString(16);\r\n // backgroundColors.push(randomColor)\r\n // }\r\n // this.pieChartData.labels = labels;\r\n // this.pieChartData.datasets[0].data = areaData;\r\n // this.pieChartData.datasets[0].backgroundColor = backgroundColors;\r\n // this.pieChartRef.reinit();\r\n\r\n\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n\r\n let miTotalCount = this.miData ? (this.miData?.totalApp ? this.miData?.totalApp : 0) : 0;\r\n let pondTotalCount = this.pondData ? (this.pondData?.totalApp ? this.pondData?.totalApp : 0) : 0;\r\n\r\n\r\n // this.pieChartData = {\r\n // labels: [`MI(PDMC): (${miTotalCount}) `, `Pond/Tank: (${pondTotalCount})`],\r\n // datasets: [\r\n // {\r\n // data: [miTotalCount, pondTotalCount],\r\n // backgroundColor: [\r\n // // documentStyle.getPropertyValue('--green-500'),\r\n // // documentStyle.getPropertyValue('--bluegray-500'),\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 102, 204)',\r\n // ],\r\n // hoverBackgroundColor: [\r\n // // documentStyle.getPropertyValue('--green-400'),\r\n // // documentStyle.getPropertyValue('--bluegray-500'),\r\n // 'rgb(51, 153, 102)',\r\n // 'rgb(0, 102, 204)',\r\n // ],\r\n // borderWidth: 2\r\n // },\r\n // ],\r\n // };\r\n\r\n this.options = {\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: '#FFFFFF',\r\n offset: -7,\r\n font: {\r\n weight: 'bold',\r\n size: 8 \r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n };\r\n }\r\n\r\n loadMIBifurcatedData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n this.miBifurcatedData = {\r\n // labels: [`MI(PDMC) Applications: (${miTotalCount}) `, `Pond/Tank Applications: (${pondTotalCount})`],\r\n labels: ['Completed', 'Under Process', 'Rejected', 'Incomplete'],\r\n datasets: [\r\n {\r\n data: [this.miData?.CompletedApps, this.miData?.UnProcessedApps, this.miData?.rejectedApp, this.miData?.InCompleteApps],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-600'),\r\n // documentStyle.getPropertyValue('--yellow-600'),\r\n '#2eb82e',\r\n '#e6e600',\r\n '#ff0000',\r\n '#ff9900',\r\n // documentStyle.getPropertyValue('--blue-500')\r\n // documentStyle.getPropertyValue('--pink-500'),\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--yellow-500'),\r\n '#5cd65c',\r\n '#ffff00',\r\n '#ff6666',\r\n '#ffc266',\r\n // documentStyle.getPropertyValue('--pink-400'),\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // stepSize: 20,\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n }\r\n };\r\n\r\n // this.options1 = {\r\n // maintainAspectRatio: false,\r\n // aspectRatio: 0.8,\r\n // plugins: {\r\n // datalabels: {\r\n // anchor: 'end',\r\n // align: 'end',\r\n // color: 'black',\r\n // font: {\r\n // weight: 'bold'\r\n // }\r\n // },\r\n // legend: {\r\n // display: false // Hide the legend\r\n // }\r\n // },\r\n // scales: {\r\n // x: {\r\n // ticks: {\r\n // color: textColor,\r\n // font: {\r\n // weight: 500\r\n // }\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // },\r\n // y: {\r\n // ticks: {\r\n // color: textColor\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n // }\r\n // };\r\n }\r\n\r\n loadPondBifurcatedData() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n this.pondBifurcatedData = {\r\n // labels: [`MI(PDMC) Applications: (${miTotalCount}) `, `Pond/Tank Applications: (${pondTotalCount})`],\r\n labels: ['Completed', 'Under Process', 'Rejected', 'Incomplete'],\r\n datasets: [\r\n {\r\n data: [this.pondData?.CompletedApps, this.pondData?.UnProcessedApps, this.pondData?.rejectedApp, this.pondData?.InCompleteApps],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-600'),\r\n // documentStyle.getPropertyValue('--yellow-600'),\r\n '#2eb82e',\r\n '#e6e600',\r\n '#ff0000',\r\n '#ff9900',\r\n // documentStyle.getPropertyValue('--blue-500')\r\n // documentStyle.getPropertyValue('--pink-500'),\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--yellow-500'),\r\n '#5cd65c',\r\n '#ffff00',\r\n '#ff6666',\r\n '#ffc266',\r\n // documentStyle.getPropertyValue('--pink-400'),\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n\r\n this.options1 = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // stepSize: 20,\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n }\r\n };\r\n }\r\n\r\n onMIChartClick(event) {\r\n // if (event?.element?.index == 1) {\r\n // setTimeout( () => this.miDrillDownData.nativeElement.scrollIntoView({\r\n // block: \"center\",\r\n // behavior: \"smooth\"\r\n // }), 400)\r\n // this.showMIUnderProcessDetails = true;\r\n // this.showPondUnderProcessDetails = false;\r\n // } else{\r\n // this.showMIUnderProcessDetails = false;\r\n // this.showPondUnderProcessDetails = false;\r\n // }\r\n\r\n if (event?.element?.index == 0) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMICompletedDetails = true;\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n }\r\n else if (event?.element?.index == 1) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMIUnderProcessDetails = true;\r\n this.showPondUnderProcessDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = false;\r\n } else if (event?.element?.index == 2) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIRejectedDetails = true;\r\n this.showMIIncompletedDetails = false;\r\n }\r\n else if (event?.element?.index == 3) {\r\n setTimeout(() => this.miDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n this.showMICompletedDetails = false;\r\n this.showMIRejectedDetails = false;\r\n this.showMIIncompletedDetails = true;\r\n }\r\n else {\r\n this.showMIUnderProcessDetails = false;\r\n this.showPondUnderProcessDetails = false;\r\n\r\n this.showMICompletedDetails = false;\r\n\r\n this.showMIRejectedDetails = false;\r\n\r\n this.showMIIncompletedDetails = false;\r\n }\r\n }\r\n\r\n onPondChartClick(event) {\r\n if (event?.element?.index == 1) {\r\n setTimeout( () => this.pondDrillDownData.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n // this.showPondUnderProcessDetails = true;\r\n this.showPondUnderProcessDetails = false;\r\n this.showMIUnderProcessDetails = false;\r\n } else {\r\n this.showPondUnderProcessDetails = false;\r\n this.showMIUnderProcessDetails = false;\r\n }\r\n }\r\n\r\n onPieChartClick(event) {\r\n console.log(event?.element?.index ,\"event?.element?.index \")\r\n if (event?.element?.index == 0) {\r\n // console.log('MI');\r\n // this.showMITotalDetails = true;\r\n this.loadMIDistrictWiseData();\r\n this.loadMIDistrictWiseDashboardData('');\r\n this.showMIDistrciData = true;\r\n this.districtWiseHeader = `All districts details`\r\n } else if (event?.element?.index == 1) {\r\n // console.log('Pond');\r\n // this.showMITotalDetails = false;\r\n }else{\r\n // this.showMITotalDetails = false;\r\n }\r\n }\r\n\r\n loadMIDistrictWiseData() {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getDistrictWiseAllCountDashboardVendor('', 'DistrictWise', this.vendorCode, this.selectedYearForData)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miDistrictWiseData = data;\r\n this.loadMIDistrictWiseDataForChart();\r\n \r\n } else {\r\n this.miDistrictWiseData = [];\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miDistrictWiseData = [];\r\n this.loadMIDistrictWiseDataForChart();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMIDistrictWiseDashboardData(districtCode) {\r\n this.loader.start();\r\n let sub = this.reportsService\r\n .getDataForDashboardGraphsVendor(districtCode,this.userType,this.vendorCode, '')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data?.length > 0) {\r\n this.miDistrictWiseDashboardData = data;\r\n this.loadPieDataDistrictWise();\r\n } else {\r\n this.miDistrictWiseDashboardData = [];\r\n this.loadPieDataDistrictWise();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Available',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miDistrictWiseDashboardData = [];\r\n this.loadPieDataDistrictWise();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMIDistrictWiseDataForChart() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n const districts = this.miDistrictWiseData.map(item => item.District);\r\n const totalApp = this.miDistrictWiseData.map(item => item.totalApp);\r\n\r\n \r\n this.miDistrictWiseDataForChart = {\r\n labels: districts,\r\n datasets: [\r\n {\r\n data: totalApp,\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-600'),\r\n // documentStyle.getPropertyValue('--yellow-600'),\r\n // documentStyle.getPropertyValue('--blue-500')\r\n // documentStyle.getPropertyValue('--pink-500'),\r\n // '#2eb82e',\r\n // '#e6e600',\r\n // '#ff0000',\r\n // '#ff9900',\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n hoverBackgroundColor: [\r\n '#dd4b39',\r\n 'rgb(0, 102, 204)',\r\n 'rgb(153, 153, 102)',\r\n 'rgb(191, 128, 64)',\r\n 'rgb(51, 153, 102)',\r\n '#00bcd4'\r\n ],\r\n label: ''\r\n },\r\n ],\r\n };\r\n\r\n this.optionsMIDW = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.8,\r\n plugins: {\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n display: false // Hide the legend\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n // y: {\r\n // ticks: {\r\n // color: textColor,\r\n // stepSize: 20,\r\n // },\r\n // grid: {\r\n // color: surfaceBorder,\r\n // drawBorder: false\r\n // }\r\n // }\r\n\r\n }\r\n };\r\n }\r\n\r\n onDistrictChartClick(event){\r\n let districtCode: any = '';\r\n let selectedDistrict: any = 'All District';\r\n let indexVal = event?.element?.index;\r\n if(indexVal == 0){\r\n districtCode = '01'; //Ambala\r\n selectedDistrict = 'Ambala';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 1){\r\n districtCode = '02'; // Bhiwani\r\n selectedDistrict = 'Bhiwani';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 3){\r\n districtCode = '03'; // Faridabad\r\n selectedDistrict = 'Faridabad';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 4){\r\n districtCode = '04'; // Fatehabad\r\n selectedDistrict = 'Fatehabad';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 5){\r\n districtCode = '05'; // Gurugram\r\n selectedDistrict = 'Gurugram';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 6){\r\n districtCode = '06'; // Hissar\r\n selectedDistrict = 'Hissar';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 7){\r\n districtCode = '07'; // Jhajjar\r\n selectedDistrict = 'Jhajjar';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 8){\r\n districtCode = '08'; // Jind\r\n selectedDistrict = 'Jind';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 9){\r\n districtCode = '09'; // Kaithal\r\n selectedDistrict = 'Kaithal';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 10){\r\n districtCode = '10'; // Karnal\r\n selectedDistrict = 'Karnal';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 11){\r\n districtCode = '11'; // Kurukshetra\r\n selectedDistrict = 'Kurukshetra';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 12){\r\n districtCode = '12'; // Mahindergarh\r\n selectedDistrict = 'Mahindergarh';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 15){\r\n districtCode = '13'; // Panchkula\r\n selectedDistrict = 'Panchkula';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 16){\r\n districtCode = '14'; // Panipat\r\n selectedDistrict = 'Panipat';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 17){\r\n districtCode = '15'; // Rewari\r\n selectedDistrict = 'Rewari';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 18){\r\n districtCode = '16'; // Rohtak\r\n selectedDistrict = 'Rohtak';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 19){\r\n districtCode = '17'; // Sirsa\r\n selectedDistrict = 'Sirsa';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 20){\r\n districtCode = '18'; // Sonipat\r\n selectedDistrict = 'Sonipat';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 21){\r\n districtCode = '19'; // Yamunanagar\r\n selectedDistrict = 'Yamunanagar';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 13){\r\n districtCode = '20'; // Nuh\r\n selectedDistrict = 'Nuh';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 14){\r\n districtCode = '21'; // Palwal\r\n selectedDistrict = 'Palwal';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else if(indexVal == 2){\r\n districtCode = '22'; // Charkhi Dadri\r\n selectedDistrict = 'Charkhi Dadri';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }else{\r\n selectedDistrict = 'all district';\r\n this.loadMIDistrictWiseDashboardData(districtCode);\r\n }\r\n\r\n setTimeout( () => this.miDistrictWiseDataCard.nativeElement.scrollIntoView({\r\n block: \"end\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n\r\n this.districtWiseHeader = `District: ${selectedDistrict}`\r\n }\r\n\r\n loadPieDataDistrictWise() {\r\n const documentStyle = getComputedStyle(document.documentElement);\r\n const textColor = documentStyle.getPropertyValue('--text-color');\r\n const surfaceBorder = documentStyle.getPropertyValue('--surface-border');\r\n\r\n // user wise\r\n const atalUserData = this.miDistrictWiseDashboardData[0][0];\r\n const normalUserData = this.miDistrictWiseDashboardData[1][0];\r\n\r\n // caste wise\r\n const casteWiseData = this.miDistrictWiseDashboardData[2];\r\n\r\n // component wise\r\n const componentWiseData = this.miDistrictWiseDashboardData[3];\r\n\r\n // line graph for yearWise area\r\n const yearWiseArea = this.miDistrictWiseDashboardData[4];\r\n console.log(yearWiseArea);\r\n\r\n const completedAppReport = this.miDistrictWiseDashboardData[5][0];\r\n\r\n this.totalSubsidyDisbursed = completedAppReport?.paymentDoneCAO/10000000;\r\n this.totalAppCompleted = completedAppReport?.Payment_Done_Application_By_CAO;\r\n this.totalMIAreaCompleted = completedAppReport?.Payment_done_MI_Area;\r\n\r\n // this.targetTotalSubsidyDisbursed = completedAppReport?.paymentDoneCAO;\r\n // this.targetTotalAppCompleted = completedAppReport?.Payment_Done_Application_By_CAO;\r\n // this.targetTotalMIAreaCompleted = completedAppReport?.totalMIAreaCompleted;\r\n\r\n if(this.showMIDistrciData){\r\n this.animateCounter('totalSubsidyDisbursed', this.totalSubsidyDisbursed);\r\n this.animateCounter('totalAppCompleted', this.totalAppCompleted);\r\n this.animateCounter('totalMIAreaCompleted', this.totalMIAreaCompleted);\r\n }\r\n\r\n this.subsidyDataForChart = {\r\n labels: [`Application Completed`, `Application Pending`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.Payment_Done_Application_By_CAO + normalUserData?.Payment_Done_Application_By_CAO, \r\n (atalUserData?.UnProcessedApps)+(normalUserData?.UnProcessedApps)\r\n ],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--bluegray-500'),\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#09b328',\r\n '#e8c123'\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--green-400'),\r\n // documentStyle.getPropertyValue('--bluegray-500'),\r\n '#09b328',\r\n '#e8c123'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.subsidyAreaDataForChart = {\r\n labels: [`Disbursed Area`, `Pending Area`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.Payment_done_MI_Area + normalUserData?.Payment_done_MI_Area, \r\n (atalUserData?.UnProcessedAppsArea)+(normalUserData?.UnProcessedAppsArea)],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--bluegray-500'),\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#b300b3',\r\n '#0000e6'\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--bluegray-500'),\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n '#b300b3',\r\n '#0000e6'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.subsidyAmountDataForChart = {\r\n labels: [`Disbursed Amount`, `Pending Amount`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.Payment_done_MI_Area + normalUserData?.Payment_done_MI_Area, atalUserData?.pending + normalUserData?.pending],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--green-500'),\r\n // documentStyle.getPropertyValue('--bluegray-500'),\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#8c1aff',\r\n '#e67300'\r\n ],\r\n hoverBackgroundColor: [\r\n // documentStyle.getPropertyValue('--bluegray-500'),\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n '#8c1aff',\r\n '#e67300'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.casteDataForChart = {\r\n labels: [`Gen`, `BC`, `SC/ST`],\r\n datasets: [\r\n {\r\n data: [casteWiseData[1]?.totalApp, casteWiseData[2]?.totalApp, casteWiseData[0]?.totalApp],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#37b4c4',\r\n '#0f48f5',\r\n '#b90cf2'\r\n ],\r\n hoverBackgroundColor: [\r\n '#37b4c4',\r\n '#0f48f5',\r\n '#b90cf2'\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.appTypeDataForChart = {\r\n labels: [`ABY`, `Normal`],\r\n datasets: [\r\n {\r\n data: [atalUserData?.totalApp, normalUserData?.totalApp],\r\n backgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n this.componentDataForChart = {\r\n labels: [`Portable`, `Mini`, `Drip` ],\r\n datasets: [\r\n {\r\n data: [componentWiseData[0]?.TotalApp, componentWiseData[1]?.TotalApp, componentWiseData[2]?.TotalApp],\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#990073',\r\n '#6600ff',\r\n '#00b33c'\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n borderWidth: 2\r\n },\r\n ],\r\n };\r\n\r\n let yearName = yearWiseArea.map(item => item.FinYear);\r\n let yearVal = yearWiseArea.map(item => item.TotalArea);\r\n\r\n this.yearWiseDataForChart = {\r\n labels: yearName,\r\n datasets: [\r\n {\r\n data: yearVal,\r\n backgroundColor: [\r\n // documentStyle.getPropertyValue('--cyan-700'),\r\n // documentStyle.getPropertyValue('--pink-600'),\r\n '#990073',\r\n '#6600ff',\r\n '#00b33c'\r\n ],\r\n hoverBackgroundColor: [\r\n documentStyle.getPropertyValue('--cyan-700'),\r\n documentStyle.getPropertyValue('--pink-600'),\r\n ],\r\n fill: false,\r\n borderColor: documentStyle.getPropertyValue('--blue-500'),\r\n tension: 0.4\r\n },\r\n ],\r\n };\r\n\r\n this.optionsLine = {\r\n maintainAspectRatio: false,\r\n aspectRatio: 0.6,\r\n plugins: {\r\n legend: {\r\n display: false // Hide the legend\r\n },\r\n datalabels: {\r\n anchor: 'end',\r\n align: 'end',\r\n color: 'black',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n grid: {\r\n color: surfaceBorder,\r\n drawBorder: true\r\n }\r\n },\r\n y: {\r\n type: 'logarithmic', // Use logarithmic scale\r\n ticks: {\r\n min: 0, // Set the minimum value\r\n // stepSize: 2,\r\n // callback: function(value, index, values) {\r\n // if (value === 1) return 0; // Set the first label to 0\r\n // const labels = ['500', '1000', '5000', '10000', '50000', '100000']; // Custom labels\r\n // return labels[index]; // Return custom labels\r\n // }\r\n font: {\r\n weight: 'bold',\r\n color: 'black'\r\n },\r\n },\r\n // ticks: {\r\n // font: {\r\n // weight: 700,\r\n // },\r\n // stepSize: 100,\r\n // color: textColorSecondary,\r\n // },\r\n grid: {\r\n display: false,\r\n // color: this.surfaceBorder,\r\n // drawBorder: false,\r\n },\r\n },\r\n },\r\n };\r\n\r\n this.options2 = {\r\n plugins: {\r\n datalabels: {\r\n anchor: 'center',\r\n align: 'end',\r\n color: 'white',\r\n offset: -7,\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n legend: {\r\n labels: {\r\n usePointStyle: true,\r\n color: 'black',\r\n font: {\r\n weight: 'bold'\r\n },\r\n },\r\n },\r\n },\r\n };\r\n }\r\n\r\n viewMIConsolidatedReport(){\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'report', 'mi-total-app-report']);\r\n }\r\n else if(this.userId == 'cao'){\r\n this.router.navigate(['cao', 'report', 'mi-total-app-report']);\r\n }\r\n else if(this.userId == 'Vendor'){\r\n this.router.navigate(['vendor', 'report', 'mi-total-app-report']);\r\n }\r\n else{\r\n this.router.navigate(['department', 'report', 'mi-total-app-report']);\r\n }\r\n }\r\n\r\n viewMIConsolidatedDetails() {\r\n let userId = this.userId;\r\n if(sessionStorage.getItem('isVendor') && sessionStorage.getItem('isVendor') == '1'){\r\n userId = 'vendor';\r\n }\r\n if (userId == 'admin') {\r\n // this.router.navigate(['admin', 'report', 'mi-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['admin', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else if (userId == 'cao') {\r\n // this.router.navigate(['cao', 'report', 'mi-consolidated-details']);\r\n\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['cao', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else if(userId == 'vendor'){\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['vendor', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n else {\r\n // this.router.navigate(['department', 'report', 'mi-consolidated-details']);\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['department', 'report', 'mi-consolidated-details']));\r\n window.open(url, '_blank');\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
{{ 'Total Subsidy Disbursed: '}}
\r\n
{{ totalSubsidyDisbursed | number}}  Cr.
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'Total Application Completed:'}}
\r\n
{{ totalAppCompleted | number}}
\r\n
\r\n
\r\n
\r\n
\r\n
{{ 'Total MI Area Completed: '}}
\r\n
{{ totalMIAreaCompleted | number}}  Cr.
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

{{ districtWiseHeader }}

\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { VendorMiArea } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-vendor-mi-area-report',\r\n templateUrl: './vendor-mi-area-report.component.html',\r\n styleUrls: ['./vendor-mi-area-report.component.scss']\r\n})\r\nexport class VendorMiAreaReportComponent implements OnInit {\r\n\r\n vendorMiArea: any[];\r\n verfAppArea:any;\r\n pendingArea:any;\r\n incompleteAppArea:any;\r\n rejectedAppArea:any;\r\n changeRequestAppArea:any;\r\n totalAppArea:any;\r\n targetArea:any;\r\n grandVerfAppArea:number;\r\n grandPendingArea:number;\r\n grandIncompleteAppArea:number;\r\n grandRejectedAppArea:number;\r\n grandChangeRequestAppArea:number;\r\n grandTotalAppArea:number;\r\n grandTargetArea:number;\r\n arrayIndex:number;\r\n tempVendorMiArea: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: VendorMiArea[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n displayMaximizable_rejectedApp:any;\r\n vendorName:any;\r\n name:any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_MI_Area_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_MI_Area_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getVendorMIArea_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Area Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorMiArea = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorMiArea=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorMiArea = [];\r\n this.appVerificationModel =[] ;\r\n this.tempVendorMiArea=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Vendor MI Area Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.vendorName,\r\n \"Programme Name\" : d.ProgrammeName,\r\n \"Verified App Area\": d.Verified_App_Area,\r\n \"Pending App Area\": d.Pending_App_Area,\r\n \"Incomplete App Area\": d.Incomplete_App_Area,\r\n \"Rejected App Area\": d.Rejected_App_Area,\r\n \"changeRequest App Area\": d.changeRequest_App_Area,\r\n \"Total App Area\": d.Total_App_Area,\r\n \"Target Area\": d.TargerArea,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'vendorName', header: 'Vendor Name'},\r\n {field: 'ProgrammeName', header: 'Programme Name'},\r\n { field: 'Verified_App_Area', header: 'Verified App Area' },\r\n { field: 'Pending_App_Area', header: 'Pending App Area' },\r\n {field: 'Incomplete_App_Area', header: 'Incomplete App Area'},\r\n {field: 'Rejected_App_Area', header: 'Rejected App Area'},\r\n {field: 'changeRequest_App_Area', header: 'changeRequest App Area'},\r\n {field: 'Total_App_Area', header: 'Total App Area'},\r\n {field: 'TargerArea', header: 'Target Area'},\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorMiArea=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.verfAppArea=0;\r\n this.pendingArea=0;\r\n this.incompleteAppArea=0;\r\n this.rejectedAppArea=0;\r\n this.changeRequestAppArea=0;\r\n this.totalAppArea=0;\r\n this.targetArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorMiArea.length>10?i\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_MI_AREA_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'INCOMPLETE_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'CHANGEREQUEST_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APP_AREA'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorMiArea.vendorName}}\r\n {{vendorMiArea.ProgrammeName}}\r\n {{vendorMiArea.Verified_App_Area}}\r\n {{vendorMiArea.Pending_App_Area}}\r\n {{vendorMiArea.Incomplete_App_Area}}\r\n {{vendorMiArea.Rejected_App_Area}}\r\n {{vendorMiArea.changeRequest_App_Area}}\r\n {{vendorMiArea.Total_App_Area}}\r\n {{vendorMiArea.TargerArea}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {{verfAppArea | number:'1.0-2'}}\r\n {{pendingArea | number:'1.0-2'}}\r\n {{incompleteAppArea | number:'1.0-2'}}\r\n {{rejectedAppArea | number:'1.0-2'}}\r\n {{changeRequestAppArea | number:'1.0-2'}}\r\n {{totalAppArea | number:'1.0-2'}}\r\n {{targetArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n \r\n {{grandVerfAppArea | number:'1.0-2'}}\r\n {{grandPendingArea | number:'1.0-2'}}\r\n {{grandIncompleteAppArea | number:'1.0-2'}}\r\n {{grandRejectedAppArea | number:'1.0-2'}}\r\n {{grandChangeRequestAppArea | number:'1.0-2'}}\r\n {{grandTotalAppArea | number:'1.0-2'}}\r\n {{grandTargetArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { EstimationDistrictWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-pre-estimate-district-wise-report',\r\n templateUrl: './pre-estimate-district-wise-report.component.html',\r\n styleUrls: ['./pre-estimate-district-wise-report.component.scss']\r\n})\r\nexport class PreEstimateDistrictWiseReportComponent implements OnInit {\r\n\r\n value:any;\r\n districtWise: any[];\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationDistrictWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public userID: any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"District_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub= this.reportsService.getPreEstimation_DistrictWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (District Wise)', '', new Date(), 'Success');\r\n\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.districtWise = data;\r\n this.appVerificationModel = data;\r\n this. calculateGrandTotal();\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.districtWise = [];\r\n this.appVerificationModel = [];\r\n this. calculateGrandTotal();\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (District Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"District\" : d.District,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount.toString(),\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'District', header: 'District'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n calculateGrandTotal(){\r\n this.grandTotalApp=0;\r\n this.grandVerfApp=0;\r\n this.grandOnTime=0;\r\n this.grandPendingByWeek=0;\r\n this.grandPendingMoreThanWeek=0;\r\n this.grandEstAmount=0;\r\n this.grandMiArea=0;\r\n for(let districtWiseData of this.districtWise) {\r\n this.grandTotalApp += districtWiseData.TotalApplication;\r\n this.grandVerfApp += districtWiseData.VerifiedApplication;\r\n this.grandOnTime += districtWiseData.PendingEarly;\r\n this.grandPendingByWeek += districtWiseData.Pending_1Week;\r\n this.grandPendingMoreThanWeek += districtWiseData.Pending_Morethan_1Weeks;\r\n this.grandEstAmount += districtWiseData.Est_Amount;\r\n this.grandMiArea += districtWiseData.Mi_Area;\r\n }\r\n }\r\n showMaximizableDialog(value:any,status:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"PreEstimation\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n status:status,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable = true;\r\n console.log(this.value,\"value\")\r\n console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n }\r\n showMaximizableDialog_totalApp(value:any) {\r\n \r\n \r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"PreEstimation\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n MIType:\"\"\r\n }\r\n \r\n this.displayMaximizable_totalApp = true;\r\n\r\n console.log(this.value,\"value\")\r\n console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n }\r\n showMaximizableDialog_pending(value:any,duration:any) {\r\n \r\n if(duration=='early'){\r\n this.pendingType='On Time'\r\n }\r\n if(duration=='1Week'){\r\n this.pendingType='Pending by Week'\r\n }\r\n if(duration=='morethan_1Week'){\r\n this.pendingType='Pending more than one Week' \r\n }\r\n this.value=value;\r\n this.drilldownDetails={\r\n actionType:\"PreEstimation\",\r\n \r\n filterType:\"District\",\r\n value:this.value,\r\n duration:duration,\r\n MIType:\"\"\r\n }\r\n\r\n this.displayMaximizable_pendingApp = true;\r\n console.log(this.value,\"value\")\r\n console.log(this.drilldownDetails,\"this.drilldownDetails\")\r\n\r\n }\r\n\r\n }\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'DISTRICT_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{districtWise.District}}\r\n {{districtWise.TotalApplication}}\r\n {{districtWise.VerifiedApplication}}\r\n {{districtWise.PendingEarly}}\r\n {{districtWise.Pending_1Week}}\r\n {{districtWise.Pending_Morethan_1Weeks}}\r\n {{districtWise.Est_Amount}}\r\n {{districtWise.Mi_Area}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { EstimationMonthWiseModel } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n@Component({\r\n selector: 'app-pre-estimate-month-wise-report',\r\n templateUrl: './pre-estimate-month-wise-report.component.html',\r\n styleUrls: ['./pre-estimate-month-wise-report.component.scss']\r\n})\r\nexport class PreEstimateMonthWiseReportComponent implements OnInit {\r\n\r\n value:any;\r\n totalApp:number;\r\n verfApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempMonthWise: any[];\r\n monthWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationMonthWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n\r\n public userID: any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n \r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private router: Router\r\n ,private dashboard: DashboardService\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private cryptoJs: CryptoJsService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n \r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Month_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n \r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getEstimationVerification_MonthWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n data.forEach(e=>{\r\n if(e.Months.length>0){\r\n e.Months_sort=e.Months.substr(0,e.Months.length-2)+\"20\"+e.Months.substr(-2);\r\n e.Months_sort=new Date (e.Months_sort)\r\n }\r\n \r\n })\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Month Wise)', '', new Date(), 'Success');\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.monthWise = data;\r\n this.appVerificationModel = data; \r\n this.tempMonthWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.monthWise = [];\r\n this.appVerificationModel =[] ; \r\n this.tempMonthWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Month Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n exportExcel(modelData, filename) { \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Months\" : d.Months,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount.toString(),\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n }) \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'Months', header: 'Months'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' }, \r\n ];\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempMonthWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempMonthWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'MONTH_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'MONTHS'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THEN_ONE_WEEKS'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{monthWise.Months}}\r\n {{monthWise.TotalApplication}}\r\n {{monthWise.VerifiedApplication}}\r\n {{monthWise.PendingEarly}}\r\n {{monthWise.Pending_1Week}}\r\n {{monthWise.Pending_Morethan_1Weeks}}\r\n {{monthWise.Est_Amount}}\r\n {{monthWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { EstimationUserWiseModel } from 'src/app/models/department-reports.model';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-pre-estimate-user-wise-report',\r\n templateUrl: './pre-estimate-user-wise-report.component.html',\r\n styleUrls: ['./pre-estimate-user-wise-report.component.scss']\r\n})\r\nexport class PreEstimateUserWiseReportComponent implements OnInit {\r\n\r\n totalApp:number;\r\n verfApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempUserWise: any[];\r\n userWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationUserWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public userID: any;\r\n value:any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n drilldownDetails:any;\r\n pendingType:any;\r\n userName:any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n \r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"User_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getPreEstimation_UserWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (User Wise)', '', new Date(), 'Success');\r\n\r\n\r\n // console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.userWise = data;\r\n this.appVerificationModel = data;\r\n this.tempUserWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.userWise = [];\r\n this.appVerificationModel = [];\r\n this.tempUserWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (User Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"User ID\" : d.UserID,\r\n \"Level ID\" : d.Level_ID,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount.toString(),\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'UserID', header: 'User ID'},\r\n {field: 'Level_ID', header: 'Level ID'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempUserWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempUserWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'USER_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'USER_ID'| translate}}\r\n \r\n \r\n \r\n {{'LEVEL_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THAN_A_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{userWise.UserID}}\r\n {{userWise.Level_ID}}\r\n {{userWise.TotalApplication}}\r\n {{userWise.VerifiedApplication}}\r\n {{userWise.PendingEarly}}\r\n {{userWise.Pending_1Week}}\r\n {{userWise.Pending_Morethan_1Weeks}}\r\n {{userWise.Est_Amount}}\r\n {{userWise.Mi_Area}} \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { EstimationVendorWiseModel } from 'src/app/models/department-reports.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport {shareReplay} from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-pre-estimate-vendor-wise-report',\r\n templateUrl: './pre-estimate-vendor-wise-report.component.html',\r\n styleUrls: ['./pre-estimate-vendor-wise-report.component.scss']\r\n})\r\nexport class PreEstimateVendorWiseReportComponent implements OnInit {\r\n\r\n totalApp:number;\r\n verfApp:number;\r\n onTime:number;\r\n pendingByWeek:number;\r\n pendingMoreThanWeek:number;\r\n estAmount:number;\r\n miArea:number;\r\n grandTotalApp:number;\r\n grandVerfApp:number;\r\n grandOnTime:number;\r\n grandPendingByWeek:number;\r\n grandPendingMoreThanWeek:number;\r\n grandEstAmount:number;\r\n grandMiArea:number;\r\n arrayIndex:number;\r\n tempVendorWise: any[];\r\n vendorWise: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: EstimationVendorWiseModel[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public userID: any;\r\n routePath:any;\r\n subjectSub:any;\r\n selectedYear:any;\r\n value:any;\r\n displayMaximizable:boolean;\r\n displayMaximizable_totalApp:boolean;\r\n displayMaximizable_pendingApp:boolean;\r\n pendingType:any;\r\n drilldownDetails:any;\r\n vendorName:any;\r\n constructor(private reportsService:ReportsService\r\n ,private messageService:MessageService\r\n ,private dashboard: DashboardService\r\n ,private router: Router\r\n ,private activityRecordService: ActivityRecordService\r\n ,private loader: AppLoaderService\r\n ,private service: BaseService\r\n ,private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n let router=this.router.url\r\n // this.routePath=router.split('/')\r\n \r\n this.selectedYear=res\r\n \r\n this.loadData(this.selectedYear)\r\n }\r\n \r\n );\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_wise_report\");\r\n }\r\n },\r\n ];\r\n }\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData(selectedYear:any){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub=this.reportsService.getPreEstimation_VendorWise_Report(selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Vendor Wise)', '', new Date(), 'Success');\r\n\r\n\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.vendorWise = data;\r\n this.appVerificationModel = data;\r\n this.tempVendorWise=data;\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n \r\n }\r\n else{\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.vendorWise =[] ;\r\n this.appVerificationModel = [];\r\n this.tempVendorWise=[];\r\n this.arrayIndex=0;\r\n this.calculateGrandTotal()\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Estimations Report (Vendor Wise)', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n \r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Vendor Name\" : d.VendorName,\r\n \"Total Application\": d.TotalApplication,\r\n \"Verified Application\": d.VerifiedApplication,\r\n \"On Time\": d.PendingEarly,\r\n \"Pending by one Week\": d.Pending_1Week,\r\n \"Pending more than one Week\": d.Pending_Morethan_1Weeks,\r\n \"Est Amount\": d.Est_Amount.toString(),\r\n \"Mi Area\": d.Mi_Area,\r\n }\r\n })\r\n \r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n { field: 'TotalApplication', header: 'Total Application' },\r\n { field: 'VerifiedApplication', header: 'Verified Application' },\r\n { field: 'PendingEarly', header: 'On Time' },\r\n { field: 'Pending_1Week', header: 'Pending by one Week' },\r\n { field: 'Pending_Morethan_1Weeks', header: 'Pending More than one Weeks' },\r\n { field: 'Est_Amount', header: 'Est Amount' },\r\n { field: 'Mi_Area', header: 'Mi Area' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n tableDataFunction(event: any) {\r\n this.tempVendorWise=event.filteredValue\r\n //console.log(event);\r\n this.arrayIndex=0;\r\n // console.log(this.vendorWise);\r\n this.calculateTotalApp() ;\r\n }\r\n onPage(event:any) {\r\n this.arrayIndex=event.first;\r\n this.calculateTotalApp()\r\n //console.log(event);\r\n }\r\ncalculateTotalApp() {\r\n this.totalApp=0;\r\n this.verfApp=0;\r\n this.onTime=0;\r\n this.pendingByWeek=0;\r\n this.pendingMoreThanWeek=0;\r\n this.estAmount=0;\r\n this.miArea=0;\r\n for(let i=this.arrayIndex ;this.tempVendorWise.length>10?i\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'VENDOR_WISE_REPORT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_IN_TIME'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_BY_A_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_MORE_THAN_A_ONE_WEEK'| translate}}\r\n \r\n \r\n \r\n {{'EST_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{vendorWise.VendorName}}\r\n {{vendorWise.TotalApplication}}\r\n {{vendorWise.VerifiedApplication}}\r\n {{vendorWise.PendingEarly}}\r\n {{vendorWise.Pending_1Week}}\r\n {{vendorWise.Pending_Morethan_1Weeks}}\r\n {{vendorWise.Est_Amount}}\r\n {{vendorWise.Mi_Area}}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n {{totalApp | number:'1.0-2'}}\r\n {{verfApp | number:'1.0-2'}}\r\n {{onTime | number:'1.0-2'}}\r\n {{pendingByWeek | number:'1.0-2'}}\r\n {{pendingMoreThanWeek | number:'1.0-2'}}\r\n {{estAmount | number:'1.0-2'}}\r\n {{miArea | number:'1.0-2'}}\r\n \r\n \r\n Grand Total\r\n {{grandTotalApp | number:'1.0-2'}}\r\n {{grandVerfApp | number:'1.0-2'}}\r\n {{grandOnTime | number:'1.0-2'}}\r\n {{grandPendingByWeek | number:'1.0-2'}}\r\n {{grandPendingMoreThanWeek | number:'1.0-2'}}\r\n {{grandEstAmount | number:'1.0-2'}}\r\n {{grandMiArea | number:'1.0-2'}}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-pre-estimation-report',\r\n templateUrl: './vendor-pre-estimation-report.component.html',\r\n styleUrls: ['./vendor-pre-estimation-report.component.scss']\r\n})\r\nexport class VendorPreEstimationReportComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Month Wise', routerLink: `/${parentRoute}/report/pre-estimation/month-wise`},\r\n { label: 'District Wise', routerLink: `/${parentRoute}/report/pre-estimation/district-wise` },\r\n { label: 'User Wise', routerLink: `/${parentRoute}/report/pre-estimation/user-wise` },\r\n { label: 'Vendor Wise',routerLink: `/${parentRoute}/report/pre-estimation/vendor-wise` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CaoService } from 'src/app/services/cao.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n@Component({\r\n selector: 'app-all-subsidy-lot',\r\n templateUrl: './all-subsidy-lot.component.html',\r\n styleUrls: ['./all-subsidy-lot.component.scss']\r\n})\r\nexport class AllSubsidyLotComponent implements OnInit {\r\n\r\n dropDownList: { type: any, value: any }[];\r\n applicationSelected: any;\r\n responseDate: any;\r\n cols: any[];\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private ipService: IpAddressService, \r\n private caoService: CaoService, \r\n private messageService: MessageService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n autoId: any;\r\n appId: any;\r\n items: any[];\r\n userID: any;\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'View All Subsidy Lot', '', new Date(), 'Success');\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n\r\n if(this.router.url.startsWith('/ew-department')){\r\n this.dropDownList = [\r\n // {\r\n // type: 'Farmer Share To Vendor', value: `/all-subsidy-lot/mi-farmer-share-to-vendor/pfms`\r\n // },\r\n // {\r\n // type: 'Subsidy To Farmer', value: `/all-subsidy-lot/mi-subsidy-to-farmer/pfms`\r\n // },\r\n // {\r\n // type: 'Subsidy To Vendor', value: `/all-subsidy-lot/mi-subsidy-to-vendor/pfms`\r\n // },\r\n // {\r\n // type: 'Refund To Farmer', value: `/all-subsidy-lot/mi-refund-to-farmer/pfms`\r\n // },\r\n {\r\n type: 'Stage 1 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage1/pdmc`\r\n },\r\n {\r\n type: 'Stage 1 (ABY)', value: `/all-subsidy-lot/pond/tank-stage1/aby`\r\n },\r\n {\r\n type: 'Stage 2 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage2/pdmc`\r\n },\r\n {\r\n type: 'Stage 2 (ABY)', value: `/all-subsidy-lot/pond/tank-stage2/aby`\r\n },\r\n {\r\n type: 'Stage 3 (PDMC)', value: `/all-subsidy-lot/pond/tank-stage3/pdmc`\r\n },\r\n {\r\n type: 'Stage 3 (ABY)', value: `/all-subsidy-lot/pond/tank-stage3/aby`\r\n },\r\n ]\r\n }\r\n else{\r\n this.dropDownList = [\r\n {\r\n type: 'Farmer Share To Vendor (PDMC)', value: `/all-subsidy-lot/mi-farmer-share-to-vendor/pdmc`\r\n },\r\n // {\r\n // type: 'Farmer Share To Farmer (ABY)', value: `/all-subsidy-lot/mi-farmer-share-to-farmer/aby`\r\n // },\r\n {\r\n type: 'Subsidy To Farmer (PDMC)', value: `/all-subsidy-lot/mi-subsidy-to-farmer/pdmc`\r\n },\r\n {\r\n type: 'Subsidy To Farmer (ABY)', value: `/all-subsidy-lot/mi-subsidy-to-farmer/aby`\r\n },\r\n {\r\n type: 'Subsidy To Vendor', value: `/all-subsidy-lot/mi-subsidy-to-vendor/pdmc`\r\n },\r\n // {\r\n // type: 'Subsidy To Vendor (PDMC)', value: `/all-subsidy-lot/mi-subsidy-to-vendor/pdmc`\r\n // },\r\n // {\r\n // type: 'Subsidy To Vendor (ABY)', value: `/all-subsidy-lot/mi-subsidy-to-vendor/aby`\r\n // },\r\n {\r\n type: 'Refund To Farmer (PDMC)', value: `/all-subsidy-lot/mi-refund-to-farmer/pdmc`\r\n },\r\n // {\r\n // type: 'Refund To Farmer (ABY)', value: `/all-subsidy-lot/mi-refund-to-farmer/aby`\r\n // },\r\n // {\r\n // type: 'Stage 1', value: `/all-subsidy-lot/pond/tank-stage1/pfms`\r\n // },\r\n // {\r\n // type: 'Stage 2', value: `/all-subsidy-lot/pond/tank-stage2/pfms`\r\n // },\r\n // {\r\n // type: 'Stage 3', value: `/all-subsidy-lot/pond/tank-stage3/pfms`\r\n // },\r\n ]\r\n }\r\n \r\n }\r\n\r\n onApplicationTypeSelected(event) {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.router.navigate([`/${parentRoute.concat(event.value.value)}`])\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'SELECT_SUBSIDY_LOT'| translate}}
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-share-to-vendor',\r\n templateUrl: './farmer-share-to-vendor.component.html',\r\n styleUrls: ['./farmer-share-to-vendor.component.scss']\r\n})\r\nexport class FarmerShareToVendorComponent implements OnInit {\r\n @ViewChild('miSurvey', { static: true })\r\n public miSurvey: Table;\r\n\r\n public userID: any;\r\n miSurveyData: any[];\r\n public filteredData: any = [];\r\n public selectedApplications: any = [];\r\n\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n\r\n selectedStatus: any;\r\n items: any[];\r\n remarks: String;\r\n date: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n \r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService,\r\n private router: Router, private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.loadDataAndApplyFilter();\r\n // this.loadData(this.userID);\r\n this.getIP();\r\n\r\n let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.filteredDataForExport, `Filtered MI Farmer Share To Vendor Lot Data_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData(this.userID);\r\n \r\n this.selectedYear = res;\r\n this.miSurvey.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(userID){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService.getApplicationsForMIFarmerShareToVendorLot(userID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share To Vendor', '', new Date(), 'Success');\r\n if(data?.length == 0){\r\n this.miSurveyData = [];\r\n }\r\n else if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n }\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Farmer Share To Vendor', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSubmit(){\r\n // console.log(\"filtered dataaaa\", this.filteredData);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n \r\n handleClick(){\r\n let newFilteredData = this.filteredData.map(row => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : 'undefined',\r\n }))\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n subSidyType: 'FTV',\r\n }\r\n // console.log(\"reqBody\", reqBody)\r\n \r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData(this.userID);\r\n this.calculation();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // {field: 'AutoId', header: 'Auto Id'},\r\n // {field: 'AppID', header: 'Application ID'},\r\n // {field: 'FarmerName', header: 'Farmer Name'},\r\n // {field: 'VendorName', header: 'Vendor Name'},\r\n // { field: 'SubsidyToFarmer_Amount', header: 'Subsidy To Farmer Amount' },\r\n // { field: 'SubsidyToVendor_Amount', header: 'Subsidy To Vendor Amount' },\r\n // { field: 'StateShare_Amount', header: 'State Share Amount' },\r\n // { field: 'CenterShare_Amount', header: 'Center Share Amount' },\r\n // { field: 'MaxSubsidy_Amount', header: 'Max Subsidy Amount' },\r\n // { field: 'FarmerRefund_Amount', header: 'Farmer Refund Amount' },\r\n // { field: 'ProgID', header: 'Programme ID' },\r\n // { field: 'ProgrammeName', header: 'Programme Name' },\r\n // { field: 'Scheme', header: 'Scheme' },\r\n // { field: 'Village', header: 'Village' },\r\n // { field: 'Block', header: 'Block' },\r\n // { field: 'District', header: 'District' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n // import(\"jspdf\").then(jsPDF => {\r\n // import(\"jspdf-autotable\").then(x => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData);\r\n // doc.save(`${filename}.pdf`);\r\n // })\r\n // })\r\n // }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'AddressLine1': d.Address_Line_1,\r\n 'AddressLine2': d.Address_Line_2,\r\n 'AddressLine3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSC Code': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number ? d.Vendor_Account_Number.toString() : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'PinCode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Application Type': d?.ApplicantType,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d.UserType,\r\n 'MI Area': d.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'FinYear': d.FinYear,\r\n 'Challan Amount Deposited': d.Farmer_Share_To_Vendor,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', application.Scheme_Specific_Id]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event){\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if(event.checked){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation(){\r\n this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n \r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n })\r\n this.filteredDataForExport.forEach(val => {\r\n this.filteredData.push(\r\n {\r\n appID: val.Scheme_Specific_Id, \r\n programID: val.ProgramID,\r\n subsidy_Amt: 0, \r\n amt_Disbus_to_Vendor: 0, \r\n amt_Refund_to_Farmer: 0, \r\n farmerShareToVendor: val.Farmer_Share_To_Vendor, \r\n state_share_amt: val.State_Share_Payment_Amount, \r\n centre_share_amt: val.Center_Share_Payment_Amount, \r\n }) \r\n })\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_MI_FARMER_SHARE'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n {{'FULL_NAME_IN_ENGLISH'| translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_RECOGNIZED'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GST_NO'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO'| translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER' | translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID'| translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_AMOUNT_DEPOSITED'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MIAREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Full_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product.GST_NO}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product?.FarmerType}}\r\n {{product.Vendor_Bank_Name}}\r\n {{product.Vendor_IFSC_Code}}\r\n {{product.Vendor_Account_Number}}\r\n {{product.Vendor_Pan_Card_No}}\r\n {{product?.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Farmer_Share_To_Vendor}}\r\n {{product.ApplicantType}}\r\n {{product.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product.UserType}}\r\n {{product.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_FARMER_SHARE_TO_VENDOR'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATION_FILTERED'| translate}}: {{ totalSelectedApp }}
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-mi-survey',\r\n templateUrl: './mi-survey.component.html',\r\n styleUrls: ['./mi-survey.component.scss']\r\n})\r\nexport class MiSurveyComponent implements OnInit {\r\n @ViewChild('miSurvey', { static: true })\r\n public miSurvey: Table;\r\n\r\n public userID: any;\r\n miSurveyData: any[];\r\n public filteredData: any = [];\r\n public selectedApplications: any = [];\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n\r\n selectedStatus: any;\r\n items: any[];\r\n remarks: String;\r\n date: any;\r\n\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n \r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.loadData(this.userID);\r\n this.getIP();\r\n\r\n let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.filteredDataForExport, `Filtered Lot Data_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n \r\n\r\n loadData(userID){\r\n this.loader.start();\r\n this.deptDashBoardService.getApplicationsForMISubsidyLot(userID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // console.log(\"dataaa\", data)\r\n if(data?.length == 0){\r\n this.miSurveyData = [];\r\n }\r\n else if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n\r\n // onFilter(event){\r\n // this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n // this.totalSelectedApp = 0;\r\n // this.totalSubToFarmer = 0;\r\n // this.totalSubToVendor = 0;\r\n // this.totalFarmerRefund = 0;\r\n \r\n // this.totalSelectedApp = event.filteredValue.length;\r\n // event.filteredValue.forEach((val) => {\r\n // this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n // this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n // this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n // })\r\n // event.filteredValue.forEach(val => {\r\n // this.filteredData.push(\r\n // {\r\n // appID: val.AppID, \r\n // programID: val.ProgID,\r\n // subsidy_Amt: val.SubsidyToFarmer_Amount, \r\n // amt_Disbus_to_Vendor: val.SubsidyToVendor_Amount, \r\n // amt_Refund_to_Farmer: val.FarmerRefund_Amount, \r\n // state_share_amt: val.StateShare_Amount, \r\n // centre_share_amt: val.CenterShare_Amount, \r\n // }) \r\n // })\r\n // }\r\n\r\n onSubmit(){\r\n // console.log(\"filtered dataaaa\", this.filteredData);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n \r\n handleClick(){\r\n let newFilteredData = this.filteredData.map(row => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : 'undefined',\r\n }))\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n }\r\n // console.log(\"reqBody\", reqBody)\r\n \r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.loadData(this.userID);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n {field: 'AutoId', header: 'Auto Id'},\r\n {field: 'AppID', header: 'Application ID'},\r\n {field: 'FarmerName', header: 'Farmer Name'},\r\n {field: 'VendorName', header: 'Vendor Name'},\r\n { field: 'SubsidyToFarmer_Amount', header: 'Subsidy To Farmer Amount' },\r\n { field: 'SubsidyToVendor_Amount', header: 'Subsidy To Vendor Amount' },\r\n { field: 'StateShare_Amount', header: 'State Share Amount' },\r\n { field: 'CenterShare_Amount', header: 'Center Share Amount' },\r\n { field: 'MaxSubsidy_Amount', header: 'Max Subsidy Amount' },\r\n { field: 'FarmerRefund_Amount', header: 'Farmer Refund Amount' },\r\n { field: 'ProgID', header: 'Programme ID' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'Scheme', header: 'Scheme' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'District', header: 'District' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Auto Id\": d.AutoId,\r\n \"Application ID\": d.AppID,\r\n \"Farmer Name\": d.FarmerName,\r\n \"Vendor Name\": d.VendorName,\r\n \"Subsidy To Farmer Amount\": d.SubsidyToFarmer_Amount,\r\n \"Subsidy To Vendor Amount\": d.SubsidyToVendor_Amount,\r\n \"State Share Amount\": d.StateShare_Amount,\r\n \"Center Share Amount\": d.CenterShare_Amount,\r\n \"MaxSubsidy Amount\": d.MaxSubsidy_Amount,\r\n \"Farmer Refund Amount\": d.FarmerRefund_Amount,\r\n \"Programme ID\": d.ProgID,\r\n \"Programme Name\": d.ProgrammeName,\r\n \"Scheme\": d.Scheme,\r\n \"Village\": d.Village,\r\n \"Block\": d.Block,\r\n \"District\": d.District,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n calculation(){\r\n this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n \r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n })\r\n this.filteredDataForExport.forEach(val => {\r\n this.filteredData.push(\r\n {\r\n appID: val.AppID, \r\n programID: val.ProgID,\r\n subsidy_Amt: val.SubsidyToFarmer_Amount, \r\n amt_Disbus_to_Vendor: val.SubsidyToVendor_Amount, \r\n amt_Refund_to_Farmer: val.FarmerRefund_Amount, \r\n state_share_amt: val.StateShare_Amount, \r\n centre_share_amt: val.CenterShare_Amount, \r\n }) \r\n })\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMAER_APPLICATION_FOR_MI_SURVEY'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'AUTO_ID'| translate}}\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_TO_FARMER_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'SUBSIDY_TO_VENDOR_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'STATE_SHARE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'MAXSUBSIDY_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_REFUND_AMOUNT'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_ID'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AutoId}}\r\n {{product.AppID}}\r\n {{product.FarmerName}}\r\n {{product.VendorName}}\r\n {{product.SubsidyToFarmer_Amount}}\r\n {{product.SubsidyToVendor_Amount}}\r\n {{product.StateShare_Amount}}\r\n {{product.CenterShare_Amount}}\r\n {{product.MaxSubsidy_Amount}}\r\n {{product.FarmerRefund_Amount}}\r\n {{product.ProgID}}\r\n {{product.ProgrammeName}}\r\n {{product.Scheme}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }}{{'MI_SURVEY_APPLICATIONS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_oF_APPLICATION_FILTERED_FOR_LOT_CREATION'| translate}}: {{ totalSelectedApp }}
\r\n
\r\n
\r\n

{{'TOTAL_SUBSIDY_TO_FARMER_AMOUNT'| translate}}: {{ totalSubToFarmer }}

\r\n
\r\n
\r\n

{{'TOTAL_SUBSIDY_TO_VEMDOR_AMOUNT'| translate}}: {{ totalSubToVendor }}

\r\n
\r\n
\r\n

{{'TOTAL_FARMER_REFUND_AMOUNT'| translate}}: {{ totalFarmerRefund }}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-refund-to-farmer',\r\n templateUrl: './refund-to-farmer.component.html',\r\n styleUrls: ['./refund-to-farmer.component.scss']\r\n})\r\nexport class RefundToFarmerComponent implements OnInit {\r\n @ViewChild('miSurvey', { static: true })\r\n public miSurvey: Table;\r\n\r\n public userID: any;\r\n miSurveyData: any[];\r\n public filteredData: any = [];\r\n public selectedApplications: any = [];\r\n\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n \r\n\r\n selectedStatus: any;\r\n items: any[];\r\n remarks: String;\r\n date: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n \r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private deptDashBoardService: DepartmentDashboardService, \r\n private ipService: IpAddressService,\r\n private router: Router, private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData(this.userID);\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n\r\n let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master can not be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.filteredDataForExport, `Filtered Refund To Farmer Lot Data_(${this.date})`);\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Subsidy To Vendor Lot Data_(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData(this.userID);\r\n \r\n this.selectedYear = res;\r\n this.miSurvey.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(userID){\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService.getApplicationsForMIRefundToFarmerLot(userID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Refund To Farmer', '', new Date(), 'Success');\r\n if(data?.length == 0){\r\n this.miSurveyData = [];\r\n }\r\n else if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map(row => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat(\"_\", row.ProgramID)\r\n }))\r\n }\r\n this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Refund To Farmer', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n onSubmit(){\r\n // console.log(\"filtered dataaaa\", this.filteredData);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n \r\n handleClick(){\r\n let newFilteredData = this.filteredData.map(row => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : 'undefined',\r\n }))\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n subSidyType: 'RTF',\r\n financialyear: ''\r\n }\r\n // console.log(\"reqBody\", reqBody)\r\n \r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService.insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData(this.userID);\r\n this.calculation();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n \r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language': d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number ? d.Farmer_Account_Number.toString() : '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Refund To Farmer': d.Refund_To_Farmer,\r\n 'Application Type': d.ApplicantType,\r\n 'Programme Name': d.Programme_Name,\r\n 'Crop Name': d.Crop_Name,\r\n 'User Type': d.UserType,\r\n 'MI Area': d.MIArea,\r\n 'Total Area': d.Total_Area,\r\n 'FinYear': d.FinYear,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'appliaction-approval', 'print', application.Scheme_Specific_Id]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n // console.log(event)\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n // console.log(event)\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event){\r\n this.calculation();\r\n // console.log(event)\r\n let length = this.filteredDataForExport.length;\r\n if(event.checked){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation(){\r\n this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n \r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n })\r\n // console.log('this.filteredDataForExport', this.filteredDataForExport)\r\n this.filteredDataForExport.forEach(val => {\r\n this.filteredData.push(\r\n {\r\n appID: val.Scheme_Specific_Id, \r\n programID: val.ProgramID,\r\n subsidy_Amt: val.SubsidyToFarmer_Amount, \r\n amt_Disbus_to_Vendor: 0, \r\n amt_Refund_to_Farmer: 0, \r\n farmerShareToVendor: 0, \r\n state_share_amt: val.State_Share_Payment_Amount, \r\n centre_share_amt: val.Center_Share_Payment_Amount, \r\n }) \r\n })\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_REFUND_TO_FARMER_LOT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n {{'FULL_NAME_IN_ENGLISH'| translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_RECOGNIZED'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GENDER'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'FAMER_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID'| translate}}\r\n \r\n \r\n \r\n {{'REFUND_TO_FARMER'| translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MIAREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Farmer_Name_In_English}}\r\n {{product.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product?.FarmerType}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Scheme_Specific_Id}}\r\n {{product.Refund_To_Farmer}}\r\n {{product.ApplicantType}}\r\n {{product.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product.UserType}}\r\n {{product.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'REFUND_TO_FARMER_LOT'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATION_FILTERED_REFUND'| translate}}: {{ totalSelectedApp }}
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-farmer-atal',\r\n templateUrl: './subsidy-to-farmer-atal.component.html',\r\n styleUrls: ['./subsidy-to-farmer-atal.component.scss']\r\n})\r\nexport class SubsidyToFarmerAtalComponent implements OnInit {\r\n @ViewChild('miSurvey', { static: true })\r\n public miSurvey: Table;\r\n\r\n public userID: any;\r\n miSurveyData: any[];\r\n public filteredData: any = [];\r\n public selectedApplications: any = [];\r\n\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n selectedStatus: any;\r\n items: any[];\r\n remarks: String;\r\n date: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public applicationTypeDD: any = [];\r\n // applicationTypeDD = [\r\n // {\r\n // appId: 1,\r\n // appType: 'WUA'\r\n // },\r\n // {\r\n // appId: 2,\r\n // appType: 'Group'\r\n // },\r\n // {\r\n // appId: 3,\r\n // appType: 'Individual'\r\n // },\r\n // {\r\n // appId: 4,\r\n // appType: 'All'\r\n // }\r\n // ]\r\n public selectedApplicationType: any = null;\r\n\r\n public userTypeDD: any = [];\r\n // userTypeDD = [\r\n // {\r\n // userId: 1,\r\n // userType: 'Farmer'\r\n // },\r\n // {\r\n // userId: 2,\r\n // userType: 'IsAtal'\r\n // },\r\n // {\r\n // userId: 3,\r\n // userType: '7500'\r\n // },\r\n // {\r\n // userId: 4,\r\n // userType: 'All'\r\n // }\r\n // ]\r\n public selectedUserType: any = null;\r\n\r\n public programNameDD: any;\r\n public selectedProgramName: any = null;\r\n\r\n public showTable: boolean = false;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private ipService: IpAddressService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n setTimeout(()=> {\r\n this.applicationTypeDD = [\r\n {\r\n appId: 1,\r\n appType: 'WUA'\r\n },\r\n {\r\n appId: 2,\r\n appType: 'Group'\r\n },\r\n {\r\n appId: 3,\r\n appType: 'Individual'\r\n },\r\n {\r\n appId: 4,\r\n appType: 'All'\r\n }\r\n ]\r\n\r\n this.userTypeDD = [\r\n {\r\n userId: 1,\r\n userType: 'Farmer'\r\n },\r\n {\r\n userId: 2,\r\n userType: 'IsAtal'\r\n },\r\n {\r\n userId: 3,\r\n userType: '7500'\r\n },\r\n {\r\n userId: 4,\r\n userType: 'All'\r\n }\r\n ],\r\n\r\n this.programNameDD = [\r\n {\r\n programId: 1,\r\n programType: 'Drip Irrigation'\r\n },\r\n {\r\n programId: 2,\r\n programType: 'Mini Sprinkler'\r\n },\r\n {\r\n programId: 3,\r\n programType: 'Portable Sprinkler'\r\n }\r\n ]\r\n }, 10)\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData(this.userID);\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n\r\n let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master can not be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.filteredDataForExport,\r\n `Filtered Subsidy To Farmer (ABY) Lot Data_(${this.date})`\r\n );\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Subsidy To Vendor Lot Data_(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData(this.userID);\r\n \r\n this.selectedYear = res;\r\n this.miSurvey.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(userID) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getApplicationsForMISubsidyToFarmerLotIsAtal(userID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Subsidy To Farmer (Atal)',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n if (data?.length == 0) {\r\n this.miSurveyData = [];\r\n } else if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map((row) => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat('_', row.ProgramID),\r\n }));\r\n // this.loader.close();\r\n this.loading = false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Subsidy To Farmer (Atal)',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSubmit() {\r\n // console.log(\"filtered dataaaa\", this.filteredData);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick() {\r\n let newFilteredData = this.filteredData.map((row) => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : 'undefined',\r\n }));\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n subSidyType: 'STF',\r\n financialyear: ''\r\n }\r\n // console.log(\"reqBody\", reqBody)\r\n \r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n \r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData(this.userID);\r\n this.calculation();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language':\r\n d.Full_Name_in_Recognized_Official_Language,\r\n 'Gender': d.Gender, \r\n 'Caste Description': d.Caste_Description,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number\r\n ? d.Farmer_Account_Number.toString()\r\n : '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'Top Up': d.TopUp,\r\n 'Application Type': d.ApplicantType,\r\n 'Programme Name': d.Programme_Name,\r\n 'Crop Name': d.Crop_Name,\r\n 'User Type': d.UserType,\r\n 'MI Area': d.MIArea,\r\n 'Total Area': d.Total_Area,\r\n 'FinYear': d.FinYear,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'appliaction-approval',\r\n 'print',\r\n application.Scheme_Specific_Id,\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event) {\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if (event.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation() {\r\n this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n\r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n });\r\n this.filteredDataForExport.forEach((val) => {\r\n this.filteredData.push({\r\n appID: val.Scheme_Specific_Id,\r\n programID: val.ProgramID,\r\n subsidy_Amt: val.SubsidyToFarmer_Amount,\r\n amt_Disbus_to_Vendor: 0,\r\n amt_Refund_to_Farmer: 0,\r\n farmerShareToVendor: 0,\r\n state_share_amt: val.State_Share_Payment_Amount,\r\n topUp: val?.TopUp,\r\n centre_share_amt: val.Center_Share_Payment_Amount,\r\n });\r\n });\r\n }\r\n\r\n onSelectApplicationType(){\r\n // this.miSurveyData = null;\r\n this.showTable = false;\r\n }\r\n\r\n onSelectUserType(){\r\n // this.miSurveyData = null;\r\n this.showTable = false;\r\n }\r\n\r\n onSelectprogramName(){\r\n // this.miSurveyData = null;\r\n this.showTable = true;\r\n // this.loadDataAndApplyFilter();\r\n \r\n // this.miSurvey.reset();\r\n // this.miSurvey.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n\r\n // this.miSurvey.filters['ApplicantType'] = [\r\n // { value: this.selectedApplicationType, matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n // this.miSurvey.filters['UserType'] = [\r\n // { value: this.selectedUserType, matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n // this.miSurvey.filters['Programme_Name'] = [\r\n // { value: this.selectedProgramName, matchMode: 'startsWith', operator: 'and' }\r\n // ];\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MII_SUBSIDY_TO_FARMER_LOT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n {{'FULL_NAME_IN_ENGLISH'| translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_RECOGNIZED'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GENDER'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'FAMER_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID'| translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'TOP_UP'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MIAREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.ApplicantType}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_SUBSIDY_TO_FARMER_LOT'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATION_FILTERED_FOR_MI_SUBSIDY'| translate}}: {{ totalSelectedApp }}
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-farmer',\r\n templateUrl: './subsidy-to-farmer.component.html',\r\n styleUrls: ['./subsidy-to-farmer.component.scss'],\r\n})\r\nexport class SubsidyToFarmerComponent implements OnInit {\r\n @ViewChild('miSurvey', { static: true })\r\n public miSurvey: Table;\r\n\r\n public userID: any;\r\n miSurveyData: any[];\r\n public filteredData: any = [];\r\n public selectedApplications: any = [];\r\n\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n selectedStatus: any;\r\n items: any[];\r\n remarks: String;\r\n date: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public applicationTypeDD: any = [];\r\n // applicationTypeDD = [\r\n // {\r\n // appId: 1,\r\n // appType: 'WUA'\r\n // },\r\n // {\r\n // appId: 2,\r\n // appType: 'Group'\r\n // },\r\n // {\r\n // appId: 3,\r\n // appType: 'Individual'\r\n // },\r\n // {\r\n // appId: 4,\r\n // appType: 'All'\r\n // }\r\n // ]\r\n public selectedApplicationType: any = null;\r\n\r\n public userTypeDD: any = [];\r\n // userTypeDD = [\r\n // {\r\n // userId: 1,\r\n // userType: 'Farmer'\r\n // },\r\n // {\r\n // userId: 2,\r\n // userType: 'IsAtal'\r\n // },\r\n // {\r\n // userId: 3,\r\n // userType: '7500'\r\n // },\r\n // {\r\n // userId: 4,\r\n // userType: 'All'\r\n // }\r\n // ]\r\n public selectedUserType: any = null;\r\n\r\n public programNameDD: any;\r\n public selectedProgramName: any = null;\r\n\r\n public showTable: boolean = false;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private ipService: IpAddressService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n setTimeout(()=> {\r\n this.applicationTypeDD = [\r\n {\r\n appId: 1,\r\n appType: 'WUA'\r\n },\r\n {\r\n appId: 2,\r\n appType: 'Group'\r\n },\r\n {\r\n appId: 3,\r\n appType: 'Individual'\r\n },\r\n {\r\n appId: 4,\r\n appType: 'All'\r\n }\r\n ]\r\n\r\n this.userTypeDD = [\r\n {\r\n userId: 1,\r\n userType: 'Farmer'\r\n },\r\n {\r\n userId: 2,\r\n userType: 'IsAtal'\r\n },\r\n {\r\n userId: 3,\r\n userType: '7500'\r\n },\r\n {\r\n userId: 4,\r\n userType: 'All'\r\n }\r\n ],\r\n\r\n this.programNameDD = [\r\n {\r\n programId: 1,\r\n programType: 'Drip Irrigation'\r\n },\r\n {\r\n programId: 2,\r\n programType: 'Mini Sprinkler'\r\n },\r\n {\r\n programId: 3,\r\n programType: 'Portable Sprinkler'\r\n }\r\n ]\r\n }, 10)\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData(this.userID);\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n\r\n let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master can not be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.filteredDataForExport,\r\n `Filtered Subsidy To Farmer Lot Data_(${this.date})`\r\n );\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Subsidy To Vendor Lot Data_(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData(this.userID);\r\n \r\n this.selectedYear = res;\r\n this.miSurvey.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData(userID) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getApplicationsForMISubsidyToFarmerLot(userID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Subsidy To Farmer',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n if (data?.length == 0) {\r\n this.miSurveyData = [];\r\n } else if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map((row) => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat('_', row.ProgramID),\r\n }));\r\n // this.loader.close();\r\n this.loading = false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Farmer Share To Farmer',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSubmit() {\r\n // console.log(\"filtered dataaaa\", this.filteredData);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick() {\r\n let newFilteredData = this.filteredData.map((row) => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : 'undefined',\r\n }));\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n subSidyType: 'STF',\r\n financialyear: ''\r\n }\r\n // console.log(\"reqBody\", reqBody)\r\n \r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData(this.userID);\r\n this.calculation();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language':\r\n d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Farmer Bank Name': d.Farmer_Bank_Name,\r\n 'Farmer IFSCCode': d.Farmer_IFSCCode,\r\n 'Farmer Account Number': d.Farmer_Account_Number\r\n ? d.Farmer_Account_Number.toString()\r\n : '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'Pincode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'Top Up': d.TopUp,\r\n 'Application Type': d.ApplicantType,\r\n 'Programme Name': d?.Programme_Name,\r\n 'Crop Name': d?.Crop_Name,\r\n 'User Type': d.UserType,\r\n 'MI Area': d.MIArea,\r\n 'Total Area': d?.Total_Area,\r\n 'FinYear': d.FinYear,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'appliaction-approval',\r\n 'print',\r\n application.Scheme_Specific_Id,\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event) {\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if (event.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation() {\r\n this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n\r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n });\r\n this.filteredDataForExport.forEach((val) => {\r\n this.filteredData.push({\r\n appID: val.Scheme_Specific_Id,\r\n programID: val.ProgramID,\r\n subsidy_Amt: val.SubsidyToFarmer_Amount,\r\n amt_Disbus_to_Vendor: 0,\r\n amt_Refund_to_Farmer: 0,\r\n farmerShareToVendor: 0,\r\n state_share_amt: val.State_Share_Payment_Amount,\r\n topUp: val?.TopUp,\r\n centre_share_amt: val.Center_Share_Payment_Amount,\r\n });\r\n });\r\n }\r\n\r\n onSelectApplicationType(){\r\n // this.miSurveyData = null;\r\n this.showTable = false;\r\n }\r\n\r\n onSelectUserType(){\r\n // this.miSurveyData = null;\r\n this.showTable = false;\r\n }\r\n\r\n onSelectprogramName(){\r\n // this.miSurveyData = null;\r\n this.showTable = true;\r\n // this.loadDataAndApplyFilter();\r\n \r\n // this.miSurvey.reset();\r\n // this.miSurvey.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n\r\n // this.miSurvey.filters['ApplicantType'] = [\r\n // { value: this.selectedApplicationType, matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n // this.miSurvey.filters['UserType'] = [\r\n // { value: this.selectedUserType, matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n // this.miSurvey.filters['Programme_Name'] = [\r\n // { value: this.selectedProgramName, matchMode: 'startsWith', operator: 'and' }\r\n // ];\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MII_SUBSIDY_TO_FARMER_LOT'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n {{'FULL_NAME_IN_ENGLISH'| translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_RECOGNIZED'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GENDER'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'FAMER_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID'| translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'TOP_UP'| translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MIAREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n {{product?.ApplicantType}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_SUBSIDY_TO_FARMER_LOT'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATION_FILTERED_FOR_MI_SUBSIDY'| translate}}: {{ totalSelectedApp }}
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-vendor-atal',\r\n templateUrl: './subsidy-to-vendor-atal.component.html',\r\n styleUrls: ['./subsidy-to-vendor-atal.component.scss']\r\n})\r\nexport class SubsidyToVendorAtalComponent implements OnInit {\r\n @ViewChild('miSurvey', { static: true })\r\n public miSurvey: Table;\r\n\r\n public userID: any;\r\n miSurveyData: any[];\r\n public filteredData: any = [];\r\n public selectedApplications: any = [];\r\n\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n selectedStatus: any;\r\n items: any[];\r\n remarks: String;\r\n date: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private ipService: IpAddressService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData(this.userID);\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n\r\n let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master can not be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.filteredDataForExport,\r\n `Filtered Subsidy To Vendor (ABY) Lot Data_(${this.date})`\r\n );\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Subsidy To Vendor Lot Data_(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData(this.userID);\r\n \r\n this.selectedYear = res;\r\n this.miSurvey.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n \r\n\r\n loadData(userID) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getApplicationsForMISubsidyToVendorLot_Atal(userID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Subsidy To Vendor (Atal)',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n if (data?.length == 0) {\r\n this.miSurveyData = [];\r\n } else if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map((row) => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat('_', row.ProgramID),\r\n }));\r\n }\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Farmer Share To Vendor (Atal)',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSubmit() {\r\n // console.log(\"filtered dataaaa\", this.filteredData);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick() {\r\n let newFilteredData = this.filteredData.map((row) => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : 'undefined',\r\n }));\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n subSidyType: 'STV',\r\n financialyear: ''\r\n };\r\n // console.log('reqBody', reqBody);\r\n\r\n \r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData(this.userID);\r\n this.calculation();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language':\r\n d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d?.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'AddressLine1': d.Address_Line_1,\r\n 'AddressLine2': d.Address_Line_2,\r\n 'AddressLine3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSC Code': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number\r\n ? d.Vendor_Account_Number.toString()\r\n : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'PinCode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'Top Up': d.TopUp,\r\n // 'Challan Amount Deposited': d.Farmer_Share_To_Vendor,\r\n 'Application Type': d.ApplicantType,\r\n 'Programme Name': d.Programme_Name,\r\n 'Crop Name': d.Crop_Name,\r\n 'User Type': d.UserType,\r\n 'MI Area': d.MIArea,\r\n 'Total Area': d.Total_Area,\r\n 'FinYear': d.FinYear,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'appliaction-approval',\r\n 'print',\r\n application.Scheme_Specific_Id,\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event) {\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if (event.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation() {\r\n this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n\r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n });\r\n this.filteredDataForExport.forEach((val) => {\r\n this.filteredData.push({\r\n appID: val.Scheme_Specific_Id,\r\n programID: val.ProgramID,\r\n subsidy_Amt: 0,\r\n amt_Disbus_to_Vendor: 0,\r\n amt_Refund_to_Farmer: 0,\r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor,\r\n state_share_amt: val.State_Share_Payment_Amount,\r\n centre_share_amt: val.Center_Share_Payment_Amount,\r\n topUp: val?.TopUp,\r\n });\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_VENDOR_ATAL'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n {{'FULL_NAME_IN_ENGLISH'| translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_RECOGNIZED'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GST_NO'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO'| translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID'| translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'TOP_UP'| translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MIAREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Full_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.GST_NO}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Vendor_Bank_Name}}\r\n {{product?.Vendor_IFSC_Code}}\r\n {{product?.Vendor_Account_Number}}\r\n {{product?.Vendor_Pan_Card_No}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n \r\n {{product?.ApplicantType}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_SUBSIDY_TO_VENDOR_LOT'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_VENDOR_LOT'| translate}}: {{ totalSelectedApp }}
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-subsidy-to-vendor',\r\n templateUrl: './subsidy-to-vendor.component.html',\r\n styleUrls: ['./subsidy-to-vendor.component.scss'],\r\n})\r\nexport class SubsidyToVendorComponent implements OnInit {\r\n @ViewChild('miSurvey', { static: true })\r\n public miSurvey: Table;\r\n\r\n public userID: any;\r\n miSurveyData: any[];\r\n public filteredData: any = [];\r\n public selectedApplications: any = [];\r\n\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n selectedStatus: any;\r\n items: any[];\r\n remarks: String;\r\n date: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private ipService: IpAddressService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData(this.userID);\r\n this.loadDataAndApplyFilter();\r\n this.getIP();\r\n\r\n let actionId = 28; // Do not Change, it is fixed for Farmer Application Verifications\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master can not be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.filteredDataForExport,\r\n `Filtered Subsidy To Vendor Lot Data_(${this.date})`\r\n );\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Subsidy To Vendor Lot Data_(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData(this.userID);\r\n \r\n this.selectedYear = res;\r\n this.miSurvey.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n \r\n\r\n loadData(userID) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getApplicationsForMISubsidyToVendorLot(userID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Subsidy To Vendor',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n if (data?.length == 0) {\r\n this.miSurveyData = [];\r\n } else if (data?.length > 0) {\r\n this.miSurveyData = data;\r\n this.miSurveyData = this.miSurveyData.map((row) => ({\r\n ...row,\r\n AppId_ProgID: row.Scheme_Specific_Id.concat('_', row.ProgramID),\r\n }));\r\n }\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Farmer Share To Vendor',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSubmit() {\r\n // console.log(\"filtered dataaaa\", this.filteredData);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick() {\r\n let newFilteredData = this.filteredData.map((row) => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : 'undefined',\r\n }));\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n subSidyType: 'STV',\r\n financialyear: ''\r\n };\r\n // console.log('reqBody', reqBody);\r\n\r\n \r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertMISubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData(this.userID);\r\n this.calculation();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Full_Name_In_English,\r\n 'Full Name in Recognized Official Language':\r\n d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d?.Caste_Description,\r\n 'GST NO': d.GST_NO,\r\n 'AddressLine1': d.Address_Line_1,\r\n 'AddressLine2': d.Address_Line_2,\r\n 'AddressLine3': d.Address_Line_3,\r\n 'Village': d.Village,\r\n 'Block': d.Block,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Farmer Type': d.FarmerType,\r\n 'Vendor Bank Name': d.Vendor_Bank_Name,\r\n 'Vendor IFSC Code': d.Vendor_IFSC_Code,\r\n 'Vendor Account Number': d.Vendor_Account_Number\r\n ? d.Vendor_Account_Number.toString()\r\n : '',\r\n 'Vendor Pan Card No': d.Vendor_Pan_Card_No,\r\n 'PinCode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'Top Up': d.TopUp,\r\n // 'Challan Amount Deposited': d.Farmer_Share_To_Vendor,\r\n 'Application Type': d.ApplicantType,\r\n 'Programme Name': d.Programme_Name,\r\n 'Crop Name': d.Crop_Name,\r\n 'User Type': d.UserType,\r\n 'MI Area': d.MIArea,\r\n 'Total Area': d.Total_Area,\r\n 'FinYear': d.FinYear,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'appliaction-approval',\r\n 'print',\r\n application.Scheme_Specific_Id,\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Product Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event) {\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if (event.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation() {\r\n this.filteredData = [];\r\n // this.filteredDataForExport = event.filteredValue;\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n\r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n });\r\n this.filteredDataForExport.forEach((val) => {\r\n this.filteredData.push({\r\n appID: val.Scheme_Specific_Id,\r\n programID: val.ProgramID,\r\n subsidy_Amt: 0,\r\n amt_Disbus_to_Vendor: 0,\r\n amt_Refund_to_Farmer: 0,\r\n // farmerShareToVendor: val.Farmer_Share_To_Vendor,\r\n state_share_amt: val.State_Share_Payment_Amount,\r\n centre_share_amt: val.Center_Share_Payment_Amount,\r\n topUp: val?.TopUp,\r\n });\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_FOR_MI_SUBSIDY_TO_VENDOR'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n {{'FULL_NAME_IN_ENGLISH'| translate}}\r\n \r\n \r\n \r\n {{'FULL_NAME_RECOGNIZED'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GST_NO'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n {{'Village' | translate}}\r\n \r\n \r\n \r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR_PAN_CARD_NO'| translate}}\r\n \r\n \r\n \r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n {{'SCHEME_SPECIFIC_ID'| translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'TOP_UP'| translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAM_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CROP_NAME' | translate}}\r\n \r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'MIAREA'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_LAND_HOLDING' | translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Full_Name_In_English}}\r\n {{product?.Full_Name_in_Recognized_Official_Language}}\r\n {{product?.Caste_Description}}\r\n {{product?.GST_NO}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.Village}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.FarmerType}}\r\n {{product?.Vendor_Bank_Name}}\r\n {{product?.Vendor_IFSC_Code}}\r\n {{product?.Vendor_Account_Number}}\r\n {{product?.Vendor_Pan_Card_No}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.TopUp}}\r\n \r\n {{product?.ApplicantType}}\r\n {{product?.Programme_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.UserType}}\r\n {{product?.MIArea}}\r\n {{product?.Total_Area}}\r\n {{product?.FinYear}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{miSurveyData ? miSurveyData.length : 0 }} {{'MI_SUBSIDY_TO_VENDOR_LOT'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATIONS_FILTERED_FOR_MI_SUBSIDY_TO_VENDOR_LOT'| translate}}: {{ totalSelectedApp }}
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import {\r\n Component,\r\n EventEmitter,\r\n OnInit,\r\n Output,\r\n OnDestroy,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { FormBuilder } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport saveAs from 'file-saver';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\n\r\n@Component({\r\n selector: 'app-tankstagesurvey1',\r\n templateUrl: './tankstagesurvey1.component.html',\r\n styleUrls: ['./tankstagesurvey1.component.scss'],\r\n})\r\nexport class Tankstagesurvey1Component implements OnInit {\r\n @ViewChild('tankTable', { static: true })\r\n public tankTable: Table;\r\n \r\n items: any[];\r\n selectedStatus: any;\r\n remarks: any;\r\n userId: any;\r\n stage: any;\r\n public filteredData: any = [];\r\n public tankData: any;\r\n canEditPondData: boolean;\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n public userID: any;\r\n ipAddress: any = '000.000.000';\r\n date: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n public router: Router,\r\n private ipService: IpAddressService,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n this.canEditPondData = false;\r\n } else {\r\n this.canEditPondData = true;\r\n }\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.filteredDataForExport,\r\n `Filtered Pond Tank Stage-1 Survey Lot Data_(${this.date})`\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.tankTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick() {\r\n let newFilteredData = this.filteredData.map((row) => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : '',\r\n }));\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n stage: '1',\r\n financialyear: '',\r\n };\r\n // console.log('reqBody', reqBody);\r\n\r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertpondSubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData();\r\n this.calculation();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n loadData() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.stage = 1;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .GetSubsidyAppForPondVer_SubsidyCalc_Stage1(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.getmasterData();\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Tank Stage-1 Subsidy',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n this.loader.close();\r\n // console.log('Response Data', data);\r\n this.tankData = data;\r\n this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n this.tankData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Tank Stage-1 Subsidy',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getmasterData() {\r\n let actionId: number;\r\n if (\r\n this.router.url.split('/')[1] == 'department' ||\r\n this.router.url.split('/')[1] == 'admin' ||\r\n this.router.url.split('/')[1] == 'ew-department'\r\n ) {\r\n actionId = 29;\r\n } else {\r\n actionId = 5; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'appliaction-approval',\r\n 'print',\r\n application.Scheme_Specific_Id,\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Application Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Application Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event) {\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if (event.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n\r\n calculation() {\r\n this.filteredData = [];\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n\r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n });\r\n this.filteredDataForExport.forEach((val) => {\r\n this.filteredData.push({\r\n appID: val.Scheme_Specific_Id,\r\n subsidy_Amt: val.ActualSubsidy_Stage1 ? val.ActualSubsidy_Stage1 : 0,\r\n state_share_amt: val.State_Share_Payment_Amount,\r\n centre_share_amt: val.Center_Share_Payment_Amount,\r\n topUp: val?.TopUp,\r\n aby: val?.ABY\r\n });\r\n });\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name In English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language':\r\n d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSC Code': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number\r\n ? d.Farmer_Account_Number.toString()\r\n : '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'PinCode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'ABY': d.ABY,\r\n 'Top Up': d.TopUp,\r\n 'Application Type': d.ApplicantType,\r\n 'User Type': d.UserType,\r\n 'Coverage Area': d.Coverage_Area,\r\n // 'ActualSubsidy Stage1': d.ActualSubsidy_Stage1\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}} \r\n\r\n {{'SCHEME_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'GENDER'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FAMER_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n\r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n {{'CENTER_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Scheme_Specific_Id}}\r\n {{product?.Farmer_Name_In_English}}\r\n {{product?.Caste_Description}}\r\n {{product?.Gender}}\r\n {{product?.Address_Line_1}}\r\n {{product?.Address_Line_2}}\r\n {{product?.Address_Line_3}}\r\n {{product?.District}}\r\n {{product?.State}}\r\n {{product?.Country}}\r\n {{product?.Farmer_Bank_Name}}\r\n {{product?.Farmer_IFSCCode}}\r\n {{product?.Farmer_Account_Number}}\r\n {{product?.Aadhar_Number}}\r\n {{product?.Pincode}}\r\n {{product?.Center_Share_Payment_Amount}}\r\n {{product?.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n \r\n {{product.ApplicantType}}\r\n {{product.UserType}}\r\n {{product.Coverage_Area}}\r\n {{product.FinYear}}\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATION_POND_TANK_STAGE-1'| translate}}: {{ totalSelectedApp }}
\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-tankstagesurvey2',\r\n templateUrl: './tankstagesurvey2.component.html',\r\n styleUrls: ['./tankstagesurvey2.component.scss'],\r\n})\r\nexport class Tankstagesurvey2Component implements OnInit {\r\n @ViewChild('tankTable', { static: true })\r\n public tankTable: Table;\r\n \r\n items: any[];\r\n selectedStatus: any;\r\n userId: any;\r\n stage: any;\r\n public tankData: any;\r\n canEditPondData: boolean;\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n date: any;\r\n remarks: String;\r\n public userID: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n public router: Router,\r\n private ipService: IpAddressService,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n this.canEditPondData = false;\r\n } else {\r\n this.canEditPondData = true;\r\n }\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.filteredDataForExport,\r\n `Filtered Pond Tank Stage-2 Survey Lot Data_(${this.date})`\r\n );\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.tankTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n\r\n loadData() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.stage = 2;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .GetSubsidyAppForPondVer_SubsidyCalc_Stage2(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.getmasterData();\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Tank Stage-2 Subsidy',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n \r\n // console.log('Response Data', data);\r\n this.tankData = data;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n this.tankData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Tank Stage-2 Subsidy',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n getmasterData() {\r\n let actionId: number;\r\n if (\r\n this.router.url.split('/')[1] == 'department' ||\r\n this.router.url.split('/')[1] == 'admin' ||\r\n this.router.url.split('/')[1] == 'ew-department'\r\n ) {\r\n actionId = 30;\r\n } else {\r\n actionId = 5; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'print',\r\n application.Scheme_Specific_Id,\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n\r\n onHeaderCheckboxToggle(event) {\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if (event.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n calculation() {\r\n this.filteredData = [];\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n\r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n });\r\n this.filteredDataForExport.forEach((val) => {\r\n this.filteredData.push({\r\n appID: val.Scheme_Specific_Id,\r\n programID: val.ProgramID,\r\n subsidy_Amt: val.ActualSubsidy_Stage2 ? val.ActualSubsidy_Stage2 : 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n farmerShareToVendor: val.Farmer_Share_To_Vendor,\r\n state_share_amt: val.State_Share_Payment_Amount,\r\n centre_share_amt: val.Center_Share_Payment_Amount,\r\n topUp: val?.TopUp,\r\n aby: val?.ABY\r\n });\r\n });\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language':\r\n d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSC Code': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number\r\n ? d.Farmer_Account_Number.toString()\r\n : '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'PinCode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'ABY': d.ABY,\r\n 'Top Up': d.TopUp,\r\n 'Application Type': d.ApplicantType,\r\n 'User Type': d.UserType,\r\n 'Coverage Area': d.Coverage_Area,\r\n // 'ActualSubsidy Stage2': d.ActualSubsidy_Stage2\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n handleClick() {\r\n let newFilteredData = this.filteredData.map((row) => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : '',\r\n }));\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n stage: '2',\r\n financialyear: '',\r\n }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertpondSubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData();\r\n this.calculation();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Application Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Application Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n\r\n {{'SCHEME_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GENDER'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'FAMER_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n\r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'CENTER_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATE_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'ABY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Scheme_Specific_Id}}\r\n {{product.Farmer_Name_In_English}}\r\n {{product?.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n \r\n {{product.ApplicantType}}\r\n {{product.UserType}}\r\n {{product.Coverage_Area}}\r\n {{product.FinYear}}\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATION_POND_TANK_STAGE-2'| translate}}: {{ totalSelectedApp }}
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-tankstagesurvey3',\r\n templateUrl: './tankstagesurvey3.component.html',\r\n styleUrls: ['./tankstagesurvey3.component.scss'],\r\n})\r\nexport class Tankstagesurvey3Component implements OnInit {\r\n @ViewChild('tankTable', { static: true })\r\n public tankTable: Table;\r\n \r\n items: any[];\r\n selectedStatus: any;\r\n userId: any;\r\n stage: any;\r\n public tankData: any;\r\n canEditPondData: boolean;\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n filteredDataForExport: any = [];\r\n appVerificationItems: MenuItem[];\r\n date: any;\r\n remarks: String;\r\n public userID: any;\r\n public ipAddress: any = '000.000.000';\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n public router: Router,\r\n private ipService: IpAddressService,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService, \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.date = new Date();\r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n this.canEditPondData = false;\r\n } else {\r\n this.canEditPondData = true;\r\n }\r\n this.getIP();\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(\r\n this.filteredDataForExport,\r\n `Filtered Pond Tank Stage-3 Survey Lot Data_(${this.date})`\r\n );\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.filteredDataForExport, `Filtered Lot Data__(${this.date})`);\r\n // }\r\n // },\r\n ];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.tankTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n \r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n loadData() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.stage = 2;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .GetSubsidyAppForPondVer_SubsidyCalc_Stage3(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Tank Stage-3 Subsidy',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n this.getmasterData();\r\n this.tankData = data;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n this.tankData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userID,\r\n 'Tank Stage-3 Subsidy',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n \r\n getmasterData() {\r\n let actionId: number;\r\n if (\r\n this.router.url.split('/')[1] == 'department' ||\r\n this.router.url.split('/')[1] == 'admin' ||\r\n this.router.url.split('/')[1] == 'ew-department'\r\n ) {\r\n actionId = 31;\r\n } else {\r\n actionId = 5; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n selectFarmerApplication(application) {\r\n if (application.Scheme_Specific_Id) {\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'print',\r\n application.Scheme_Specific_Id,\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n calculation() {\r\n this.filteredData = [];\r\n this.totalSelectedApp = 0;\r\n this.totalSubToFarmer = 0;\r\n this.totalSubToVendor = 0;\r\n this.totalFarmerRefund = 0;\r\n\r\n this.totalSelectedApp = this.filteredDataForExport.length;\r\n this.filteredDataForExport.forEach((val) => {\r\n this.totalSubToFarmer += val.SubsidyToFarmer_Amount;\r\n this.totalSubToVendor += val.SubsidyToVendor_Amount;\r\n this.totalFarmerRefund += val.FarmerRefund_Amount;\r\n });\r\n this.filteredDataForExport.forEach((val) => {\r\n this.filteredData.push({\r\n appID: val.Scheme_Specific_Id,\r\n programID: val.ProgramID,\r\n subsidy_Amt: val.ActualSubsidy_Stage3 ? val.ActualSubsidy_Stage3 : 0,\r\n // amt_Disbus_to_Vendor: 0,\r\n // amt_Refund_to_Farmer: 0,\r\n farmerShareToVendor: val.Farmer_Share_To_Vendor,\r\n state_share_amt: val.State_Share_Payment_Amount,\r\n centre_share_amt: val.Center_Share_Payment_Amount,\r\n topUp: val?.TopUp,\r\n aby: val?.ABY\r\n });\r\n });\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Full Name in English': d.Farmer_Name_In_English,\r\n 'Full Name in Recognized Official Language':\r\n d.Full_Name_in_Recognized_Official_Language,\r\n 'Caste': d.Caste_Description,\r\n 'Gender': d.Gender,\r\n 'Address Line 1': d.Address_Line_1,\r\n 'Address Line 2': d.Address_Line_2,\r\n 'Address Line 3': d.Address_Line_3,\r\n 'District': d.District,\r\n 'State': d.State,\r\n 'Country': d.Country,\r\n 'Bank Name': d.Farmer_Bank_Name,\r\n 'IFSC Code': d.Farmer_IFSCCode,\r\n 'Account Number': d.Farmer_Account_Number\r\n ? d.Farmer_Account_Number.toString()\r\n : '',\r\n 'Aadhar Number': d.Aadhar_Number ? d.Aadhar_Number.toString() : '',\r\n 'PinCode': d.Pincode,\r\n 'Scheme Specific Id': d.Scheme_Specific_Id,\r\n 'Center Share Payment Amount': d.Center_Share_Payment_Amount,\r\n 'State Share Payment Amount': d.State_Share_Payment_Amount,\r\n 'ABY': d.ABY,\r\n 'Top Up': d.TopUp,\r\n 'Application Type': d.ApplicantType,\r\n 'User Type': d.UserType,\r\n 'Coverage Area': d.Coverage_Area,\r\n // 'ActualSubsidy Stage3': d.ActualSubsidy_Stage3\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n handleClick() {\r\n let newFilteredData = this.filteredData.map((row) => ({\r\n ...row,\r\n status: this.selectedStatus.flag,\r\n remarks: this.remarks ? this.remarks : '',\r\n }));\r\n\r\n let reqBody = {\r\n listLotData: newFilteredData,\r\n userID: this.userID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n stage: '3',\r\n financialyear: '',\r\n }\r\n // console.log(\"reqBody\", reqBody)\r\n\r\n this.insertMISubsidyLot(reqBody);\r\n }\r\n\r\n insertMISubsidyLot(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertpondSubsidyLot(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || data == \"Success\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n this.filteredDataForExport = [];\r\n this.loadData();\r\n this.calculation();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n onRowSelect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Application Selected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.calculation();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Application Unselected',\r\n detail: event.data.name,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(event) {\r\n this.calculation();\r\n let length = this.filteredDataForExport.length;\r\n if (event.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Selected',\r\n detail: `Total ${length} Products Selected`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Multiple Product Unselected',\r\n detail: '',\r\n });\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n\r\n {{'SCHEME_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CASTE'| translate}}\r\n \r\n \r\n \r\n {{'GENDER'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_1'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_2'| translate}}\r\n \r\n \r\n \r\n {{'ADDRESS_LINE_3'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'COUNTRY'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_BANK_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FAMER_ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n\r\n {{'AADHAR_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'PINCODE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'CENTER_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATE_SHARE_PAYMENT'| translate}}\r\n \r\n \r\n \r\n {{'ABY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOP_UP'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n {{'APPLICATION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Scheme_Specific_Id}}\r\n {{product.Farmer_Name_In_English}}\r\n {{product?.Caste_Description}}\r\n {{product.Gender}}\r\n {{product.Address_Line_1}}\r\n {{product.Address_Line_2}}\r\n {{product.Address_Line_3}}\r\n {{product.District}}\r\n {{product.State}}\r\n {{product.Country}}\r\n {{product.Farmer_Bank_Name}}\r\n {{product.Farmer_IFSCCode}}\r\n {{product.Farmer_Account_Number}}\r\n {{product.Aadhar_Number}}\r\n {{product.Pincode}}\r\n {{product.Center_Share_Payment_Amount}}\r\n {{product.State_Share_Payment_Amount}}\r\n {{product?.ABY}}\r\n {{product?.TopUp}}\r\n \r\n {{product.ApplicantType}}\r\n {{product.UserType}}\r\n {{product.Coverage_Area}}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
{{'TOTAL_NO_OF_APPLICATION_POND_TANK_STAGE-3'| translate}}: {{ totalSelectedApp }}
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
","import { Component, OnInit, ViewChild, OnDestroy, Output, EventEmitter, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Table } from 'primeng/table';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { crop_Datas } from '../../../../models/farmer-land.model';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport exifr from 'exifr';\r\nimport piexifjs from 'piexifjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-farmer-request-for-noc',\r\n templateUrl: './farmer-request-for-noc.component.html',\r\n styleUrls: ['./farmer-request-for-noc.component.scss']\r\n})\r\nexport class FarmerRequestForNocComponent implements OnInit {\r\n @ViewChild('farmerPreEstimateSurveyTable', { static: true })\r\n public farmerPreEstimateSurveyTable: Table;\r\n @ViewChild('geolocationsarrayTable', { static: true })\r\n public geolocationsarrayTable: Table;\r\n public farmerUHBVNpvData: any = [];\r\n mobileFarmerUHBVNpvData: any = [];\r\n displayUHBVNpvDialog: boolean = false;\r\n isSubmitted: boolean = false;\r\n submitEstimateForm: FormGroup;\r\n latitude: any;\r\n longitude: any;\r\n geolocationsarray: any = [];\r\n overlays: any = [];\r\n mapEnable = false;\r\n public vendorRegId: any;\r\n selectedWatersourceType: string;\r\n componentList: any = [];\r\n public userId: any;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n // icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'\r\n };\r\n\r\n public selectedRow: any;\r\n public selectedNonRecOpt: any;\r\n public nonRecOptionList: any = [];\r\n // public farmerMobNo: any;\r\n // public programName: any;\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {};\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n private trigger: Subject = new Subject();\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n displayBasic: boolean = false;\r\n displayCameraComponent: any = false;\r\n selctedFileType: any;\r\n documentList: any = [];\r\n insertPondAttachments: any = [];\r\n selectedCropType: any;\r\n selectedCorpModel: crop_Datas;\r\n selectedCorpModelList: any;\r\n selectedNodes1: any[] = [];\r\n cropTypeList: any[];\r\n allSchemeMaster: any[] = [];\r\n waterSourceList: any[];\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n waterSourceNames: any;\r\n ProgramID: any;\r\n cropBasedNames: any;\r\n error: string;\r\n // vendorCode: any;\r\n allAttachementsList: any = [];\r\n attachementDisplayName: any = [];\r\n imageError: string;\r\n uploadOptions: any[];\r\n autoId: any;\r\n appId: any;\r\n editBilledData: boolean = false;\r\n coordinateError: any;\r\n public multiSortMeta: any;\r\n ipAddress: any = '000.000.000';\r\n landArea: number = 0;\r\n surveyArea: number = null;\r\n\r\n public refreshLocation: any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: any[]\r\n\r\n public isGPSError: boolean = false;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n\r\n public componentMasterList: any = [];\r\n public applicationStatusList: any = [];\r\n\r\n public consentRecommend: any = null;\r\n public isJeLogin: boolean = false;\r\n public isXenLogin: boolean = false;\r\n\r\n public displayUHBVNpvDialogForXEN: boolean = false;\r\n\r\n public xenRemarks: any;\r\n public XenRecommended: any;\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private vendorService: VendorDashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private flService: FarmerLandDetailService,\r\n private route: ActivatedRoute,\r\n private fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private ipService: IpAddressService,\r\n public cd: ChangeDetectorRef,\r\n public router: Router,\r\n private service: BaseService\r\n ) {\r\n (this.uploadOptions = [\r\n { name: 'Field Photo', code: 'field_photo' },\r\n { name: 'Land Paper Photo', code: 'land_paper' },\r\n { name: 'Bill Photo', code: 'bill_photo' },\r\n { name: 'PV Performa Photo', code: 'pv_performa_photo' },\r\n { name: 'Others', code: 'others' },\r\n ]);\r\n }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n\r\n // this.onCapture();\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))): {};\r\n // console.log('token.role', tokenData?.role)\r\n if (tokenData && (tokenData.role == 'JE')) {\r\n this.isJeLogin = true;\r\n this.isXenLogin = false;\r\n }\r\n if (tokenData && (tokenData.role == 'XEN')) {\r\n this.isJeLogin = false;\r\n this.isXenLogin = true;\r\n }\r\n\r\n this.loadData(this.userId);\r\n // this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.getCorpType();\r\n\r\n setTimeout(() => {\r\n this.componentMasterList = [\r\n {\r\n Program_Id: 1,\r\n Program_Name: 'Portable Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 2,\r\n Program_Name: 'Mini Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 3,\r\n Program_Name: 'Drip',\r\n Active: true,\r\n },\r\n ];\r\n this.applicationStatusList = [\r\n {\r\n code: 1,\r\n name: 'MIS Installation Recommended',\r\n Active: true,\r\n },\r\n {\r\n code: 0,\r\n name: 'MIS Installation Not Recommended',\r\n Active: true,\r\n },\r\n ];\r\n\r\n this.nonRecOptionList = [\r\n { name: 'Bill Not provided', code: '1' },\r\n { name: 'Latitude & Longitude mismatched', code: '2' },\r\n { name: 'MIS not operational', code: '3' },\r\n { name: 'Billed items quantity mismatched', code: '4' },\r\n { name: 'others', code: '5' },\r\n ]\r\n }, 100);\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'UHBVN_PV_APP');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'Pre_estimate_survey_file'\r\n // );\r\n // },\r\n // },\r\n ];\r\n // setTimeout(() => {\r\n // console.log(this.overlays, 'geeee')\r\n // if(this.overlays.length >=3){\r\n // this.onDelect(0)\r\n // }\r\n // // else {\r\n // // this.overlays.forEach((val, index) => {\r\n // // if(val?.title == 'Coordinate 1'){\r\n // // this.overlays.splice(index, 1);\r\n // // this.geolocationsarray = [];\r\n // // this.onSave();\r\n // // }\r\n // // })\r\n // // }\r\n // }, 5000)\r\n this.submitEstimateForm = this.fb.group({\r\n misInstalled: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n cropType: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n cropId: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n killNumber: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n performaQunatity: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n appStatus: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n checkBoxRec: [{ value: '', disabled: this.isXenLogin },],\r\n nonRecReason: [{ value: '', disabled: this.isXenLogin },],\r\n remarksNonRec: [{ value: '', disabled: this.isXenLogin },],\r\n jePVRemarks: [{ value: '', disabled: this.isXenLogin },],\r\n\r\n // waterSource: ['', Validators.required],\r\n // ph: ['', Validators.required],\r\n // ec: ['', Validators.required],\r\n // waterReq: ['', Validators.required],\r\n // plantSpacing: ['', Validators.required],\r\n // rowSpacing: ['', Validators.required],\r\n });\r\n // this.farmerPreEstimateSurveyTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.multiSortMeta = [];\r\n this.multiSortMeta.push({ field: 'AssignedDate', order: 1 });\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n this.ngOnDestroy();\r\n\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.selectedYear = res;\r\n this.loadData(this.userId);\r\n this.farmerPreEstimateSurveyTable.filters['Fin_Year'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Application No': d?.AppId,\r\n 'Farmer Name': d?.Farmer_Name,\r\n 'Mobile No': d?.FarmerMobile,\r\n 'Father_Name': d?.Father_Name,\r\n 'Village': d?.VillageName,\r\n 'Vendor Name': d?.VendorFullName,\r\n 'Programme Name': d?.Program_Name,\r\n 'Killa No': d?.KillaNo,\r\n 'Totoal Area (in Acre)': d?.AreaAcre,\r\n 'Fin Year': d?.Fin_Year,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onSelectAppStatus(val) {\r\n\r\n console.log(val)\r\n // recommended 1\r\n if (val?.value == 1) {\r\n this.submitEstimateForm.controls['checkBoxRec'].setValidators([Validators.required]);\r\n this.submitEstimateForm.controls['nonRecReason'].clearValidators();\r\n this.submitEstimateForm.controls['remarksNonRec'].clearValidators();\r\n }\r\n // not recommended 0\r\n else if (val?.value == 0) {\r\n this.submitEstimateForm.controls['nonRecReason'].setValidators([Validators.required]);\r\n this.submitEstimateForm.controls['remarksNonRec'].clearValidators();\r\n this.submitEstimateForm.controls['checkBoxRec'].clearValidators();\r\n }\r\n this.submitEstimateForm.controls['checkBoxRec'].updateValueAndValidity();\r\n this.submitEstimateForm.controls['nonRecReason'].updateValueAndValidity();\r\n this.submitEstimateForm.controls['remarksNonRec'].updateValueAndValidity();\r\n }\r\n\r\n onSelectNonRecOption(val){\r\n\r\n console.log(this.submitEstimateForm.value.nonRecReason)\r\n console.log(val, val.value)\r\n\r\n if(this.submitEstimateForm.value.nonRecReason?.code == 5){\r\n this.submitEstimateForm.controls['checkBoxRec'].clearValidators();\r\n this.submitEstimateForm.controls['remarksNonRec'].setValidators([Validators.required]);\r\n // this.submitEstimateForm.controls['nonRecReason'].clearValidators();\r\n }else{\r\n this.submitEstimateForm.controls['checkBoxRec'].clearValidators();\r\n this.submitEstimateForm.controls['remarksNonRec'].clearValidators();\r\n // this.submitEstimateForm.controls['nonRecReason'].setValidators([Validators.required]);\r\n }\r\n this.submitEstimateForm.controls['checkBoxRec'].updateValueAndValidity();\r\n this.submitEstimateForm.controls['remarksNonRec'].updateValueAndValidity();\r\n }\r\n\r\n\r\n // ============================================\r\n\r\n onRefreshCurrentLocation() {\r\n // console.log(\"refreshLocation\")\r\n this.overlays.forEach((val, index) => {\r\n if (val?.title == \"Current Location\") {\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n this.getCurrentLocation();\r\n }\r\n\r\n getCurrentLocation() {\r\n // console.log(this.overlays)\r\n let overlay = this.overlays;\r\n let mapEnable = this.mapEnable;\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 10000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n const crd = pos.coords;\r\n const obj = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.options.center = obj;\r\n // const image = 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png';\r\n\r\n const currentLocationMarker = new google.maps.Marker({\r\n position: { lat: obj?.lat, lng: obj?.lng },\r\n title: 'Current Location',\r\n icon: '../../../assets/map/location-icon-5.png',\r\n });\r\n\r\n overlay.push(currentLocationMarker)\r\n // console.log(overlay);\r\n\r\n\r\n // instant.geolocationsarray.push(obj)\r\n // instant.onSave()\r\n // instant.addOverlay()\r\n instant.mapEnable = true;\r\n }\r\n\r\n function error(err) {\r\n instant.isGPSError = true;\r\n let detailsMsg = '';\r\n if (err?.message == 'User denied Geolocation') {\r\n detailsMsg = 'Please enable Geolocation access.'\r\n } else {\r\n detailsMsg = 'Please Refresh the Current Location.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg,\r\n });\r\n // console.log(`ERROR1(${err.code}): ${err.message}`);\r\n }\r\n\r\n // this.mapEnable = true;\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n // this.addOverlay();\r\n }\r\n }\r\n\r\n get f() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n loadData(userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this._personalDetalSer\r\n .getUHBVNAppForJE(userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'UHBVN PV',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n if (data.length > 0) {\r\n this.farmerUHBVNpvData = data;\r\n this.appVerificationModel = this.farmerUHBVNpvData;\r\n this.mobileFarmerUHBVNpvData = data;\r\n // this.mobileFarmerUHBVNpvData = this.farmerUHBVNpvData.filter(val => val.Fin_Year == this.selectedYear);\r\n\r\n }\r\n else {\r\n this.farmerUHBVNpvData = [];\r\n this.appVerificationModel = []\r\n this.mobileFarmerUHBVNpvData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'UHBVN PV',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.cropTypeList = files;\r\n // console.log(this.cropTypeList, 'this.cropTypeList');\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropTypeName(event) {\r\n const data = this.cropTypeList.find((element) => element.data == event);\r\n if (data) {\r\n this.cropBasedNames = data.children;\r\n } else {\r\n this.cropBasedNames = [];\r\n }\r\n }\r\n\r\n selectPreSurveyData(event) { }\r\n\r\n onCloseDialog() {\r\n this.isGPSError = false;\r\n clearInterval(this.refreshLocation);\r\n this.displayUHBVNpvDialog = false;\r\n this.mapEnable = false;\r\n this.geolocationsarray = [];\r\n this.overlays = this.overlays.filter(val => {\r\n return !val?.title?.includes('Coordinate')\r\n });\r\n this.documentList = [];\r\n this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.landArea = 0;\r\n this.surveyArea = null;\r\n this.addOverlay();\r\n }\r\n onCapture() {\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 5000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n let isInvalid = instant.geolocationsarray.find((data) => {\r\n if (\r\n data.lat == pos.coords.latitude &&\r\n data.lng == pos.coords.longitude\r\n ) {\r\n return data;\r\n }\r\n });\r\n\r\n if (isInvalid) {\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Please move to a different location to get new coordinates.',\r\n });\r\n return;\r\n }\r\n\r\n const crd = pos.coords;\r\n const obj = {\r\n CornerID: instant.geolocationsarray.length + 1,\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.geolocationsarray.push(obj);\r\n\r\n // Check for self-intersections before allowing the polygon creation\r\n if (instant.isSelfIntersecting(instant.geolocationsarray)) {\r\n // this.onDelect(this.geolocationsarray.length - 1);\r\n instant.geolocationsarray.pop();\r\n alert('Polygon is invalid due to intersecting edges. Please redraw.');\r\n return;\r\n }else {\r\n instant.onSave();\r\n }\r\n }\r\n\r\n function error(err) {\r\n let detailsMsg = '';\r\n if (err?.message == 'User denied Geolocation') {\r\n detailsMsg = 'Please enable Geolocation access'\r\n } else {\r\n detailsMsg = 'Please capture again.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg\r\n ,\r\n });\r\n // console.log(`ERROR(${err.code}): ${err.message}`);\r\n }\r\n\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n }\r\n }\r\n\r\n isSelfIntersecting(coordsArray) {\r\n for (let i = 0; i < coordsArray.length - 1; i++) {\r\n for (let j = i + 2; j < coordsArray.length; j++) {\r\n // Prevent checking consecutive edges or the last edge with the first one\r\n if (i === 0 && j === coordsArray.length - 1) continue;\r\n if (this.doLinesIntersect(coordsArray[i], coordsArray[i + 1], coordsArray[j], coordsArray[(j + 1) % coordsArray.length])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n doLinesIntersect(p1, q1, p2, q2) {\r\n // Helper function to calculate orientation of the points\r\n function orientation(p, q, r) {\r\n let val = (q.lat - p.lat) * (r.lng - q.lng) - (q.lng - p.lng) * (r.lat - q.lat);\r\n if (val === 0) return 0; // collinear\r\n return (val > 0) ? 1 : 2; // clock or counterclockwise\r\n }\r\n\r\n // Check the four orientations needed for the general and special cases\r\n let o1 = orientation(p1, q1, p2);\r\n let o2 = orientation(p1, q1, q2);\r\n let o3 = orientation(p2, q2, p1);\r\n let o4 = orientation(p2, q2, q1);\r\n\r\n // General case\r\n if (o1 !== o2 && o3 !== o4) return true;\r\n\r\n // Special cases\r\n // p1, q1, p2 are collinear and p2 lies on segment p1q1\r\n if (o1 === 0 && this.onSegment(p1, p2, q1)) return true;\r\n\r\n // p1, q1, q2 are collinear and q2 lies on segment p1q1\r\n if (o2 === 0 && this.onSegment(p1, q2, q1)) return true;\r\n\r\n // p2, q2, p1 are collinear and p1 lies on segment p2q2\r\n if (o3 === 0 && this.onSegment(p2, p1, q2)) return true;\r\n\r\n // p2, q2, q1 are collinear and q1 lies on segment p2q2\r\n if (o4 === 0 && this.onSegment(p2, q1, q2)) return true;\r\n\r\n return false;\r\n }\r\n\r\n onSegment(p, q, r) {\r\n return q.lng <= Math.max(p.lng, r.lng) && q.lng >= Math.min(p.lng, r.lng) &&\r\n q.lat <= Math.max(p.lat, r.lat) && q.lat >= Math.min(p.lat, r.lat);\r\n }\r\n\r\n onDelect(i) {\r\n // console.log(this.geolocationsarray)\r\n this.geolocationsarray.splice(i, 1);\r\n for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n this.geolocationsarray[index].CornerID = index + 1;\r\n }\r\n // if (this.geolocationsarray.length == 0) {\r\n // // this.mapEnable = false;\r\n // this.mapEnable = true;\r\n // } else {\r\n this.options.center = this.geolocationsarray[0];\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.overlays = [];\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index);\r\n });\r\n this.addOverlay();\r\n // }\r\n }\r\n\r\n onSave() {\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.options.center = this.geolocationsarray[0];\r\n this.overlays = [];\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index);\r\n });\r\n this.addOverlay();\r\n }\r\n\r\n onNext() { }\r\n mobileSearch(value) {\r\n this.mobileFarmerUHBVNpvData =\r\n this.farmerUHBVNpvData.filter((data: any) => {\r\n if (\r\n data.appID.toLowerCase().includes(value.toLowerCase()) ||\r\n data.FarmerName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.ProgrammeName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.district.toLowerCase().includes(value.toLowerCase()) ||\r\n data.village.toLowerCase().includes(value.toLowerCase()) ||\r\n data.block.toLowerCase().includes(value.toLowerCase()) ||\r\n data.Status_Ar.toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data;\r\n }\r\n });\r\n }\r\n addOverlay() {\r\n this.overlays.forEach((val, index) => {\r\n if (val?.fillColor) {\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n\r\n this.overlays.push(\r\n new google.maps.Polygon({\r\n paths: this.geolocationsarray,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n // console.log(this.overlays);\r\n if (this.geolocationsarray.length >= 3) {\r\n let polygon = new google.maps.Polygon({ paths: this.geolocationsarray })\r\n let area = this.calculateLandArea(polygon.getPath());\r\n this.landArea = Number((0.000247105 * area).toFixed(2));\r\n // console.log(\"Calculated Area\",this.landArea);\r\n }\r\n // this.onRefreshCurrentLocation();\r\n }\r\n\r\n calculateLandArea(polygon) {\r\n return google.maps.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n removeOverlay() {\r\n this.overlays.pop().setMap(null);\r\n }\r\n addMarkers(row: any, index) {\r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: 'Coordinate ' + row?.CornerID,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n onDrag(event) {\r\n // console.log(\"event\", event, event?.overlay?.position?.lat(), event?.overlay?.position?.lng());\r\n // console.log(this.overlays);\r\n\r\n let index = -1;\r\n index = event?.overlay?.title ? event?.overlay?.title.split(' ')[1] : -1;\r\n if (index >= 1) {\r\n // console.log(this.geolocationsarray, index, this.geolocationsarray[index-1], this.geolocationsarray[index-1]['lat']);\r\n this.geolocationsarray[index - 1].lat = event?.overlay?.position?.lat();\r\n this.geolocationsarray[index - 1].lng = event?.overlay?.position?.lng();\r\n\r\n this.removeOverlay();\r\n this.addOverlay();\r\n }\r\n }\r\n\r\n showBasicDialog() {\r\n this.displayBasic = true;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n exifr\r\n .parse(this.webcamImage.imageAsDataUrl)\r\n .then((output) => {//console.log('Camera:', output)\r\n });\r\n // console.log(piexifjs.load(this.webcamImage.imageAsDataUrl));\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], this.selctedFileType + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // if (params.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `preEstimateSurvey_${new Date().getTime()}`;\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n document_type: this.selctedFileType.name,\r\n displayName: fileName,\r\n name: this.selctedFileType.name,\r\n // this.selctedFileType.code === 'farmer_photo'\r\n // ? 'Farmer Photo'\r\n // : this.selctedFileType.code === 'water_source'\r\n // ? 'Water Source'\r\n // : this.selctedFileType.code === 'land_photo'\r\n // ? 'Land Photo'\r\n // : this.selctedFileType.code === 'others'\r\n // ? 'Others'\r\n // : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n // let documentListObject = {\r\n // // 'appId': this.cryptoJsService.DecryptData(params.appId),\r\n // 'documentList': this.documentList\r\n // }\r\n // sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n // console.log('Error');\r\n }\r\n this.selctedFileType = '';\r\n });\r\n // });\r\n }\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n onCaptureImage() {\r\n this.displayCameraComponent = true;\r\n }\r\n onCloseImageDialog() {\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n }\r\n getImagesArray() {\r\n if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'ERROR_MESSAGE',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n return;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n \r\n submitSurveyDetails() {\r\n let existImage = true;\r\n this.isSubmitted = true;\r\n if (this.submitEstimateForm.valid) {\r\n if (this.geolocationsarray.length < 4) {\r\n this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES';\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please provide atleast 4 GPS Coordinates',\r\n });\r\n return;\r\n } \r\n // else if (this.landArea - this.surveyArea >= 1) {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: `Calculated Area (${this.landArea}) is much greater than Survey Area (${this.surveyArea}). Please recapture the coordinates.`,\r\n // });\r\n // return;\r\n // } \r\n else if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n existImage = false;\r\n }\r\n }\r\n });\r\n let attachemntArray = [];\r\n if (!existImage) {\r\n return;\r\n }\r\n for (let index = 0; index < this.documentList.length; index++) {\r\n const obj = {\r\n attachmentsDoc: this.documentList[index].attachment,\r\n documentType: this.documentList[index].document_type,\r\n };\r\n attachemntArray.push(obj);\r\n }\r\n let geoCoordinates = [];\r\n for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n const gpsObj = {\r\n CornerID: index + 1,\r\n latitude: this.geolocationsarray[index].lat,\r\n longitude: this.geolocationsarray[index].lng,\r\n };\r\n geoCoordinates.push(gpsObj);\r\n }\r\n\r\n let surveyData = this.submitEstimateForm.value;\r\n const reqBody = [\r\n {\r\n \"appId\": this.selectedRow?.AppId,\r\n \"cropId\": surveyData?.cropId,\r\n \"cropTypeId\": surveyData?.cropType,\r\n \"area\": this.selectedRow?.AreaAcre,\r\n \"killaNo\": this.selectedRow?.KillaNo,\r\n \"typeOfMISInstalled\": surveyData?.misInstalled ? surveyData?.misInstalled : 0,\r\n \"performaQuantity\": Number(surveyData?.performaQunatity),\r\n \"userId\": this.userId,\r\n \"networkId\": this.ipAddress,\r\n \"terminalId\": this.ipAddress,\r\n \"aadhaarNo\": this.selectedRow?.AadhaarNo,\r\n \"jE_Recommended\": surveyData?.appStatus,\r\n \"jE_Remark\": surveyData?.appStatus == 0 ? (surveyData?.nonRecReason?.code == 5 ? (surveyData?.remarksNonRec ? surveyData?.remarksNonRec : '') : surveyData?.nonRecReason?.name) : '',\r\n \"xen_Recommended\": 0,\r\n \"xeN_Remark\": \"string\",\r\n \"insertServayAttachments\": attachemntArray,\r\n \"gpsCoordinates\": geoCoordinates\r\n },\r\n ];\r\n\r\n console.log(surveyData);\r\n console.log(reqBody);\r\n this.submitUHBVNSurvey(reqBody);\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please fill all the mandatory feilds',\r\n });\r\n }\r\n }\r\n removeImg(i) {\r\n this.documentList.splice(i, 1);\r\n }\r\n\r\n submitXenDetails(){\r\n if(this.xenRemarks == null || this.xenRemarks == '' || this.XenRecommended == null){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Application Status and Enter Remarks',\r\n });\r\n return;\r\n }\r\n let surveyData = this.submitEstimateForm.value;\r\n const reqBody = [\r\n {\r\n \"appId\": this.selectedRow?.AppId,\r\n \"cropId\": surveyData?.cropId,\r\n \"cropTypeId\": surveyData?.cropType,\r\n \"area\": this.selectedRow?.AreaAcre,\r\n \"killaNo\": this.selectedRow?.KillaNo,\r\n \"typeOfMISInstalled\": surveyData?.misInstalled ? surveyData?.misInstalled : 0,\r\n \"performaQuantity\": Number(surveyData?.performaQunatity),\r\n \"userId\": this.userId,\r\n \"networkId\": this.ipAddress,\r\n \"terminalId\": this.ipAddress,\r\n \"aadhaarNo\": this.selectedRow?.AadhaarNo,\r\n \"jE_Recommended\": surveyData?.appStatus,\r\n \"jE_Remark\": surveyData?.jePVRemarks,\r\n \"xen_Recommended\": this.XenRecommended,\r\n \"xeN_Remark\": this.xenRemarks,\r\n \"insertServayAttachments\": this.documentList,\r\n \"gpsCoordinates\": this.geolocationsarray\r\n },\r\n ];\r\n\r\n console.log(reqBody);\r\n this.submitUHBVNSurvey(reqBody);\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (this.isJeLogin && row.JE_Status == 'Approved') {\r\n return '#b9ecb9';\r\n } else if(this.isXenLogin && row.XEN_Status == 'Done'){\r\n return '#b9ecb9';\r\n } else return '#f9cece';\r\n }\r\n\r\n addEstimation(data) {\r\n if(this.isXenLogin){\r\n this.autoFillDetails(data);\r\n }else if(this.isJeLogin){\r\n this.getCurrentLocation();\r\n this.addOverlay();\r\n this.refreshLocation = setInterval(() =>\r\n this.onRefreshCurrentLocation(), 6000)\r\n \r\n \r\n this.displayUHBVNpvDialog = true;\r\n this.geolocationsarray = [];\r\n this.selectedRow = data;\r\n \r\n // this.programmeAppId = data.appID;\r\n // this.programmeFarmerName = data.FarmerName;\r\n // this.ProgramID = data.ProgramID;\r\n // this.vendorCode = data.Vendor_Code;\r\n this.isSubmitted = false;\r\n this.surveyArea = data.AreaAcre;\r\n // this.applyConditionalValidation(data);\r\n }\r\n }\r\n\r\n updateEstimation(data) {\r\n if(this.isXenLogin){\r\n this.autoFillDetails(data);\r\n }else if(this.isJeLogin){\r\n this.autoFillDetails(data);\r\n }\r\n }\r\n\r\n autoFillDetails(data){\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 6000)\r\n this.surveyArea = data.AreaAcre;\r\n this.geolocationsarray = [];\r\n this.selectedRow = data;\r\n\r\n this.isSubmitted = false;\r\n // this.applyConditionalValidation(data);\r\n this.displayUHBVNpvDialog = true;\r\n // this.programmeFarmerName = data.FarmerName;\r\n \r\n this.loader.start();\r\n this._personalDetalSer\r\n .getOwnMIFarmerDetailPVByAppId(data?.AppId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n // if (typeof data.WaterPressure == 'number') {\r\n // data.WaterPressure = JSON.stringify(data.WaterPressure);\r\n // }\r\n // if (typeof data.WaterQuantity == 'number') {\r\n // data.WaterQuantity = JSON.stringify(data.WaterQuantity);\r\n // }\r\n // this.programmeAppId = data.AppID;\r\n // this.programName = data.ProgramName;\r\n // this.ProgramID = data.ProgId;\r\n // this.vendorCode = data.VendorCode;\r\n this.f.cropType.setValue(data?.CropTypeId);\r\n // this.f.cropType.setValue(data.CropTypeID);\r\n this.f.cropId.setValue(data?.CropId);\r\n this.f.killNumber.setValue(data?.KillaNo);\r\n this.f.misInstalled.setValue(data?.TypeOfMISInstalled);\r\n this.f.performaQunatity.setValue(data?.PerformaQuantity);\r\n this.f.appStatus.setValue(Number(data?.JeRecommended));\r\n this.f.jePVRemarks.setValue(data?.JeRemarks);\r\n console.log(data?.JeRemarks)\r\n\r\n // this.f.ph.setValue(data?.PH);\r\n // this.f.ec.setValue(data?.EC);\r\n // this.f.waterReq.setValue(data.WaterQuantity);\r\n // this.f.plantSpacing.setValue(data.PlantSpacing);\r\n // this.f.rowSpacing.setValue(data.RowSpacing);\r\n for (let index = 0; index < data?.GPSCoordinates?.length; index++) {\r\n let geoData = {\r\n CornerID: data.GPSCoordinates[index].CornerID,\r\n lat: data.GPSCoordinates[index].Latitude,\r\n lng: data.GPSCoordinates[index].Longitude,\r\n };\r\n this.geolocationsarray.push(geoData);\r\n }\r\n if (this.geolocationsarray.length == 0) {\r\n this.mapEnable = false;\r\n } else {\r\n if (this.geolocationsarray && this.geolocationsarray.length > 0) {\r\n this.options.center = this.geolocationsarray[0];\r\n }\r\n this.mapEnable = true;\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index);\r\n });\r\n this.addOverlay();\r\n }\r\n\r\n for (let index = 0; index < data?.UploadAttachments?.length; index++) {\r\n let imagesData = {\r\n attachment: data.UploadAttachments[index].ImagePath,\r\n attachmentRawUrl: data.UploadAttachments[index].ImagePath,\r\n document_type: data.UploadAttachments[index].DocumentType,\r\n displayName: data.UploadAttachments[index].DocumentType,\r\n name: data.UploadAttachments[index].DocumentType,\r\n };\r\n this.documentList.push(imagesData);\r\n }\r\n },\r\n error: (err) => {\r\n this.displayUHBVNpvDialog = false;\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n // applyConditionalValidation(data) {\r\n // if (data?.ApplicantType == '7500' && data?.ProgrammeName == 'Drip Irrigation') {\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.min(0.3)]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.min(0.6)]);\r\n // }\r\n // else {\r\n // this.submitEstimateForm.controls['rowSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['plantSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.required]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.required]);\r\n // }\r\n // this.submitEstimateForm.controls['rowSpacing'].updateValueAndValidity();\r\n // this.submitEstimateForm.controls['plantSpacing'].updateValueAndValidity();\r\n // }\r\n\r\n // selectViewApplication(application, statusCode) {\r\n // if (application.appID) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(\r\n // this.router.createUrlTree([\r\n // this.router.url.split('/')[1],\r\n // 'print',\r\n // application.appID,\r\n // ])\r\n // );\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Invalid App ID',\r\n // });\r\n // }\r\n // }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'appID', header: 'appID' },\r\n // { field: 'registerationDate_filter', header: 'date of Submit' },\r\n // { field: 'registerationReassignDate_filter', header: 'date of Resubmit' },\r\n // { field: 'ApplicantType', header: 'Applicant type' },\r\n // { field: 'FarmerName', header: 'Farmer Name' },\r\n // { field: 'village', header: 'village' },\r\n // { field: 'block', header: 'block' },\r\n // { field: 'district', header: 'district' },\r\n // { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n // { field: 'ProgrammeName', header: 'Program Name' },\r\n // { field: 'LandDetail', header: 'Land Detail' },\r\n // { field: 'Total_Area', header: 'Total Area' },\r\n // { field: 'Status_Ar', header: 'current status' },\r\n // { field: 'DeptRemarks', header: 'Remarks' },\r\n // { field: 'ActOnPrevAction', header: 'Act on PrevAction' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData, { styles: { fontSize: 6 } });\r\n\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData(this.userId);\r\n // this.loadDataAndApplyFilter();\r\n }\r\n\r\n submitUHBVNSurvey(reqBody){\r\n this._personalDetalSer\r\n .submitOwnMIFarmerDetailPV(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // this.activityRecordService.activityRecord(\r\n // this.userId,\r\n // 'Pre-Estimation Survey Action',\r\n // this.programmeAppId,\r\n // new Date(),\r\n // resp,\r\n // dataObj[0]\r\n // );\r\n if(resp == 'Success' || resp == 'success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n this.isSubmitted = true;\r\n this.onCloseDialog();\r\n this.loadData(this.userId);\r\n // this.loadDataAndApplyFilter();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n // this.activityRecordService.activityRecord(\r\n // this.userId,\r\n // 'Pre-Estimation Survey Action',\r\n // this.programmeAppId,\r\n // new Date(),\r\n // err,\r\n // dataObj[0]\r\n // );\r\n this.isSubmitted = true;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}{{item.AppId}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.Farmer_Name}}\r\n
{{'MOBILE_NO'| translate}}\r\n {{item.FarmerMobile}}\r\n
{{'FATHERS_NAME'| translate}}\r\n {{item.Father_Name}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.VillageName}}\r\n
{{'VENDOR_NAME'| translate}}\r\n {{item.VendorFullName}}\r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.Program_Name}}\r\n
{{'KILLA_NO'| translate}}\r\n {{item.KillaNo}}\r\n
{{'TOTAL_AREA_IN_ACRE'| translate}}\r\n {{item.AreaAcre}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.Fin_Year}}\r\n
{{'Status'| translate}}\r\n {{item.JE_Status}}\r\n
{{'ESTIMATION_ACTION'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_IS_REQ'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MIS Installed is required'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'KILLA_NUMBER_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'Performa Quantity is required'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MIS Installed is required'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
{{'Click on checkbox'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
{{'MIS Installed Not Recommended reason required'|\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
{{'MIS Installed Not Recommended remark required'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}
\r\n
0 || overlays.length>0\" style=\"padding: 0 1em;\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID'| translate}}{{item.CornerID}}\r\n
{{'LATITUDE'| translate}}{{item.lat}}
{{'LONGITUDE'| translate}}{{item.lng}}
{{'ACTIONS'| translate}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n\r\n
\r\n

{{coordinateError}}\r\n

\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
0\" class=\"field md:col-4 col-12\">\r\n \r\n
\r\n
\r\n
1\" class=\"p-fluid p-formgrid justify-content-center areaError mb-4\"\r\n style=\"display: flex; flex-wrap:wrap\">\r\n

{{ \"CALCULATED_AREA_IS_MUCH_GREATER_THAN_SURVEYED_AREA._PLEASE_RECAPTURE_THE_COORDINATES\" | translate }}\r\n

\r\n
\r\n
\r\n\r\n
\r\n
{{'CAPTURE_IMAGE'| translate}}
\r\n
{{'Captured Images'| translate}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{item.name}}\r\n

\r\n

\r\n {{item.name}}\r\n

\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n

\r\n {{imageError}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">\"{{'MESSAGES'| translate}}\":

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-print-noc',\r\n templateUrl: './print-noc.component.html',\r\n styleUrls: ['./print-noc.component.scss']\r\n})\r\nexport class PrintNocComponent implements OnInit {\r\n appVerificationItems: MenuItem[];\r\n public userId: any;\r\n public userRidList: any = [];\r\n public selectedApplications: any[];\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n public loading: boolean = false;\r\n\r\n constructor(\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService, \r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n \r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loadData();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n loadData() {\r\n this.loader.start();\r\n let sub = this.deptDashBoardService\r\n .GetUhbvnNOCPathByXEN(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (`${data}`?.length > 0) {\r\n this.userRidList = data;\r\n } else {\r\n this.userRidList = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data Not Available`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.userRidList = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${err}`,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n onClickApp(appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(this.statusCode);\r\n const link = this.router.serializeUrl(this.router.createUrlTree(['xen', 'print', appId]));\r\n window.open(link, '_blank');\r\n }\r\n}\r\n","\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
{{ 'Print NOC' }}
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n App ID\r\n Farmer Name\r\n Farmer Mobile\r\n Village\r\n View NOC\r\n \r\n \r\n \r\n \r\n {{ rowData.AppId}}\r\n {{rowData.Farmer_Name}}\r\n {{rowData.FarmerMobile}}\r\n {{rowData.Village}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-uhbvn-noc-upload',\r\n templateUrl: './uhbvn-noc-upload.component.html',\r\n styleUrls: ['./uhbvn-noc-upload.component.scss']\r\n})\r\nexport class UhbvnNocUploadComponent implements OnInit {\r\n\r\n public ownMIfarmerDetailsForm: FormGroup;\r\n public userId: any;\r\n\r\n public uploadedBillFiles: any[] = [];\r\n\r\n public ipAddress: any = '000.000.000';\r\n public jeList: any = [];\r\n \r\n constructor(\r\n public router: Router,\r\n private fb: FormBuilder,\r\n private loader: AppLoaderService,\r\n private fApplicationService: FarmersApplicationService,\r\n private messageService: MessageService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private ipService: IpAddressService,\r\n private reportService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.getIP();\r\n this.getJEList();\r\n\r\n this.ownMIfarmerDetailsForm = this.fb.group({\r\n appNo: ['', [Validators.required]],\r\n nocPath: ['', Validators.required],\r\n je: ['', Validators.required],\r\n remarks: ['', Validators.required],\r\n });\r\n }\r\n\r\n getJEList() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .getJEUserIds(JSON.parse(payload)?.sub)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.jeList = data;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Next level user not found. ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onBillUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('ownMIfarmerPh') ? farmerconfData.get('ownMIfarmerPh') : '';\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedBillFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedBillFiles.push(file);\r\n console.log(this.uploadedBillFiles);\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Bill Uploaded Successfully',\r\n });\r\n this.ownMIfarmerDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onSubmitfarmerOwnMIDetails() {\r\n if (!this.ownMIfarmerDetailsForm.invalid) {\r\n console.log(this.ownMIfarmerDetailsForm.value);\r\n let val = this.ownMIfarmerDetailsForm.value;\r\n let reqBody = {\r\n nocPath: val?.nocPath,\r\n appId: val?.appNo,\r\n je: val?.je,\r\n remarks: val?.remarks,\r\n userId: this.userId,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress\r\n }\r\n\r\n this.submitDetails(reqBody);\r\n // this.checkAppVal(reqBody);\r\n } else {\r\n this.ownMIfarmerDetailsForm.markAllAsTouched();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Fill all madatory details.',\r\n });\r\n }\r\n console.log(this.ownMIfarmerDetailsForm.value);\r\n }\r\n\r\n checkAppVal(reqBody){\r\n this.loader.start();\r\n this.fApplicationService\r\n .getUHBVNData(reqBody?.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if (res[0]?.Message == 'Application Found') {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: res,\r\n // });\r\n\r\n this.submitDetails(reqBody);\r\n\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res[0]?.Message,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitDetails(reqBody) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .uploadUHBVNFieldXENNoc(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if (res == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res,\r\n });\r\n this.ownMIfarmerDetailsForm.reset();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

{{ 'Fill details on behalf of farmer for NOC' | translate }}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'APPLICATION_NO_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'Next user is required' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'Remarks is required' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'BILL_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n\r\n@Component({\r\n selector: 'app-uhbvn',\r\n templateUrl: './uhbvn.component.html',\r\n styleUrls: ['./uhbvn.component.scss']\r\n})\r\nexport class UhbvnComponent implements OnInit {\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n\r\n console.log(parentRoute)\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Upload Letter For Survey', routerLink: `/${parentRoute}/uhbvn/upload-noc`},\r\n { label: 'JE Survey', routerLink: `/${parentRoute}/uhbvn/uploaded-noc-survey` },\r\n // { label: 'Further Action Taken', routerLink: `/${parentRoute}/pre-estimate-survey/approved` },\r\n \r\n ];\r\n }\r\n );\r\n\r\n }\r\n}","\r\n\r\n\r\n","import { Component, OnInit, ViewChild, OnDestroy, Output, EventEmitter, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Table } from 'primeng/table';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { crop_Datas } from '../../../../models/farmer-land.model';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport exifr from 'exifr';\r\nimport piexifjs from 'piexifjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { DatePipe } from '@angular/common';\r\n// Hypothetical service to fetch NOC data\r\n\r\n@Component({\r\n selector: 'app-uploaded-noc-for-survey',\r\n templateUrl: './uploaded-noc-for-survey.component.html',\r\n styleUrls: ['./uploaded-noc-for-survey.component.scss'],\r\n providers: [DatePipe]\r\n})\r\n\r\nexport class UploadedNocForSurveyComponent implements OnInit {\r\n @ViewChild('farmerPreEstimateSurveyTable', { static: true })\r\n public farmerPreEstimateSurveyTable: Table;\r\n @ViewChild('geolocationsarrayTable', { static: true })\r\n public geolocationsarrayTable: Table;\r\n public farmerUHBVNpvData: any = [];\r\n mobileFarmerUHBVNpvData: any = [];\r\n displayUHBVNpvDialog: boolean = false;\r\n isSubmitted: boolean = false;\r\n submitEstimateForm: FormGroup;\r\n latitude: any;\r\n longitude: any;\r\n geolocationsarray: any = [];\r\n overlays: any = [];\r\n mapEnable = false;\r\n public vendorRegId: any;\r\n selectedWatersourceType: string;\r\n componentList: any = [];\r\n public userId: any;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: false,\r\n // icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'\r\n };\r\n\r\n public selectedRow: any;\r\n public selectedNonRecOpt: any;\r\n public nonRecOptionList: any = [];\r\n // public farmerMobNo: any;\r\n // public programName: any;\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {};\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n private trigger: Subject = new Subject();\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n displayBasic: boolean = false;\r\n displayCameraComponent: any = false;\r\n selctedFileType: any;\r\n documentList: any = [];\r\n insertPondAttachments: any = [];\r\n selectedCropType: any;\r\n selectedCorpModel: crop_Datas;\r\n selectedCorpModelList: any;\r\n selectedNodes1: any[] = [];\r\n cropTypeList: any[];\r\n allSchemeMaster: any[] = [];\r\n waterSourceList: any[];\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n waterSourceNames: any;\r\n ProgramID: any;\r\n cropBasedNames: any;\r\n error: string;\r\n // vendorCode: any;\r\n allAttachementsList: any = [];\r\n attachementDisplayName: any = [];\r\n imageError: string;\r\n uploadOptions: any[];\r\n autoId: any;\r\n appId: any;\r\n editBilledData: boolean = false;\r\n coordinateError: any;\r\n public multiSortMeta: any;\r\n ipAddress: any = '000.000.000';\r\n landArea: number = 0;\r\n surveyArea: number = null;\r\n\r\n public refreshLocation: any;\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: any[]\r\n\r\n public isGPSError: boolean = false;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n\r\n public componentMasterList: any = [];\r\n public applicationStatusList: any = [];\r\n\r\n public consentRecommend: any = null;\r\n public isJeLogin: boolean = false;\r\n public isXenLogin: boolean = false;\r\n\r\n public selectedVillage: any;\r\n public financialYearList: any = [];\r\n public miVendorList: any = [];\r\n public filteredmiVendorList: any = [];\r\n public villageList: any = [];\r\n public filteredVillage: any[];\r\n\r\n public xenRemarks: any;\r\n public XenRecommended: any;\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private vendorService: VendorDashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private flService: FarmerLandDetailService,\r\n private route: ActivatedRoute,\r\n private fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private ipService: IpAddressService,\r\n public cd: ChangeDetectorRef,\r\n public router: Router,\r\n private service: BaseService,\r\n private reportsService: ReportsService,\r\n private datePipe: DatePipe,\r\n ) {\r\n (this.uploadOptions = [\r\n { name: 'Field Photo', code: 'field_photo' },\r\n { name: 'Land Paper Photo', code: 'land_paper' },\r\n { name: 'Bill Photo', code: 'bill_photo' },\r\n { name: 'PV Performa Photo', code: 'pv_performa_photo' },\r\n { name: 'Others', code: 'others' },\r\n ]);\r\n }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n // const token: any = this.tokenService.retrieve();\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n\r\n // this.onCapture();\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {};\r\n // console.log('token.role', tokenData?.role)\r\n if (tokenData && (tokenData.role == 'JE')) {\r\n this.isJeLogin = true;\r\n this.isXenLogin = false;\r\n }\r\n if (tokenData && (tokenData.role == 'XEN')) {\r\n this.isJeLogin = false;\r\n this.isXenLogin = true;\r\n }\r\n\r\n this.loadData(this.userId);\r\n // this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.getCorpType();\r\n\r\n setTimeout(() => {\r\n this.componentMasterList = [\r\n {\r\n Program_Id: 1,\r\n Program_Name: 'Portable Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 2,\r\n Program_Name: 'Mini Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 3,\r\n Program_Name: 'Drip',\r\n Active: true,\r\n },\r\n ];\r\n this.applicationStatusList = [\r\n {\r\n code: 1,\r\n name: 'MIS Installation Recommended',\r\n Active: true,\r\n },\r\n {\r\n code: 0,\r\n name: 'MIS Installation Not Recommended',\r\n Active: true,\r\n },\r\n ];\r\n\r\n this.nonRecOptionList = [\r\n { name: 'Bill Not provided', code: '1' },\r\n { name: 'Latitude & Longitude mismatched', code: '2' },\r\n { name: 'MIS not operational', code: '3' },\r\n { name: 'Billed items quantity mismatched', code: '4' },\r\n { name: 'others', code: '5' },\r\n ]\r\n }, 100);\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'UHBVN_PV_APP');\r\n },\r\n },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf(\r\n // this.appVerificationModel,\r\n // 'Pre_estimate_survey_file'\r\n // );\r\n // },\r\n // },\r\n ];\r\n // setTimeout(() => {\r\n // console.log(this.overlays, 'geeee')\r\n // if(this.overlays.length >=3){\r\n // this.onDelect(0)\r\n // }\r\n // // else {\r\n // // this.overlays.forEach((val, index) => {\r\n // // if(val?.title == 'Coordinate 1'){\r\n // // this.overlays.splice(index, 1);\r\n // // this.geolocationsarray = [];\r\n // // this.onSave();\r\n // // }\r\n // // })\r\n // // }\r\n // }, 5000)\r\n this.submitEstimateForm = this.fb.group({\r\n mobileNo: [{ value: '', disabled: this.isXenLogin }, [Validators.required, Validators.minLength(10), Validators.maxLength(10)]],\r\n aadharNo: [{ value: '', disabled: this.isXenLogin }, [Validators.required, Validators.minLength(12), Validators.maxLength(12)]],\r\n farmersName: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n fatherName: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n village: [{ value: this.selectedVillage, disabled: this.isXenLogin }, Validators.required],\r\n address: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n division: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n vendor: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n\r\n area: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n finyear: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n letterDate: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n sdo: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n letterNo: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n misInstalled: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n cropType: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n cropId: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n killNumber: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n performaQunatity: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n appStatus: [{ value: '', disabled: this.isXenLogin }, Validators.required],\r\n checkBoxRec: [{ value: '', disabled: this.isXenLogin },],\r\n nonRecReason: [{ value: '', disabled: this.isXenLogin },],\r\n remarksNonRec: [{ value: '', disabled: this.isXenLogin },],\r\n jePVRemarks: [{ value: '', disabled: this.isXenLogin },],\r\n\r\n // waterSource: ['', Validators.required],\r\n // ph: ['', Validators.required],\r\n // ec: ['', Validators.required],\r\n // waterReq: ['', Validators.required],\r\n // plantSpacing: ['', Validators.required],\r\n // rowSpacing: ['', Validators.required],\r\n });\r\n // this.farmerPreEstimateSurveyTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.multiSortMeta = [];\r\n this.multiSortMeta.push({ field: 'AssignedDate', order: 1 });\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n\r\n this.getFinancialYearList();\r\n this.getVillageData();\r\n }\r\n\r\n getFinancialYearList() {\r\n this.reportsService.getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.financialYearList = data;\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'error Message',\r\n detail: `${err}`,\r\n });\r\n }\r\n })\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n getVillageData() {\r\n this.loader.start();\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n this.loader.close();\r\n // console.log(res);\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n }\r\n\r\n filterMIVendor(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.miVendorList.length; i++) {\r\n const vendor = this.miVendorList[i];\r\n if (vendor.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendor);\r\n }\r\n }\r\n this.filteredmiVendorList = filtered;\r\n }\r\n\r\n onSelectProgramme(type, venCode) {\r\n this.f['vendor'].reset();\r\n\r\n let programme = this.f['misInstalled'].value;\r\n\r\n console.log(programme);\r\n this.getVendorDropdown(programme, type, venCode);\r\n }\r\n\r\n getVendorDropdown(programId, type, venCode) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getAllMIvenders(programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.miVendorList = res;\r\n\r\n console.log(venCode);\r\n\r\n if(type == 'update'){\r\n let selVendor = this.miVendorList?.filter(val => val?.Vendor_Code == venCode)[0];\r\n this.f.vendor.setValue(selVendor);\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miVendorList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n this.ngOnDestroy();\r\n\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.selectedYear = res;\r\n this.loadData(this.userId);\r\n this.farmerPreEstimateSurveyTable.filters['Fin_Year'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Application No': d?.AppId,\r\n 'Farmer Name': d?.Farmer_Name,\r\n 'Mobile No': d?.FarmerMobile,\r\n 'Father_Name': d?.Father_Name,\r\n 'Village': d?.VillageName,\r\n 'Vendor Name': d?.VendorFullName,\r\n 'Programme Name': d?.Program_Name,\r\n 'Killa No': d?.KillaNo,\r\n 'Totoal Area (in Acre)': d?.AreaAcre,\r\n 'Fin Year': d?.Fin_Year,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onSelectAppStatus(val) {\r\n\r\n console.log(val)\r\n // recommended 1\r\n if (val?.value == 1) {\r\n this.submitEstimateForm.controls['checkBoxRec'].setValidators([Validators.required]);\r\n this.submitEstimateForm.controls['nonRecReason'].clearValidators();\r\n this.submitEstimateForm.controls['remarksNonRec'].clearValidators();\r\n }\r\n // not recommended 0\r\n else if (val?.value == 0) {\r\n this.submitEstimateForm.controls['nonRecReason'].setValidators([Validators.required]);\r\n this.submitEstimateForm.controls['remarksNonRec'].clearValidators();\r\n this.submitEstimateForm.controls['checkBoxRec'].clearValidators();\r\n }\r\n this.submitEstimateForm.controls['checkBoxRec'].updateValueAndValidity();\r\n this.submitEstimateForm.controls['nonRecReason'].updateValueAndValidity();\r\n this.submitEstimateForm.controls['remarksNonRec'].updateValueAndValidity();\r\n }\r\n\r\n onSelectNonRecOption(val) {\r\n\r\n console.log(this.submitEstimateForm.value.nonRecReason)\r\n console.log(val, val.value)\r\n\r\n if (this.submitEstimateForm.value.nonRecReason?.code == 5) {\r\n this.submitEstimateForm.controls['checkBoxRec'].clearValidators();\r\n this.submitEstimateForm.controls['remarksNonRec'].setValidators([Validators.required]);\r\n // this.submitEstimateForm.controls['nonRecReason'].clearValidators();\r\n } else {\r\n this.submitEstimateForm.controls['checkBoxRec'].clearValidators();\r\n this.submitEstimateForm.controls['remarksNonRec'].clearValidators();\r\n // this.submitEstimateForm.controls['nonRecReason'].setValidators([Validators.required]);\r\n }\r\n this.submitEstimateForm.controls['checkBoxRec'].updateValueAndValidity();\r\n this.submitEstimateForm.controls['remarksNonRec'].updateValueAndValidity();\r\n }\r\n\r\n\r\n // ============================================\r\n\r\n onRefreshCurrentLocation() {\r\n // console.log(\"refreshLocation\")\r\n this.overlays.forEach((val, index) => {\r\n if (val?.title == \"Current Location\") {\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n this.getCurrentLocation();\r\n }\r\n\r\n getCurrentLocation() {\r\n // console.log(this.overlays)\r\n let overlay = this.overlays;\r\n let mapEnable = this.mapEnable;\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 10000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n const crd = pos.coords;\r\n const obj = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.options.center = obj;\r\n // const image = 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png';\r\n\r\n const currentLocationMarker = new google.maps.Marker({\r\n position: { lat: obj?.lat, lng: obj?.lng },\r\n title: 'Current Location',\r\n icon: '../../../assets/map/location-icon-5.png',\r\n });\r\n\r\n overlay.push(currentLocationMarker)\r\n // console.log(overlay);\r\n\r\n\r\n // instant.geolocationsarray.push(obj)\r\n // instant.onSave()\r\n // instant.addOverlay()\r\n instant.mapEnable = true;\r\n }\r\n\r\n function error(err) {\r\n instant.isGPSError = true;\r\n let detailsMsg = '';\r\n if (err?.message == 'User denied Geolocation') {\r\n detailsMsg = 'Please enable Geolocation access.'\r\n } else {\r\n detailsMsg = 'Please Refresh the Current Location.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg,\r\n });\r\n // console.log(`ERROR1(${err.code}): ${err.message}`);\r\n }\r\n\r\n // this.mapEnable = true;\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n // this.addOverlay();\r\n }\r\n }\r\n\r\n get f() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n loadData(userId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this._personalDetalSer\r\n .getUHBVNAppByXEN(userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'UHBVN PV',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n if (data.length > 0) {\r\n this.farmerUHBVNpvData = data;\r\n this.appVerificationModel = this.farmerUHBVNpvData;\r\n this.mobileFarmerUHBVNpvData = data;\r\n // this.mobileFarmerUHBVNpvData = this.farmerUHBVNpvData.filter(val => val.Fin_Year == this.selectedYear);\r\n\r\n }\r\n else {\r\n this.farmerUHBVNpvData = [];\r\n this.appVerificationModel = []\r\n this.mobileFarmerUHBVNpvData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'UHBVN PV',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.cropTypeList = files;\r\n // console.log(this.cropTypeList, 'this.cropTypeList');\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropTypeName(event) {\r\n const data = this.cropTypeList.find((element) => element.data == event);\r\n if (data) {\r\n this.cropBasedNames = data.children;\r\n } else {\r\n this.cropBasedNames = [];\r\n }\r\n }\r\n\r\n selectPreSurveyData(event) { }\r\n\r\n onCloseDialog() {\r\n this.isGPSError = false;\r\n clearInterval(this.refreshLocation);\r\n this.displayUHBVNpvDialog = false;\r\n this.mapEnable = false;\r\n this.geolocationsarray = [];\r\n this.documentList = [];\r\n this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.landArea = 0;\r\n this.surveyArea = null;\r\n this.addOverlay();\r\n this.overlays = this.overlays.filter(val => {\r\n return !val?.title?.includes('Coordinate')\r\n });\r\n }\r\n onCapture() {\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 5000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n let isInvalid = instant.geolocationsarray.find((data) => {\r\n if (\r\n data.lat == pos.coords.latitude &&\r\n data.lng == pos.coords.longitude\r\n ) {\r\n return data;\r\n }\r\n });\r\n\r\n if (isInvalid) {\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Please move to a different location to get new coordinates.',\r\n });\r\n return;\r\n }\r\n\r\n const crd = pos.coords;\r\n const obj = {\r\n CornerID: instant.geolocationsarray.length + 1,\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.geolocationsarray.push(obj);\r\n \r\n // Check for self-intersections before allowing the polygon creation\r\n if (instant.isSelfIntersecting(instant.geolocationsarray)) {\r\n // this.onDelect(this.geolocationsarray.length - 1);\r\n instant.geolocationsarray.pop();\r\n alert('Polygon is invalid due to intersecting edges. Please redraw.');\r\n return;\r\n }else {\r\n instant.onSave();\r\n }\r\n }\r\n\r\n function error(err) {\r\n let detailsMsg = '';\r\n if (err?.message == 'User denied Geolocation') {\r\n detailsMsg = 'Please enable Geolocation access'\r\n } else {\r\n detailsMsg = 'Please capture again.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg\r\n ,\r\n });\r\n // console.log(`ERROR(${err.code}): ${err.message}`);\r\n }\r\n\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n }\r\n }\r\n\r\n isSelfIntersecting(coordsArray) {\r\n for (let i = 0; i < coordsArray.length - 1; i++) {\r\n for (let j = i + 2; j < coordsArray.length; j++) {\r\n // Prevent checking consecutive edges or the last edge with the first one\r\n if (i === 0 && j === coordsArray.length - 1) continue;\r\n if (this.doLinesIntersect(coordsArray[i], coordsArray[i + 1], coordsArray[j], coordsArray[(j + 1) % coordsArray.length])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n doLinesIntersect(p1, q1, p2, q2) {\r\n // Helper function to calculate orientation of the points\r\n function orientation(p, q, r) {\r\n let val = (q.lat - p.lat) * (r.lng - q.lng) - (q.lng - p.lng) * (r.lat - q.lat);\r\n if (val === 0) return 0; // collinear\r\n return (val > 0) ? 1 : 2; // clock or counterclockwise\r\n }\r\n\r\n // Check the four orientations needed for the general and special cases\r\n let o1 = orientation(p1, q1, p2);\r\n let o2 = orientation(p1, q1, q2);\r\n let o3 = orientation(p2, q2, p1);\r\n let o4 = orientation(p2, q2, q1);\r\n\r\n // General case\r\n if (o1 !== o2 && o3 !== o4) return true;\r\n\r\n // Special cases\r\n // p1, q1, p2 are collinear and p2 lies on segment p1q1\r\n if (o1 === 0 && this.onSegment(p1, p2, q1)) return true;\r\n\r\n // p1, q1, q2 are collinear and q2 lies on segment p1q1\r\n if (o2 === 0 && this.onSegment(p1, q2, q1)) return true;\r\n\r\n // p2, q2, p1 are collinear and p1 lies on segment p2q2\r\n if (o3 === 0 && this.onSegment(p2, p1, q2)) return true;\r\n\r\n // p2, q2, q1 are collinear and q1 lies on segment p2q2\r\n if (o4 === 0 && this.onSegment(p2, q1, q2)) return true;\r\n\r\n return false;\r\n }\r\n\r\n onSegment(p, q, r) {\r\n return q.lng <= Math.max(p.lng, r.lng) && q.lng >= Math.min(p.lng, r.lng) &&\r\n q.lat <= Math.max(p.lat, r.lat) && q.lat >= Math.min(p.lat, r.lat);\r\n }\r\n\r\n onDelect(i) {\r\n // console.log(this.geolocationsarray)\r\n this.geolocationsarray.splice(i, 1);\r\n for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n this.geolocationsarray[index].CornerID = index + 1;\r\n }\r\n // if (this.geolocationsarray.length == 0) {\r\n // // this.mapEnable = false;\r\n // this.mapEnable = true;\r\n // } else {\r\n this.options.center = this.geolocationsarray[0];\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.overlays = [];\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index);\r\n });\r\n this.addOverlay();\r\n // }\r\n }\r\n\r\n onSave() {\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.options.center = this.geolocationsarray[0];\r\n this.overlays = [];\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index);\r\n });\r\n this.addOverlay();\r\n }\r\n\r\n onNext() { }\r\n mobileSearch(value) {\r\n this.mobileFarmerUHBVNpvData =\r\n this.farmerUHBVNpvData.filter((data: any) => {\r\n if (\r\n data.appID.toLowerCase().includes(value.toLowerCase()) ||\r\n data.FarmerName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.ProgrammeName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.district.toLowerCase().includes(value.toLowerCase()) ||\r\n data.village.toLowerCase().includes(value.toLowerCase()) ||\r\n data.block.toLowerCase().includes(value.toLowerCase()) ||\r\n data.Status_Ar.toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data;\r\n }\r\n });\r\n }\r\n addOverlay() {\r\n this.overlays.forEach((val, index) => {\r\n if (val?.fillColor) {\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n\r\n this.overlays.push(\r\n new google.maps.Polygon({\r\n paths: this.geolocationsarray,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n // console.log(this.overlays);\r\n if (this.geolocationsarray.length >= 3) {\r\n let polygon = new google.maps.Polygon({ paths: this.geolocationsarray })\r\n let area = this.calculateLandArea(polygon.getPath());\r\n this.landArea = Number((0.000247105 * area).toFixed(2));\r\n // console.log(\"Calculated Area\",this.landArea);\r\n }\r\n // this.onRefreshCurrentLocation();\r\n }\r\n\r\n calculateLandArea(polygon) {\r\n return google.maps.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n removeOverlay() {\r\n this.overlays.pop().setMap(null);\r\n }\r\n addMarkers(row: any, index) {\r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: 'Coordinate ' + row?.CornerID,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n onDrag(event) {\r\n // console.log(\"event\", event, event?.overlay?.position?.lat(), event?.overlay?.position?.lng());\r\n // console.log(this.overlays);\r\n\r\n let index = -1;\r\n index = event?.overlay?.title ? event?.overlay?.title.split(' ')[1] : -1;\r\n if (index >= 1) {\r\n // console.log(this.geolocationsarray, index, this.geolocationsarray[index-1], this.geolocationsarray[index-1]['lat']);\r\n this.geolocationsarray[index - 1].lat = event?.overlay?.position?.lat();\r\n this.geolocationsarray[index - 1].lng = event?.overlay?.position?.lng();\r\n\r\n this.removeOverlay();\r\n this.addOverlay();\r\n }\r\n }\r\n\r\n showBasicDialog() {\r\n this.displayBasic = true;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n exifr\r\n .parse(this.webcamImage.imageAsDataUrl)\r\n .then((output) => {//console.log('Camera:', output)\r\n });\r\n // console.log(piexifjs.load(this.webcamImage.imageAsDataUrl));\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], this.selctedFileType + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // if (params.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `preEstimateSurvey_${new Date().getTime()}`;\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n document_type: this.selctedFileType.name,\r\n displayName: fileName,\r\n name: this.selctedFileType.name,\r\n // this.selctedFileType.code === 'farmer_photo'\r\n // ? 'Farmer Photo'\r\n // : this.selctedFileType.code === 'water_source'\r\n // ? 'Water Source'\r\n // : this.selctedFileType.code === 'land_photo'\r\n // ? 'Land Photo'\r\n // : this.selctedFileType.code === 'others'\r\n // ? 'Others'\r\n // : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n // let documentListObject = {\r\n // // 'appId': this.cryptoJsService.DecryptData(params.appId),\r\n // 'documentList': this.documentList\r\n // }\r\n // sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n // console.log('Error');\r\n }\r\n this.selctedFileType = '';\r\n });\r\n // });\r\n }\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n onCaptureImage() {\r\n this.displayCameraComponent = true;\r\n }\r\n onCloseImageDialog() {\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n }\r\n getImagesArray() {\r\n if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'ERROR_MESSAGE',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n return;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n submitSurveyDetails() {\r\n let existImage = true;\r\n this.isSubmitted = true;\r\n console.log(this.submitEstimateForm.value)\r\n if (this.submitEstimateForm.valid) {\r\n if (this.geolocationsarray.length < 4) {\r\n this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES';\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please provide atleast 4 GPS Coordinates',\r\n });\r\n return;\r\n }\r\n // else if (this.landArea - this.surveyArea >= 1) {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: `Calculated Area (${this.landArea}) is much greater than Survey Area (${this.surveyArea}). Please recapture the coordinates.`,\r\n // });\r\n // return;\r\n // } \r\n else if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n existImage = false;\r\n }\r\n }\r\n });\r\n let attachemntArray = [];\r\n if (!existImage) {\r\n return;\r\n }\r\n for (let index = 0; index < this.documentList.length; index++) {\r\n const obj = {\r\n attachmentsDoc: this.documentList[index].attachment,\r\n documentType: this.documentList[index].document_type,\r\n };\r\n attachemntArray.push(obj);\r\n }\r\n let geoCoordinates = [];\r\n for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n const gpsObj = {\r\n CornerID: index + 1,\r\n latitude: this.geolocationsarray[index].lat,\r\n longitude: this.geolocationsarray[index].lng,\r\n };\r\n geoCoordinates.push(gpsObj);\r\n }\r\n\r\n let surveyData = this.submitEstimateForm.value;\r\n const reqBody = [\r\n {\r\n \"appId\": this.selectedRow?.AppId,\r\n \"cropId\": surveyData?.cropId,\r\n \"cropTypeId\": surveyData?.cropType,\r\n \"area\": surveyData?.area,\r\n \"killaNo\": surveyData?.killNumber,\r\n \"vendor\": JSON.stringify(surveyData?.vendor?.Vendor_Code),\r\n \"farmerMobile\": surveyData?.mobileNo,\r\n \"aadhaarNo\": surveyData?.aadharNo,\r\n \"farmer_Name\": surveyData?.farmersName,\r\n \"father_Name\": surveyData?.fatherName,\r\n \"fin_Year\": surveyData?.finyear,\r\n \"village\": surveyData?.village?.Code,\r\n \"networkId\": this.ipAddress,\r\n \"terminalId\": this.ipAddress,\r\n \"division\": surveyData?.division,\r\n \"residenceOf\": surveyData?.address,\r\n \"typeOfMISInstalled\": surveyData?.misInstalled ? surveyData?.misInstalled : 0,\r\n \"performaQuantity\": Number(surveyData?.performaQunatity),\r\n \"userId\": this.userId,\r\n \"jE_Recommended\": surveyData?.appStatus,\r\n \"jE_Remark\": surveyData?.appStatus == 0 ? (surveyData?.nonRecReason?.code == 5 ? (surveyData?.remarksNonRec ? surveyData?.remarksNonRec : '') : surveyData?.nonRecReason?.name) : '',\r\n \"xen_Recommended\": 0,\r\n \"xeN_Remark\": \"string\",\r\n \"letterDate\": surveyData?.letterDate ? this.datePipe.transform(new Date(surveyData?.letterDate), 'yyyy-MM-dd') : surveyData?.letterDate,\r\n \"sdo\": surveyData?.sdo,\r\n \"letterNo\": surveyData?.letterNo,\r\n \"insertServayAttachments\": attachemntArray,\r\n \"gpsCoordinates\": geoCoordinates,\r\n \"DocPath\": \"\"\r\n },\r\n ];\r\n\r\n console.log(surveyData);\r\n console.log(reqBody);\r\n this.submitUHBVNSurvey(reqBody);\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please fill all the mandatory feilds',\r\n });\r\n }\r\n }\r\n removeImg(i) {\r\n this.documentList.splice(i, 1);\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (this.isJeLogin && row.JE_Status == 'Done') {\r\n return '#b9ecb9';\r\n } else if (this.isXenLogin && row.XEN_Status == 'Done') {\r\n return '#b9ecb9';\r\n } else return '#f9cece';\r\n }\r\n\r\n addEstimation(data) {\r\n this.getCurrentLocation();\r\n this.addOverlay();\r\n this.refreshLocation = setInterval(() =>\r\n this.onRefreshCurrentLocation(), 6000)\r\n\r\n // setTimeout(() => {\r\n // if(!this.isGPSError){\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 5000)\r\n // }\r\n // }, 7000)\r\n\r\n\r\n\r\n this.displayUHBVNpvDialog = true;\r\n this.geolocationsarray = [];\r\n this.selectedRow = data;\r\n\r\n // this.programmeAppId = data.appID;\r\n // this.programmeFarmerName = data.FarmerName;\r\n // this.ProgramID = data.ProgramID;\r\n // this.vendorCode = data.Vendor_Code;\r\n this.isSubmitted = false;\r\n this.surveyArea = data.AreaAcre;\r\n // this.applyConditionalValidation(data);\r\n }\r\n\r\n updateEstimation(data) {\r\n this.autoFillDetails(data);\r\n // if(this.isXenLogin){\r\n // }else if(this.isJeLogin){\r\n // this.autoFillDetails(data);\r\n // }\r\n }\r\n\r\n autoFillDetails(data){\r\n this.geolocationsarray = [];\r\n\r\n this.geolocationsarray = [];\r\n this.selectedRow = data;\r\n\r\n this.isSubmitted = false;\r\n this.displayUHBVNpvDialog = true;\r\n \r\n this.loader.start();\r\n this._personalDetalSer\r\n .getUHBVN_Letter_MI_PV(data?.AppId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data) {\r\n this.surveyArea = data.Area;\r\n // village\r\n // vendor\r\n this.f.mobileNo.setValue(data.FarmerMobile);\r\n this.f.aadharNo.setValue(data.AadhaarNo);\r\n this.f.farmersName.setValue(data.Farmer_Name);\r\n this.f.fatherName.setValue(data.Father_Name);\r\n this.f.address.setValue(data.ResidenceOf);\r\n this.f.division.setValue(data.Division);\r\n this.f.finyear.setValue(data.Fin_Year);\r\n this.f.letterDate.setValue(new Date(data.LetterDate));\r\n this.f.sdo.setValue(data.SDO);\r\n this.f.letterNo.setValue(data.LetterNo);\r\n this.f.cropType.setValue(data.CropTypeId);\r\n this.f.cropId.setValue(data?.CropId);\r\n this.f.killNumber.setValue(data?.KillaNo);\r\n this.f.area.setValue(data?.Area);\r\n this.f.performaQunatity.setValue(data?.PerformaQuantity);\r\n this.f.appStatus.setValue(data?.JeRecommended == \"True\" ? 1 : 0);\r\n this.f.jePVRemarks.setValue(data?.JeRemarks);\r\n \r\n this.f.misInstalled.setValue(data?.TypeOfMISInstalled);\r\n this.onSelectProgramme('update', data?.Vendor);\r\n\r\n let selVillage = this.villageList?.filter(val => val?.Code == data?.Village)[0];\r\n this.f.village.setValue(selVillage?.Name);\r\n this.selectedVillage = selVillage;\r\n\r\n for (let index = 0; index < data?.GPSCoordinates?.length; index++) {\r\n let geoData = {\r\n CornerID: data.GPSCoordinates[index].CornerID,\r\n lat: data.GPSCoordinates[index].Latitude,\r\n lng: data.GPSCoordinates[index].Longitude,\r\n };\r\n this.geolocationsarray.push(geoData);\r\n }\r\n if (this.geolocationsarray.length == 0) {\r\n this.mapEnable = false;\r\n } else {\r\n if (this.geolocationsarray && this.geolocationsarray.length > 0) {\r\n this.options.center = this.geolocationsarray[0];\r\n }\r\n this.mapEnable = true;\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index);\r\n });\r\n this.addOverlay();\r\n }\r\n \r\n for (let index = 0; index < data?.UploadAttachments?.length; index++) {\r\n let imagesData = {\r\n attachment: data.UploadAttachments[index].ImagePath,\r\n attachmentRawUrl: data.UploadAttachments[index].ImagePath,\r\n document_type: data.UploadAttachments[index].DocumentType,\r\n displayName: data.UploadAttachments[index].DocumentType,\r\n name: data.UploadAttachments[index].DocumentType,\r\n };\r\n this.documentList.push(imagesData);\r\n }\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n } \r\n },\r\n error: (err) => {\r\n this.displayUHBVNpvDialog = false;\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n // applyConditionalValidation(data) {\r\n // if (data?.ApplicantType == '7500' && data?.ProgrammeName == 'Drip Irrigation') {\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.min(0.3)]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.min(0.6)]);\r\n // }\r\n // else {\r\n // this.submitEstimateForm.controls['rowSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['plantSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.required]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.required]);\r\n // }\r\n // this.submitEstimateForm.controls['rowSpacing'].updateValueAndValidity();\r\n // this.submitEstimateForm.controls['plantSpacing'].updateValueAndValidity();\r\n // }\r\n\r\n // selectViewApplication(application, statusCode) {\r\n // if (application.appID) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(\r\n // this.router.createUrlTree([\r\n // this.router.url.split('/')[1],\r\n // 'print',\r\n // application.appID,\r\n // ])\r\n // );\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Invalid App ID',\r\n // });\r\n // }\r\n // }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'appID', header: 'appID' },\r\n // { field: 'registerationDate_filter', header: 'date of Submit' },\r\n // { field: 'registerationReassignDate_filter', header: 'date of Resubmit' },\r\n // { field: 'ApplicantType', header: 'Applicant type' },\r\n // { field: 'FarmerName', header: 'Farmer Name' },\r\n // { field: 'village', header: 'village' },\r\n // { field: 'block', header: 'block' },\r\n // { field: 'district', header: 'district' },\r\n // { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n // { field: 'ProgrammeName', header: 'Program Name' },\r\n // { field: 'LandDetail', header: 'Land Detail' },\r\n // { field: 'Total_Area', header: 'Total Area' },\r\n // { field: 'Status_Ar', header: 'current status' },\r\n // { field: 'DeptRemarks', header: 'Remarks' },\r\n // { field: 'ActOnPrevAction', header: 'Act on PrevAction' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData, { styles: { fontSize: 6 } });\r\n\r\n // doc.save(`${filename}.pdf`);\r\n // });\r\n // });\r\n // }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData(this.userId);\r\n // this.loadDataAndApplyFilter();\r\n }\r\n\r\n submitUHBVNSurvey(reqBody) {\r\n this._personalDetalSer\r\n .submitUHBVN_Letter_MI_PV(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Request Letter for NOC',\r\n reqBody[0]?.appId,\r\n new Date(),\r\n resp,\r\n reqBody\r\n );\r\n if (resp == 'Success' || resp == 'success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n this.isSubmitted = true;\r\n this.onCloseDialog();\r\n this.loadData(this.userId);\r\n // this.loadDataAndApplyFilter();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Request Letter for NOC',\r\n reqBody[0]?.appId,\r\n new Date(),\r\n err,\r\n reqBody\r\n );\r\n this.isSubmitted = true;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitXenDetails(){\r\n if(this.xenRemarks == null || this.xenRemarks == '' || this.XenRecommended == null){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Application Status and Enter Remarks',\r\n });\r\n return;\r\n }\r\n let surveyData = this.submitEstimateForm.value;\r\n const reqBody = [\r\n {\r\n \"appId\": this.selectedRow?.AppId,\r\n \"cropId\": surveyData?.cropId,\r\n \"cropTypeId\": surveyData?.cropType,\r\n \"area\": surveyData?.area,\r\n \"killaNo\": surveyData?.killNumber,\r\n \"vendor\": JSON.stringify(surveyData?.vendor?.Vendor_Code),\r\n \"farmerMobile\": surveyData?.mobileNo,\r\n \"aadhaarNo\": surveyData?.aadharNo,\r\n \"farmer_Name\": surveyData?.farmersName,\r\n \"father_Name\": surveyData?.fatherName,\r\n \"fin_Year\": surveyData?.finyear,\r\n \"village\": surveyData?.village?.Code,\r\n \"networkId\": this.ipAddress,\r\n \"terminalId\": this.ipAddress,\r\n \"division\": surveyData?.division,\r\n \"residenceOf\": surveyData?.address,\r\n \"typeOfMISInstalled\": surveyData?.misInstalled ? surveyData?.misInstalled : 0,\r\n \"performaQuantity\": Number(surveyData?.performaQunatity),\r\n \"userId\": this.userId,\r\n \"jE_Recommended\": surveyData?.appStatus,\r\n \"jE_Remark\": surveyData?.appStatus == 0 ? (surveyData?.nonRecReason?.code == 5 ? (surveyData?.remarksNonRec ? surveyData?.remarksNonRec : '') : surveyData?.nonRecReason?.name) : '',\r\n \"xen_Recommended\": this.XenRecommended,\r\n \"xeN_Remark\": this.xenRemarks,\r\n \"letterDate\": surveyData?.letterDate ? this.datePipe.transform(new Date(surveyData?.letterDate), 'yyyy-MM-dd') : surveyData?.letterDate,\r\n \"sdo\": surveyData?.sdo,\r\n \"letterNo\": surveyData?.letterNo,\r\n \"insertServayAttachments\": this.documentList,\r\n \"gpsCoordinates\": this.geolocationsarray,\r\n \"DocPath\": \"\"\r\n },\r\n ];\r\n\r\n console.log(reqBody);\r\n this.submitUHBVNSurvey(reqBody);\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}{{item.AppId}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.Farmer_Name}}\r\n
{{'MOBILE_NO'| translate}}\r\n {{item.FarmerMobile}}\r\n
{{'FATHERS_NAME'| translate}}\r\n {{item.Father_Name}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.VillageName}}\r\n
{{'VENDOR_NAME'| translate}}\r\n {{item.VendorFullName}}\r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.Program_Name}}\r\n
{{'KILLA_NO'| translate}}\r\n {{item.KillaNo}}\r\n
{{'TOTAL_AREA_IN_ACRE'| translate}}\r\n {{item.AreaAcre}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.Fin_Year}}\r\n
{{'Status'| translate}}\r\n {{item.JE_Status}}\r\n
{{'ESTIMATION_ACTION'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_NAME_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'FATHERS_NAME_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'AADHAR_NO_IS_REQUIRED' | translate}}
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'AADHAR_NO_SHOULD_CONTAIN_ONLY_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'MOBILE_NO_IS_REQUIRED' | translate}}
\r\n\r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
{{'MBILE_NO_SHOULD_CONTAIN' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'VILLAGE_NAME_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'ADDRESS_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'Division is required'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'Fin Year is required'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'SDO is required'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'Letter No is required'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'Letter Date is required'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_IS_REQ'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MIS Installed is required'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'VENDOR_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'KILLA_NUMBER_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'AREA_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'Performa Quantity is required'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MIS Installed is required'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
{{'Click on checkbox'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
{{'MIS Installed Not Recommended reason required'|\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
{{'MIS Installed Not Recommended remark required'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}
\r\n
0 || overlays.length>0\" style=\"padding: 0 1em;\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID'| translate}}{{item.CornerID}}\r\n
{{'LATITUDE'| translate}}{{item.lat}}
{{'LONGITUDE'| translate}}{{item.lng}}
{{'ACTIONS'| translate}}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n

{{coordinateError}}\r\n

\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
0\" class=\"field md:col-4 col-12\">\r\n \r\n
\r\n
\r\n
1\" class=\"p-fluid p-formgrid justify-content-center areaError mb-4\"\r\n style=\"display: flex; flex-wrap:wrap\">\r\n

{{ \"CALCULATED_AREA_IS_MUCH_GREATER_THAN_SURVEYED_AREA._PLEASE_RECAPTURE_THE_COORDINATES\" | translate }}\r\n

\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
{{'CAPTURE_IMAGE'| translate}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{item.name}}\r\n

\r\n

\r\n {{item.name}}\r\n

\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n

\r\n {{imageError}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">\"{{'MESSAGES'| translate}}\":

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-update-mi-component-cml-validity',\r\n templateUrl: './update-mi-component-cml-validity.component.html',\r\n styleUrls: ['./update-mi-component-cml-validity.component.scss'],\r\n})\r\nexport class UpdateMiComponentCmlValidityComponent implements OnInit {\r\n constructor(\r\n private messageService: MessageService,\r\n private vendorService: VendorDashboardService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService,\r\n ) {}\r\n\r\n public vendorRegId: any;\r\n public userId: any;\r\n\r\n public program: any;\r\n public selectedProgram: any = [];\r\n public vendor: any;\r\n public selectedVendor: any = [];\r\n public category: any;\r\n public selectedCategory: any = [];\r\n // public component: any;\r\n // public selectedComponent: any = [];\r\n public cml: any;\r\n public selectedCML: any = [];\r\n\r\n public programId: any;\r\n public vendorId: any;\r\n public categoryId: any;\r\n // public componentId: any;\r\n public cmlId: any;\r\n\r\n // public enteredCMLNo: number;\r\n\r\n public selectedDate: Date;\r\n public filteredVendor: any[];\r\n\r\n ngOnInit(): void {\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n\r\n this.program = null;\r\n this.programId = null;\r\n this.selectedProgram = [];\r\n this.vendor = null;\r\n this.vendorId = null;\r\n this.selectedVendor = [];\r\n this.category = null;\r\n this.categoryId = null;\r\n this.selectedCategory = [];\r\n // this.component = null;\r\n // this.componentId = null;\r\n // this.selectedComponent = [];\r\n this.cml = null;\r\n this.cmlId = null;\r\n this.selectedCML = [];\r\n\r\n this.selectedDate = null;\r\n this.getComponentMaster();\r\n }\r\n\r\n getComponentMaster() {\r\n this.loader.start();\r\n this.vendorService\r\n .getComponentMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.program = res;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectProgram() {\r\n this.vendor = null;\r\n this.vendorId = null;\r\n this.selectedVendor = [];\r\n this.category = null;\r\n this.categoryId = null;\r\n this.selectedCategory = [];\r\n // this.component = null;\r\n // this.componentId = null;\r\n // this.selectedComponent = [];\r\n this.cml = null;\r\n this.cmlId = null;\r\n this.selectedCML = [];\r\n this.selectedDate = null;\r\n this.programId = this.selectedProgram?.Program_Id;\r\n this.getAllMIVendersDropdown();\r\n }\r\n\r\n getAllMIVendersDropdown() {\r\n this.loader.start();\r\n this.vendorService\r\n .getAllMIVendors(this.programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.vendor = res;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectVendor(event) {\r\n console.log(\"onSelectVendor\", this.selectedVendor, event)\r\n this.category = null;\r\n this.categoryId = null;\r\n this.selectedCategory = [];\r\n // this.component = null;\r\n // this.componentId = null;\r\n // this.selectedComponent = [];\r\n this.cml = null;\r\n this.cmlId = null;\r\n this.selectedCML = [];\r\n this.selectedDate = null;\r\n this.vendorId = this.selectedVendor?.Vendor_Code;\r\n this.getCategoryDropdown();\r\n }\r\n\r\n filterVendor(event: any) {\r\n console.log(event);\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.vendor.length; i++) {\r\n const vendorName = this.vendor[i];\r\n if (vendorName.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendorName);\r\n }\r\n }\r\n\r\n this.filteredVendor = filtered;\r\n console.log(this.filteredVendor, 'filteredVendor');\r\n }\r\n\r\n \r\n\r\n getCategoryDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorId,\r\n ProgramId: this.programId,\r\n };\r\n this.loader.start();\r\n this.vendorService\r\n .getCategory(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.category = res.$values;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.category = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectCategory() {\r\n // this.component = null;\r\n // this.componentId = null;\r\n // this.selectedComponent = [];\r\n this.cml = null;\r\n this.cmlId = null;\r\n this.selectedCML = [];\r\n this.selectedDate = null;\r\n this.categoryId = this.selectedCategory?.categoryId;\r\n // this.getComponentDropdown();\r\n this.getCMLNumber();\r\n }\r\n\r\n // getComponentDropdown() {\r\n // const reqBody = {\r\n // VendorRegId: this.vendorId,\r\n // ProgramId: this.programId,\r\n // CategoryId: this.categoryId,\r\n // };\r\n\r\n // this.vendorService\r\n // .getComponent(reqBody)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.component = res.$values;\r\n // },\r\n // error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n\r\n // onSelectComponent() {\r\n // this.cml = null;\r\n // this.cmlId = null;\r\n // this.selectedCML = [];\r\n // this.selectedDate = null;\r\n // this.componentId = this.selectedComponent?.componentId;\r\n // this.getCMLNumber();\r\n // }\r\n\r\n getCMLNumber() {\r\n const reqBody = {\r\n VendorRegId: this.vendorId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n // CompId: this.componentId,\r\n };\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .getCMLNumber(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n // this.cml = res.$values;\r\n this.cml = res.$values.map((row) => ({\r\n ...row,\r\n // cmlNo_cmlValidity: JSON.stringify(row.cmlNo).concat(' ', row.cmlValidity),\r\n cmlNo_cmlValidity: row.cmlNo + ', ' + row.componentName + '.Valid Upto: ' + row.cmlValidity,\r\n }));\r\n console.log(\"cmlNumber\", this.cml);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectCML() {\r\n this.selectedDate = null;\r\n console.log('selectedCML', this.selectedCML)\r\n\r\n let selectedDate = this.selectedCML.cmlValidity.split('/');\r\n let mydate = new Date(selectedDate[2], selectedDate[1] - 1, selectedDate[0]); \r\n this.selectedDate = new Date(mydate.toDateString());\r\n\r\n this.cmlId = this.selectedCML?.$id;\r\n }\r\n\r\n onSubmitCMLValidity() {\r\n console.log(this.selectedDate)\r\n let selectedDate = this.toISOLocal(new Date(this.selectedDate)).replace(\r\n /.\\d+Z$/g,\r\n ''\r\n );\r\n console.log('date', selectedDate);\r\n // console.log(\r\n // 'onSubmitCMLValidity',\r\n // this.selectedCML.cmlNo,\r\n // // this.componentId,\r\n // selectedDate\r\n // );\r\n\r\n let reqBody = {\r\n cmlNo: this.selectedCML.cmlNo,\r\n vendorCode: this.vendorId,\r\n progID: this.programId,\r\n catID: this.categoryId,\r\n updateValidityDate: selectedDate,\r\n };\r\n console.log(reqBody);\r\n this.updateCMLValidity(reqBody);\r\n }\r\n\r\n updateCMLValidity(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .updateCMLValidity(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n console.log('updateCMLValidity', data);\r\n if(data = 'Record updated successfully'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n \r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n toISOLocal(d) {\r\n var z = (n) => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n\r\n return d.getFullYear() + '-' + z(d.getMonth() + 1) + '-' + z(d.getDate());\r\n }\r\n}\r\n","\r\n
\r\n
{{'UPDATE_MI_COMPONENT_CML_VALIDITY'| translate}}
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n
","import { first } from 'rxjs';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-mi-estimation-consent-form',\r\n templateUrl: './vendor-mi-estimation-consent-form.component.html',\r\n styleUrls: ['./vendor-mi-estimation-consent-form.component.scss']\r\n})\r\nexport class VendorMiEstimationConsentFormComponent implements OnInit {\r\n\r\n items: any[];\r\n selectedStatus: any;\r\n remarks: String;\r\n appId: String;\r\n vendorId: String;\r\n programId: String;\r\n applicationDetails: any;\r\n applicationDetailsForViewOnly: any;\r\n isActionSectionEnabled: boolean;\r\n\r\n public isProDataCalculated: boolean = false;\r\n public proCalculatedData: any;\r\n public statusCode: any;\r\n public userID: any;\r\n public preEstimateDetails: any;\r\n public showMap: any;\r\n public options: any;\r\n public overlays: any[];\r\n\r\n public cropType: any;\r\n public selectedCropType: any;\r\n public selectedCrop: any;\r\n public currentDateTime: any;\r\n\r\n public preEstimationDataArray: any = [];\r\n\r\n optionsPreEstimate: any;\r\n overlaysPreEstimate: any[];\r\n showMapPreEstimate: any;\r\n viewWorkFlowAllStatus: boolean = false;\r\n\r\n activeIndex: any;\r\n displayCustom: any;\r\n imgVal: any;\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n\r\n public existingMIDetails: any = [];\r\n public dimicadaLogin: boolean = false;\r\n public ddAssociateLogin: boolean = false;\r\n\r\n public selLandForOwnerdetails: any = {};\r\n public kewatNo: any = null;\r\n\r\n public displayLandOwnerDialog: boolean = false;\r\n public landOwnerDetails : any = [];\r\n public showLandOwnerDetails: boolean = false;\r\n\r\n public isLandOwnerDetFetching: boolean = false;\r\n loadingText: string = 'Fetching Owner Details from Land Revenue Department';\r\n private dotCount: number = 0;\r\n private maxDots: number = 3;\r\n private interval: any;\r\n\r\n public landOwnerDetailsErrorMsg: any = null;\r\n public showHiddenButton: boolean = false;\r\n public request1complete: boolean = false;\r\n public request2complete: boolean = false;\r\n public landDetailedInfo: any = [];\r\n\r\n constructor(\r\n private deptDashBoardService: DepartmentDashboardService, \r\n private messageService: MessageService, \r\n private vendorService: VendorDashboardService, \r\n private router: Router, \r\n private route: ActivatedRoute, \r\n private tokenService: TokenService, \r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private _dashboardService: DashboardService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n \r\n if (tokenData && tokenData.role == 'DMICADA') {\r\n this.dimicadaLogin = true\r\n }\r\n if (tokenData && tokenData.role == 'DD Associate') {\r\n this.ddAssociateLogin = true\r\n }\r\n\r\n this.appId = this.cryptoJsService.DecryptData(this.route.snapshot.paramMap.get('appId'));\r\n this.vendorId = this.route.snapshot.paramMap.get('vendorId');\r\n this.programId = this.route.snapshot.paramMap.get('programId');\r\n\r\n this.currentDateTime = new Date();\r\n\r\n this.getCropMaster();\r\n this.getApplicationDetails(this.appId);\r\n this.getExistingMIDetails(this.appId);\r\n\r\n\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.statusCode = this.cryptoJsService.DecryptData(params.statusCode);\r\n if (params.statusCode == this.cryptoJsService.Encrypt('C') || params.statusCode == this.cryptoJsService.Encrypt('P')) {\r\n this.isActionSectionEnabled = true;\r\n } else {\r\n this.isActionSectionEnabled = false;\r\n }\r\n }\r\n );\r\n\r\n\r\n // if (this.appId && this.programId) {\r\n // this.deptDashBoardService.getApplicationDataOfPreEstimation(this.appId, this.programId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.preEstimateDetails = data;\r\n\r\n // if(this.preEstimateDetails.CropTypeID && this.preEstimateDetails.CropId){\r\n // this.cropType.forEach((res) => {\r\n // if (res.data === data.CropTypeID) {\r\n // this.selectedCropType = res.label;\r\n // let crop = res.children;\r\n // crop.forEach((res2) => {\r\n // if(res2.data === data.CropId){\r\n // this.selectedCrop = res2.label;\r\n // }\r\n // })\r\n // return;\r\n // }\r\n // });\r\n // }\r\n\r\n\r\n // if( this.preEstimateDetails.listGPSCoordinates.length>0){\r\n // this.showMap=true;\r\n // let locationArray = []\r\n // this.preEstimateDetails.listGPSCoordinates.forEach(e => {\r\n // locationArray.push({ lat: e.Latitude, lng: e.Longitude })\r\n // })\r\n // this.options = {\r\n // center: { lat: locationArray[0].lat, lng: locationArray[0].lng },\r\n // zoom: 12,\r\n // mapTypeId: google.maps.MapTypeId.SATELLITE\r\n // };\r\n // let pointLocations = [];\r\n // locationArray.forEach(e => { pointLocations.push(new google.maps.Marker({ position: { lat: e.lat, lng: e.lng } })) });\r\n // this.overlays = [\r\n // ...pointLocations,\r\n // new google.maps.Polygon({\r\n // paths: [...locationArray], strokeOpacity: 0.5, strokeWeight: 1, fillColor: '#1976D2', fillOpacity: 0.35\r\n // }),\r\n\r\n\r\n // ];\r\n // }\r\n // else{\r\n // this.showMap=false;\r\n // }\r\n \r\n // },\r\n // error: () => {\r\n // // this.loader.close();\r\n // // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n // }\r\n // });\r\n // }\r\n\r\n if (!this.appId && !this.vendorId && !this.programId) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Cannot Load Form Due to Missing Parameters' });\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'View Vendor MI Estimation For Approval', this.appId, new Date(), 'Success');\r\n\r\n let actionId = 14; // Do not Change, it is fixed for Farmer Application Verifications\r\n this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n\r\n this.loader.start();\r\n this.deptDashBoardService.getVendorMIEstimation(this.appId, this.vendorId, this.programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.applicationDetails = data;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n }\r\n });\r\n\r\n }\r\n\r\n handleClick() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n this.loader.start();\r\n this.deptDashBoardService.insertVendorMIEstimateForApproval(this.appId, JSON.parse(payload)?.sub, this.remarks, this.selectedStatus.flag, this.programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'Submit Approval', this.appId, new Date(), this.selectedStatus.status);\r\n let resp = JSON.stringify(data);\r\n if (resp.startsWith('\"S')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n }\r\n else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n }\r\n\r\n if (data == 'S:Successfully Submitted' || data =='S:Successfully Updated' || resp.startsWith('\"S')) {\r\n\r\n let componentName = window.sessionStorage.getItem('currentComponentName');\r\n\r\n if (sessionStorage.getItem('userRole') == 'DD Associate') {\r\n\r\n // let applications = JSON.parse(window.sessionStorage.getItem(\"miVendorApplicationForApproval\"));\r\n let applications = JSON.parse(window.sessionStorage.getItem(componentName));\r\n if(applications!=null){\r\n\r\n applications.filter(application => {\r\n return application.AppID === this.appId\r\n }).forEach(element => {\r\n // element.Status_Ar = this.selectedStatus.flag == 'A' ? 'A' : 'C',\r\n element.Status_Ar = 'C',\r\n element.Status = this.selectedStatus.flag == 'A' ? 'Approved' : (this.selectedStatus.flag == 'RP') ? 'Return Process' : (this.selectedStatus.flag == 'R') ? 'Rejected' : 'Marked Return',\r\n element.NextLevelID = 'DDMICADA',\r\n element.Remarks = this.remarks\r\n \r\n });\r\n }\r\n // sessionStorage.setItem('miVendorApplicationForApproval', JSON.stringify(applications));\r\n sessionStorage.setItem(componentName, JSON.stringify(applications));\r\n\r\n } else if (sessionStorage.getItem('userRole') == 'DDMICADA') {\r\n\r\n // let applications = JSON.parse(window.sessionStorage.getItem(\"miVendorApplicationForApproval\"));\r\n let applications = JSON.parse(window.sessionStorage.getItem(componentName));\r\n if(applications!=null){\r\n\r\n applications.filter(application => {\r\n return application.AppID === this.appId\r\n }).forEach(element => {\r\n \r\n let nextLevelId;\r\n if (this.selectedStatus.flag == 'A') {\r\n nextLevelId = 'DMICADA';\r\n } else if (this.selectedStatus.flag == 'RP') {\r\n nextLevelId = 'Vendor'\r\n } else if (this.selectedStatus.flag == 'R') {\r\n nextLevelId = 'N/A'\r\n }\r\n \r\n element.Status_Ar = this.selectedStatus.flag == 'A' ? 'A' : 'C',\r\n element.Status_Ar = 'C',\r\n element.Status = this.selectedStatus.flag == 'A' ? 'Approved' : (this.selectedStatus.flag == 'RP') ? 'Return Process' : (this.selectedStatus.flag == 'R') ? 'Rejected' : 'Marked Return',\r\n element.NextLevelID = nextLevelId,\r\n element.Remarks = this.remarks\r\n \r\n });\r\n }\r\n // sessionStorage.setItem('miVendorApplicationForApproval', JSON.stringify(applications));\r\n sessionStorage.setItem(componentName, JSON.stringify(applications));\r\n }\r\n else if (sessionStorage.getItem('userRole') == 'DMICADA') {\r\n\r\n // let applications = JSON.parse(window.sessionStorage.getItem(\"miVendorApplicationForApproval\"));\r\n let applications = JSON.parse(window.sessionStorage.getItem(componentName));\r\n if(applications!=null){\r\n\r\n applications.filter(application => {\r\n return application.AppID === this.appId\r\n }).forEach(element => {\r\n let nextLevelId;\r\n if (this.selectedStatus.flag == 'A') {\r\n nextLevelId = 'Farmer';\r\n } else if (this.selectedStatus.flag == 'RP') {\r\n nextLevelId = 'Vendor'\r\n } else if (this.selectedStatus.flag == 'R') {\r\n nextLevelId = 'N/A'\r\n }\r\n \r\n // element.Status_Ar = this.selectedStatus.flag == 'A' ? 'A' : 'C',\r\n element.Status_Ar = 'C',\r\n element.Status = this.selectedStatus.flag == 'A' ? 'Approved' : (this.selectedStatus.flag == 'RP') ? 'Return Process' : (this.selectedStatus.flag == 'R') ? 'Rejected' : 'Marked Return',\r\n element.NextLevelID = nextLevelId,\r\n element.Remarks = this.remarks\r\n \r\n });\r\n }\r\n // sessionStorage.setItem('miVendorApplicationForApproval', JSON.stringify(applications));\r\n sessionStorage.setItem(componentName, JSON.stringify(applications));\r\n }\r\n\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Vendor Application Processed Successfully.' });\r\n \r\n setTimeout(()=> {\r\n if(componentName == 'miVendorApplicationForApprovalPending'){\r\n this.router.navigate(['department', 'vendor-mi-applications', 'pending']);\r\n // window.close();\r\n }\r\n else if(componentName == 'miVendorApplicationForApprovalCurrent'){\r\n this.router.navigate(['department', 'vendor-mi-applications', 'current']);\r\n // window.close();\r\n }\r\n },1000)\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'Submit Approval', this.appId, new Date(), err);\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Cannot Process the MI Estimation Application' });\r\n }\r\n });\r\n }\r\n\r\n\r\n proDataCalculation() {\r\n const tableDataToPush: any = [];\r\n this.applicationDetails?.EstimationComponentDetail.forEach((row) => {\r\n tableDataToPush.push({\r\n cat: JSON.stringify(row.CatID),\r\n component: row.ComponentName,\r\n size: row.Size,\r\n quantity: row.Quantity,\r\n price: JSON.stringify(row.Price)\r\n });\r\n });\r\n\r\n // if (!(this.finalEstimationControls?.rowSpacing?.errors?.required || this.finalEstimationControls?.plantSpacing?.errors?.required || this.finalEstimationControls?.MIArea?.errors?.required)) {\r\n // this.showProDataCalError = false;\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.applicationDetails?.ProgID,\r\n applicationId: this.applicationDetails?.AppID,\r\n vendorId: JSON.stringify(this.applicationDetails?.vendorRegId),\r\n rowSpacing: this.applicationDetails?.RowSpacing,\r\n plantSpacing: this.applicationDetails?.PlantSpacing,\r\n area: this.applicationDetails?.MIArea,\r\n }\r\n let reqBody = finalDataToPost;\r\n\r\n this.getMaxSubsidy(reqBody);\r\n // }\r\n\r\n // else {\r\n // this.showProDataCalError = true;\r\n // }\r\n\r\n }\r\n\r\n getMaxSubsidy(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.proCalculatedData = data;\r\n this.loader.close();\r\n this.isProDataCalculated = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Status',\r\n // detail: data,\r\n // });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n onClickApp() {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(this.statusCode);\r\n const link = this.router.serializeUrl(this.router.createUrlTree(['department', 'print', this.cryptoJsService.Encrypt(this.appId as string)]));\r\n window.open(link, '_blank');\r\n }\r\n\r\n // onPrint(divName) {\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n // }\r\n\r\n getPreEstimationData(appId, programId) {\r\n if (appId && programId) {\r\n this.deptDashBoardService\r\n .getApplicationDataOfPreEstimation(appId, programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.preEstimateDetails = data;\r\n\r\n if (\r\n this.preEstimateDetails.CropTypeID &&\r\n this.preEstimateDetails.CropId\r\n ) {\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeID) {\r\n // this.selectedCropType = res.label;\r\n let crop = res.children;\r\n crop.forEach((res2) => {\r\n if (res2.data === data.CropId) {\r\n this.preEstimateDetails = {\r\n ...data,\r\n selectedCropType: res?.label,\r\n selectedCrop: res2.label,\r\n };\r\n // this.selectedCrop = res2.label;\r\n }\r\n });\r\n return;\r\n }\r\n });\r\n }\r\n\r\n if (this.preEstimateDetails.listGPSCoordinates.length > 0) {\r\n this.showMapPreEstimate = true;\r\n\r\n let preEstimateOption = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n };\r\n\r\n if(this.preEstimateDetails?.listGPSCoordinates){\r\n preEstimateOption.center = {\r\n \"lat\": this.preEstimateDetails?.listGPSCoordinates[0][0]?.Latitude,\r\n \"lng\": this.preEstimateDetails?.listGPSCoordinates[0][0]?.Longitude\r\n };\r\n }\r\n let preEatimateOverlays = [];\r\n\r\n // add marker\r\n this.preEstimateDetails?.listGPSCoordinates.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n preEatimateOverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.Latitude, lng: row?.Longitude },\r\n title: `${row?.CornerID}`,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n });\r\n })\r\n\r\n // add overlay\r\n\r\n // preEatimateOverlays.forEach((val, index) => {\r\n // if(val?.fillColor){\r\n // preEatimateOverlays.splice(index, 1);\r\n // }\r\n // })\r\n \r\n this.preEstimateDetails.listGPSCoordinates.forEach(arr => {\r\n let arr1 = arr.map(val => ({\r\n lat: val?.Latitude,\r\n lng: val?.Longitude\r\n }))\r\n preEatimateOverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr1,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n\r\n this.preEstimateDetails = {\r\n ...this.preEstimateDetails,\r\n newGPSArray: {\r\n gpsArray : this.preEstimateDetails.listGPSCoordinates,\r\n preEatimateOverlays : preEatimateOverlays,\r\n preEstimateOption: preEstimateOption\r\n } \r\n } \r\n } else {\r\n this.showMapPreEstimate = false;\r\n }\r\n\r\n this.preEstimationDataArray.push(this.preEstimateDetails);\r\n },\r\n error: () => {},\r\n });\r\n }\r\n }\r\n\r\n\r\n getApplicationDetails(appId) {\r\n this.loader.start();\r\n this._dashboardService.getApplicationByAppId(appId).subscribe((res) => {\r\n this.loader.close();\r\n if (res) {\r\n this.applicationDetailsForViewOnly = res;\r\n // this.applicationDetails = res;\r\n\r\n // res.ListViewFormData = [\r\n // {\r\n // \"AutoId\": 372819,\r\n // \"ProgId\": 2,\r\n // \"VendorId\": \"302\",\r\n // \"User_ID\": \"farmer\"\r\n // },\r\n // {\r\n // \"AutoId\": 372819,\r\n // \"ProgId\": 2,\r\n // \"VendorId\": \"302\",\r\n // \"User_ID\": \"farmer\"\r\n // }\r\n // ]\r\n\r\n if (res.ListViewFormData && res.ListViewFormData.length > 0) {\r\n res.ListViewFormData.forEach((val) => {\r\n let autoId = val?.AutoId;\r\n let progId = val?.ProgId;\r\n // let userId = val?.User_ID;\r\n // let vendorId = val?.VendorId;\r\n\r\n // if (autoId && userId) {\r\n // this.getCalculatedSubsidyDataForMIPhys(autoId, userId);\r\n // }\r\n\r\n if (autoId && progId) {\r\n this.getPreEstimationData(this.appId, progId);\r\n }\r\n\r\n // if (this.appId && progId) {\r\n // this.getSanctionLetterData(this.appId, progId);\r\n // }\r\n\r\n // if (vendorId && progId) {\r\n // this.getMIEstimationData(this.appId, vendorId, progId);\r\n // this.getMIBOQData(this.appId, vendorId, progId);\r\n // }\r\n\r\n // if (autoId && userId) {\r\n // this.getPhysicalSurveyData(autoId, userId);\r\n // }\r\n });\r\n }\r\n\r\n // if (\r\n // this.applicationDetails.FarmerLand &&\r\n // this.applicationDetails.FarmerLand.length > 0\r\n // ) {\r\n // this.applicationDetails.FarmerLand.forEach(\r\n // (val) => (this.totalLandArea += parseFloat(val.totalArea))\r\n // );\r\n // }\r\n\r\n // this.totalArea = 0;\r\n // if (this.applicationDetails?.New_MI_Datas.length > 0) {\r\n // this.applicationDetails.New_MI_Datas.forEach(\r\n // (val) => (this.totalArea += parseFloat(val.totalArea))\r\n // );\r\n // }\r\n // let farmerId = res.Farmer_ID;\r\n // if (res?.GroupTableData) {\r\n // this.getPastSubsidiesByMultipleFarmerIds(res?.GroupTableData);\r\n // } else {\r\n // this.getPastSubsidiesByFarmerId(farmerId);\r\n // }\r\n }\r\n });\r\n }\r\n\r\n getCropMaster() {\r\n // this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.cropType = res;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n workFlowAllStatus(){\r\n this.viewWorkFlowAllStatus = true;\r\n }\r\n\r\n imageClick(index: number, val) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n this.imgVal = val;\r\n }\r\n\r\n getExistingMIDetails(appId){\r\n this._dashboardService.getExistingMIDetails(appId).subscribe((res) =>{\r\n this.existingMIDetails = res;\r\n })\r\n }\r\n\r\n beforeCheckingLandStatus(val){\r\n this.selLandForOwnerdetails = val;\r\n this.displayLandOwnerDialog = true;\r\n }\r\n\r\n startLoadingAnimation(): void {\r\n this.interval = setInterval(() => {\r\n this.dotCount = (this.dotCount + 1) % (this.maxDots + 1);\r\n this.loadingText = `Fetching Owner Details from Land Revenue Department${'.'.repeat(this.dotCount)}`;\r\n }, 500); // Adjust the interval (in ms) to control the speed of the animation\r\n }\r\n\r\n stopLoadingAnimation(): void {\r\n if (this.interval) {\r\n clearInterval(this.interval);\r\n }\r\n }\r\n\r\n onCloseLandOwnerDialog(){\r\n this.displayLandOwnerDialog = false;\r\n this.stopLoadingAnimation();\r\n this.selLandForOwnerdetails = null;\r\n this.kewatNo = null;\r\n \r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = null;\r\n }\r\n\r\n submitKewatNo(){\r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = null;\r\n if(this.kewatNo){\r\n this.checkLandStatus(this.selLandForOwnerdetails);\r\n }\r\n }\r\n\r\n checkLandStatus(val){\r\n this.startLoadingAnimation();\r\n // this.displayLandOwnerDialog = true;\r\n let reqBody1 = {\r\n districtCode: val?.R_Dis_Code,\r\n tehsilCode: val?.R_Teh_Code,\r\n nvCode: val?.R_Rev_Code,\r\n khewat: this.kewatNo,\r\n format: \"json\",\r\n farmerId: val?.farmerId\r\n }\r\n\r\n // let reqBody1 = {\r\n // \"districtCode\": \"02\",\r\n // \"tehsilCode\": \"007\",\r\n // \"nvCode\": \"01931\",\r\n // \"khewat\": this.kewatNo,\r\n // \"format\": \"json\"\r\n // }\r\n\r\n // let reqBody2 = { \r\n // \"districtCode\": \"02\", \r\n // \"tehsilCode\": \"007\", \r\n // \"nvCode\": \"01931\", \r\n // \"format\": \"json\"\r\n // }\r\n\r\n // let reqBody2 = {\r\n // districtCode: val?.R_Dis_Code,\r\n // tehsilCode: val?.R_Teh_Code,\r\n // nvCode: val?.R_Rev_Code,\r\n // format: \"json\"\r\n // }\r\n\r\n this.getLandOwnerDetails(reqBody1);\r\n // this.getLandKhewatDetails(reqBody2);\r\n }\r\n\r\n getLandOwnerDetails(reqBody){\r\n // this.loader.start();\r\n this.isLandOwnerDetFetching = true;\r\n this.vendorService \r\n .getLandOwnersDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => { \r\n this.loader.close();\r\n this.stopLoadingAnimation();\r\n // this.isLandOwnerDetFetching = false;\r\n if (resp?.length > 0) {\r\n this.landOwnerDetails = resp;\r\n this.landOwnerDetailsErrorMsg = null;\r\n\r\n let reqBody1 = {\r\n \"districtCode\": reqBody.districtCode,\r\n \"tehsilCode\": reqBody.tehsilCode,\r\n \"nvCode\": reqBody?.nvCode,\r\n \"khewat\": reqBody?.khewat,\r\n \"format\": \"json\"\r\n }\r\n this.getLandGetAreaByKhewat(reqBody)\r\n this.getKhasraAreaByKhewatNVCode(reqBody1)\r\n\r\n }else{\r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = `Someting went wrong. Please try again. ${resp}`;;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.stopLoadingAnimation();\r\n this.isLandOwnerDetFetching = false;\r\n this.showHiddenButton = false;\r\n this.landOwnerDetailsErrorMsg = `Someting went wrong. Please try again. ${err}`;\r\n this.landOwnerDetails = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getKhasraAreaByKhewatNVCode(reqBody) {\r\n // this.loader.start();\r\n this.vendorService\r\n .getKhasraAreaKhewatByNVCODE2Khewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n this.landDetailedInfo = JSON.parse(resp?.msg); \r\n } else {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request2complete = true;\r\n }\r\n });\r\n }\r\n\r\n getLandGetAreaByKhewat(reqBody) {\r\n // this.loader.start();\r\n this.vendorService\r\n .getLandGetAreaByKhewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request2complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n const khewatArea = JSON.parse(resp?.msg)[0]?.area;\r\n const regex = /(\\d+)\\s*Kanal\\s*(\\d+)\\s*Marla/;\r\n const values = khewatArea.match(regex);\r\n\r\n const karnal = values[0] ? parseInt(values[1], 10) : 0;\r\n const marla = values[2] ? parseInt(values[2], 10) : 0;\r\n\r\n this.landOwnerDetails = this.landOwnerDetails.map(val => ({\r\n ...val,\r\n khewat_area: khewatArea,\r\n valKanal: karnal,\r\n valMarla: marla,\r\n totalArea_InAcres: ((karnal * 20) + marla)/20*0.125,\r\n owner_hissa: ((karnal * 20) + marla)*((val?.Bhag).split('/').map(Number)[0]/(val?.Bhag).split('/').map(Number)[1])/20*0.125,\r\n }));\r\n } else {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request1complete = true;\r\n }\r\n });\r\n }\r\n}","\r\n
\r\n
\r\n
{{'FARMER_APPLICATION_DETAILS' | translate}}
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
{{'PERSONAL_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Name }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Father_name }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Mother_Name }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Gender }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.DOB | date:'mediumDate' }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Mobile }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Email_ID }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Aadhar_No }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Email_ID }}\r\n  \r\n

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Village_Code }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Block }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.District }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Caste_Code }}\r\n  \r\n

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Address }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.Pin_Code }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.PPP_ID }}\r\n  \r\n

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.FarmerPersonalData?.MFMBNo }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetailsForViewOnly?.AppType }}

\r\n
\r\n
\r\n
\r\n\r\n
0\"\r\n class=\"land-details-container card my-2\">\r\n
\r\n
{{'LAND_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n {{'CHECK_OWNER_DETAILS_WITH_LAND_REVENUE_DEPARTMENT' | translate}}\r\n {{'MEMBER_SNO' | translate}}\r\n {{'OWNER_NAME' | translate}}\r\n {{'VILLAGE' | translate}}\r\n {{'KHEWAT' | translate}}\r\n {{'KHEWAT_AREA' | translate}}\r\n {{'KHEWAT_BHAG' | translate}}\r\n {{'OWNER_HISSA' | translate}}\r\n\r\n {{'MORABBA_NO' | translate}}\r\n {{'KILLA_NO' | translate}}\r\n\r\n {{'TOTAL_KANALS' | translate}}\r\n {{'TOTAL_MARLAS' | translate}}\r\n\r\n {{'APPLIED_KANALS' | translate}}\r\n {{'APPLIED_MARLAS' | translate}}\r\n {{'APPLIED_AREA' | translate}}\r\n\r\n {{'CROP_TYPE' | translate}}\r\n {{'YEAR' | translate}}\r\n\r\n {{'LAND_DOC' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {{ item?.memberID }}\r\n {{ item?.OwnerName }}\r\n {{ item?.Village }}\r\n {{ item?.khewat }}\r\n {{ item?.KhewatArea }}\r\n {{ item?.Bhag }}\r\n {{ item?.OwnerHissa }}\r\n\r\n {{ item?.morabbaNo }}\r\n {{ item?.killaNo }}\r\n\r\n {{ item?.TotalkanalinKhasra }}\r\n {{ item?.TotalmarlainKhasra }}\r\n\r\n {{ item?.kanal }}\r\n {{ item?.marla }}\r\n {{ item?.totalArea }}\r\n\r\n {{ item?.cropType }}\r\n {{ item?.Year }}\r\n \r\n
\r\n \r\n
\r\n
\r\n

{{'N/A' |\r\n translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"existing-details-container card my-2\">\r\n
\r\n
{{'EXISTING_MI_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n {{'PROGRAM_NAME' | translate}}\r\n {{'MORABBA_NO' | translate}}\r\n {{'KILLA_NO' | translate}}\r\n {{'TOTAL_AREA_IN_ACRE' | translate}}\r\n {{'IS_SUBSIDY_AVAIL' | translate}}\r\n {{'YEAR' | translate}}\r\n \r\n \r\n \r\n \r\n {{ item?.ProgrammeName }}\r\n {{ item?.Morabba_No }}\r\n {{ item?.Killa_No }}\r\n {{ item?.TotalArea }}\r\n {{ item?.Is_Subsidy_Avail }}\r\n {{ item?.Year_subsidy }}\r\n \r\n \r\n \r\n
\r\n\r\n
0\" class=\"onfarm-details-container card my-2\">\r\n
\r\n
{{'ON_FARMER_MI_COMPONENTS_AND_VENDOR_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n {{'LAND_DATA' | translate}}\r\n {{'VENDOR_NAME' | translate}}\r\n {{'TOTAL_AREA_IN_ACRE' | translate}}\r\n \r\n \r\n \r\n \r\n {{ item.programName }}\r\n {{ item.landData }}\r\n {{ item.miVendorName }}\r\n {{ item.totalArea }}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
{{ currentDateTime | date }}
\r\n
\r\n {{'VENDOR_ESTIMATION_FORM_FOR_MICRO_IRRIGATION_SCHEME'| translate}}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'APPLICATION_NO'| translate}}

\r\n {{applicationDetails?.AppID}}\r\n
\r\n

{{'VENDOR_NAME'| translate}}

\r\n

{{applicationDetails?.VendorName}}

\r\n
\r\n

{{'PROGRAMME_NAME'| translate}}

\r\n

\r\n {{applicationDetails?.ProgrammeName}}\r\n

\r\n
\r\n \r\n
\r\n\r\n \r\n 0\">\r\n\r\n
{{'ESTIMATION_COMPONENT_DETAIL'| translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CAT_ID'| translate}}{{'CAT_NAME'| translate}}{{'COMPONENT_ID'| translate}}{{'COMPONENT_NAME'| translate}}{{'SIZE_ID'| translate}}{{'SIZE'| translate}}{{'PRICE'| translate}}{{'QUANTITY'| translate}}{{'GST'| translate}}
{{item.CatID}}{{item.CatName}}{{item.ComponentID}}{{item.ComponentName}}{{item.SizeID}}{{item.Size}}{{item.Price}}{{item.Quantity}}{{item.GST}}
\r\n
\r\n \r\n \r\n\r\n \r\n\r\n
{{'ESTIMATION_DETAILS'| translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'VENDOR_ASSOCIATE_ID'| translate}}

\r\n

{{applicationDetails?.VendorAssociateID}}

\r\n
\r\n

{{'FARMER_SHARE_AMOUNT'| translate}}

\r\n

{{applicationDetails?.FarmerShareAmount}}

\r\n
\r\n

{{'COMPONENT_AMOUNT'| translate}}

\r\n

{{applicationDetails?.ComponentAmount}}

\r\n
\r\n

{{'TAX_RATE'| translate}}

\r\n

{{applicationDetails?.TaxRate}}

\r\n
\r\n

{{'DISCOUNT_RATE'| translate}}

\r\n

{{applicationDetails?.DiscountRate}}

\r\n
\r\n

{{'OTHER_TRANSPORT_EXPENSES'| translate}}

\r\n

{{applicationDetails?.TransportOtherExpenses}}

\r\n
\r\n

{{'MAX_SUBSIDY_AMOUNT'| translate}}

\r\n

{{applicationDetails?.MaxSubSidyAmount}}

\r\n
\r\n

{{'MI_AREA'| translate}}

\r\n

{{applicationDetails?.MIArea}}

\r\n
\r\n

{{'CROP_ID'| translate}}

\r\n

{{applicationDetails?.CropID}}

\r\n
\r\n

{{'LAND_MAP_PATH'| translate}}

\r\n

open path

\r\n
\r\n

{{'LATITUDE'| translate}}

\r\n

{{applicationDetails?.Lat}}

\r\n
\r\n

{{'LONGITUDE'| translate}}

\r\n

{{applicationDetails?.Long}}

\r\n
\r\n

{{'PLANT_SPACING'| translate}}

\r\n

{{applicationDetails?.PlantSpacing}}

\r\n
\r\n

{{'ROW_SPACING'| translate}}

\r\n

{{applicationDetails?.RowSpacing}}

\r\n
\r\n

{{'REMARKS'| translate}}

\r\n

{{applicationDetails?.Remarks}}

\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n\r\n \r\n
0\">\r\n
\r\n
{{'PRE_ESTIMATE_SURVEY' | translate}}
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n

{{'APP_ID' | translate}}

\r\n

{{ preEstimateDetails?.AppID }}

\r\n
\r\n

{{'PROGRAMME_NAME' | translate}}

\r\n

{{ preEstimateDetails?.ProgramName }}

\r\n
\r\n

{{'SOIL_TYPE' | translate}}

\r\n

{{ preEstimateDetails?.SoilType }}

\r\n
\r\n

{{'CROP_TYPE' | translate}}

\r\n

\r\n {{ preEstimateDetails?.selectedCropType }}\r\n

\r\n
\r\n

{{'CROP_NAME' | translate}}

\r\n

\r\n {{ preEstimateDetails?.selectedCrop }}\r\n

\r\n
\r\n

{{'WATER_SOURCE' | translate}}

\r\n

{{ preEstimateDetails?.WaterSource }}

\r\n
\r\n

{{'WATER_PRESSURE' | translate}}

\r\n

{{ preEstimateDetails?.WaterPressure }}

\r\n
\r\n

{{'WATER_QUALITY' | translate}}

\r\n

{{ preEstimateDetails?.WaterQuality }}

\r\n
\r\n

{{'WATER_REQ' | translate}}

\r\n

{{ preEstimateDetails?.WaterQuantity }}

\r\n
\r\n

{{'PH' | translate}}

\r\n

{{ preEstimateDetails?.PH }}

\r\n
\r\n

{{'EC' | translate}}

\r\n

{{ preEstimateDetails?.EC }}

\r\n
\r\n

{{'DATE_OF_SURVEY' | translate}}

\r\n

{{ preEstimateDetails?.DateOfSurvey }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ preEstimateDetails?.PlantSpacing }}

\r\n
\r\n

{{'ROW_SPACING' | translate}}

\r\n

{{ preEstimateDetails?.RowSpacing }}

\r\n
\r\n
\r\n {{'LIST_GPS_COORDINATES' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'LIST_IMAGE_PATH' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n

{{ loadingText }}

\r\n
\r\n \r\n
0 && !isLandOwnerDetFetching\" class=\"p-fluid p-formgrid justify-content-center\">\r\n \r\n \r\n
\r\n \r\n
\r\n

{{\r\n 'Fetched Land Owner Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'OWNER_NAME'| translate}}\r\n {{'BHAG'| translate}}\r\n {{'KHEWAT_AREA'| translate}}\r\n {{'OWNER_HISSA_IN_ACRES'| translate}}\r\n {{'TOTAL_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'FARMER_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.Khewat}}\r\n {{product?.Owner_Name}}\r\n {{product?.Bhag}}\r\n {{product?.khewat_area}}\r\n {{product?.owner_hissa | number:'0.3-3'}}\r\n {{product?.TotalArea | number:'0.3-3'}}\r\n {{product?.TotalAreaFarmer | number:'0.3-3'}}\r\n {{product?.Year}}\r\n \r\n \r\n
\r\n\r\n
0\">\r\n \r\n \r\n
\r\n \r\n
\r\n

\r\n {{\r\n 'Fetched Land Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHATONI'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'MORABBA_NUMBER'| translate}}\r\n {{'KILLA_NO'| translate}}\r\n {{'KANALS'| translate}}\r\n {{'MARLAS'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.khatoni}}\r\n {{product?.khewat}}\r\n {{product?.must}}\r\n {{product?.killa}}\r\n {{product?.knl}}\r\n {{product?.mrl}}\r\n {{product?.period}}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
","import { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport * as XLSX from 'xlsx';\r\n\r\n@Component({\r\n selector: 'app-view-co-ordinates',\r\n templateUrl: './view-co-ordinates.component.html',\r\n styleUrls: ['./view-co-ordinates.component.scss']\r\n})\r\nexport class ViewCoOrdinatesComponent implements OnInit {\r\n overlays: google.maps.Marker[] = [];\r\n gpsData: string = '/assets/gpsLocations/gpsData3.xlsx';\r\n jsonData: any;\r\n dataString: string;\r\n options: { center: { lat: number; lng: number; }; zoom: number; };\r\n userID: any;\r\n\r\n constructor(\r\n private httpClient: HttpClient,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'Field Survey Map View', '', new Date(), 'Success');\r\n\r\n // this.overlays = [\r\n // new google.maps.Marker({ position: { lat: 36.879466, lng: 30.667648 }, title: \"Konyaalti\" }),\r\n // new google.maps.Marker({ position: { lat: 36.883707, lng: 30.689216 }, title: \"Ataturk Park\" }),\r\n // new google.maps.Marker({ position: { lat: 36.885233, lng: 30.702323 }, title: \"Oldtown\" }),\r\n // ];\r\n this.options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 6\r\n };\r\n\r\n this.loader.start();\r\n this.httpClient.get(this.gpsData, { responseType: 'blob' })\r\n .subscribe((data: any) => {\r\n this.loader.close();\r\n let workBook: any = null;\r\n let jsonData = null;\r\n const reader: FileReader = new FileReader();\r\n reader.onload = (event) => {\r\n const data = reader.result;\r\n workBook = XLSX.read(data, { type: 'binary' });\r\n jsonData = workBook.SheetNames.reduce((initial: any, name: any) => {\r\n const sheet = workBook.Sheets[name];\r\n initial[name] = XLSX.utils.sheet_to_json(sheet);\r\n return initial;\r\n }, {});\r\n const dataString = JSON.stringify(jsonData);\r\n JSON.parse(dataString).Sheet1.splice(0, 100).forEach(row => {\r\n this.addOverlay(row)\r\n });\r\n }\r\n reader.readAsBinaryString(data);\r\n });\r\n }\r\n addOverlay(row: any) {\r\n this.overlays.push(new google.maps.Marker({ position: { lat: row?.EstLat, lng: row?.EstLong }, title: row?.Name }))\r\n }\r\n\r\n}\r\n","","import { Router } from '@angular/router';\r\nimport { ChangeDetectorRef, Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { Table } from 'primeng/table';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n\r\n@Component({\r\n selector: 'app-year-wise-progress',\r\n templateUrl: './year-wise-progress.component.html',\r\n styleUrls: ['./year-wise-progress.component.scss']\r\n})\r\nexport class YearWiseProgressComponent implements OnInit {\r\n @ViewChild('yearwiseProgressTable', { static: true }) public estVerificationTable: Table;\r\n @ViewChild('yearwiseProgress2Table', { static: true }) public yearwiseProgress2Table: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccount: BankDetail;\r\n waterFlow: any;\r\n selectedBankAccounts: BankDetail[];\r\n finalArray = [];\r\n submitted: boolean;\r\n districtConstituencyItems: MenuItem[];\r\n canalAndTubewellItems: MenuItem[];\r\n vendorEstVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n miDetailsByAppId: any;\r\n _appID: any;\r\n\r\n ipAddress: any;\r\n public userID: any;\r\n public status: any;\r\n districtConsistencyList: any[];\r\n canalTubewellReportList: any[];\r\n canalTubewellList: any;\r\n disctrictConsistenceWiseData: any;\r\n WaterSoucreListData: any;\r\n constructor(\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private router: Router,\r\n private dashboard: DashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n public cd: ChangeDetectorRef\r\n ) { }\r\n ngOnChanges(values) {\r\n \r\n }\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.loadData();\r\n // this.estVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'startsWith', operator: 'and' },\r\n // ];\r\n // this.canalAndTubeWell\r\n // this.districtAndConsistence\r\n this.districtConstituencyItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.disctrictConsistenceWiseData, 'District and constituency wise detail');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.disctrictConsistenceWiseData,\r\n 'District and constituency wise detail'\r\n );\r\n },\r\n },\r\n ];\r\n this.canalAndTubewellItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel1(this.WaterSoucreListData, 'Micro Irrigation System (Canal and Tube Well Based Report)');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf1(\r\n this.WaterSoucreListData,\r\n 'Micro Irrigation System (Canal and Tube Well Based Report)'\r\n );\r\n },\r\n },\r\n ];\r\n }\r\n\r\n onFiltering(event: any) {\r\n console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n loadData() {\r\n this.deptDashBoardService.GetRealTimeDataofPDMCScheme().pipe(first()).subscribe({\r\n next: (data) => {\r\n this.CanalAndTubeWellBasedReport(data)\r\n this.consistenceWisedDataCalculation(data)\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Canal and tubewell', 'District and consistence wise data Approval', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! District and consistence wise data not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n CanalAndTubeWellBasedReport(data) {\r\n let waterSourceObj = {}\r\n this.canalTubewellList = data;\r\n for (let index = 0; index < this.canalTubewellList.length; index++) {\r\n if (waterSourceObj[this.canalTubewellList[index].Source_Name]) {\r\n waterSourceObj[this.canalTubewellList[index].Source_Name].push(this.canalTubewellList[index])\r\n } else if (!waterSourceObj[this.canalTubewellList[index].Source_Name]) {\r\n waterSourceObj[this.canalTubewellList[index].Source_Name] = []\r\n waterSourceObj[this.canalTubewellList[index].Source_Name].push(this.canalTubewellList[index])\r\n }\r\n }\r\n let waterSourceArray = Object.keys(waterSourceObj)\r\n let waterSourceWisedData = [];\r\n for (let index = 0; index < waterSourceArray.length; index++) {\r\n let waterSourceArrayList = waterSourceObj[waterSourceArray[index]]\r\n let verifiedAreaCount = 0;\r\n let incompleteAreaCount = 0;\r\n let verifiedApps = 0;\r\n let subsidyDisbursedDate = 0;\r\n let disbursedAmount = 0;\r\n let Area = 0;\r\n let Source_Name: any;\r\n for (let l = 0; l < waterSourceArrayList.length; l++) {\r\n Source_Name = waterSourceArrayList[l].Source_Name\r\n if (waterSourceArrayList[l].TotalArea) {\r\n Area = Area + (waterSourceArrayList[l].TotalArea ? waterSourceArrayList[l].TotalArea : 0)\r\n }\r\n if (waterSourceArrayList[l].Status_Ar == 'A') {\r\n verifiedApps = verifiedApps + 1\r\n verifiedAreaCount = verifiedAreaCount + (waterSourceArrayList[l].TotalArea ? waterSourceArrayList[l].TotalArea : 0)\r\n }\r\n if ((waterSourceArrayList[l].Status_Ar == 'CP') || (waterSourceArrayList[l].Status_Ar == 'RP')) {\r\n incompleteAreaCount = incompleteAreaCount + (waterSourceArrayList[l].TotalArea ? waterSourceArrayList[l].TotalArea : 0)\r\n }\r\n if (waterSourceArrayList[l].SubsidyDisbursedDate) {\r\n subsidyDisbursedDate = subsidyDisbursedDate + (waterSourceArrayList[l]).length\r\n }\r\n if(waterSourceArrayList[l].DisbursedAmount) {\r\n disbursedAmount = disbursedAmount + (waterSourceArrayList[l].DisbursedAmount ? waterSourceArrayList[l].DisbursedAmount : 0)\r\n }\r\n }\r\n const Obj = {\r\n Source_Name: Source_Name,\r\n Verified_Apps : verifiedApps,\r\n Verified_Area_Count: verifiedAreaCount ? verifiedAreaCount.toFixed(2) : 0,\r\n Under_Process_of_Installation : incompleteAreaCount ? incompleteAreaCount.toFixed(2) : 0,\r\n Assistance_Disbursed : subsidyDisbursedDate,\r\n Area: Area ? Area.toFixed(2) : 0,\r\n Disbursed_Amount: disbursedAmount,\r\n Noof_Benficiaries : verifiedApps\r\n }\r\n waterSourceWisedData.push(Obj);\r\n }\r\n waterSourceWisedData.forEach(e=>{\r\n e.Area=parseFloat(e.Area)\r\n e.Under_Process_of_Installation=parseFloat(e.Under_Process_of_Installation);\r\n e.Verified_Area_Count=parseFloat(e.Verified_Area_Count)\r\n })\r\n this.WaterSoucreListData = waterSourceWisedData\r\n this.cd.detectChanges();\r\n this.cd.reattach()\r\n }\r\n consistenceWisedDataCalculation(data) {\r\n let constitutionsObj = {}\r\n if (data && data.length > 0) {\r\n this.districtConsistencyList = data\r\n for (let index = 0; index < this.districtConsistencyList.length; index++) {\r\n if (constitutionsObj[this.districtConsistencyList[index].Constituency]) {\r\n constitutionsObj[this.districtConsistencyList[index].Constituency].push(this.districtConsistencyList[index])\r\n } else if (!constitutionsObj[this.districtConsistencyList[index].Constituency]) {\r\n constitutionsObj[this.districtConsistencyList[index].Constituency] = []\r\n constitutionsObj[this.districtConsistencyList[index].Constituency].push(this.districtConsistencyList[index])\r\n }\r\n }\r\n let constitutionkeysArray = Object.keys(constitutionsObj)\r\n let tempConsistenceWisedData = [];\r\n for (let index = 0; index < constitutionkeysArray.length; index++) {\r\n let constituteArrayList = constitutionsObj[constitutionkeysArray[index]]\r\n let statusArray = {}\r\n let verifiedAreaCount = 0;\r\n let incompleteAreaCount = 0;\r\n let EstimateCreated = 0;\r\n let EstimateApproved = 0;\r\n let BillsofQuantityUploaded = 0;\r\n let PhysicalverificationCompleted = 0;\r\n let AssistanceDisbursed = 0;\r\n let AssistanceDisbursedArea = 0\r\n let AssistanceDisbursedAmount = 0\r\n let Area = 0;\r\n let source_id: any;\r\n let count: any;\r\n for (let l = 0; l < constituteArrayList.length; l++) {\r\n if (statusArray[constituteArrayList[l].Status_Ar]) {\r\n source_id = constituteArrayList[l].Source_ID\r\n if (constituteArrayList[l].APP_ID) {\r\n statusArray[constituteArrayList[l].Status_Ar].push(constituteArrayList[l])\r\n }\r\n if (!constituteArrayList[l].APP_ID) {\r\n count = constituteArrayList[l]\r\n }\r\n if (constituteArrayList[l].TotalArea) {\r\n Area = Area + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Status_Ar == 'A') {\r\n verifiedAreaCount = verifiedAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n } if ((constituteArrayList[l].Status_Ar == 'CP') || (constituteArrayList[l].Status_Ar == 'RP')) {\r\n incompleteAreaCount = incompleteAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Estimatedate) {\r\n EstimateCreated = EstimateCreated + 1\r\n }\r\n if (constituteArrayList[l].EstimateApprovalDate) {\r\n EstimateApproved = EstimateApproved + 1\r\n }\r\n if (constituteArrayList[l].BoqUploaddate) {\r\n BillsofQuantityUploaded = BillsofQuantityUploaded + 1\r\n }\r\n if (constituteArrayList[l].PVDate) {\r\n PhysicalverificationCompleted = PhysicalverificationCompleted + 1\r\n }\r\n if (constituteArrayList[l].SubsidyDisbursedDate) {\r\n AssistanceDisbursed = AssistanceDisbursed + 1\r\n }\r\n if (constituteArrayList[l].AssistanceDisbursedArea) {\r\n AssistanceDisbursedArea = AssistanceDisbursedArea + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].AssistanceDisbursedAmount) {\r\n AssistanceDisbursedAmount = AssistanceDisbursedAmount + (constituteArrayList[l].DisbursedAmount ? constituteArrayList[l].DisbursedAmount : 0)\r\n }\r\n } else {\r\n statusArray[constituteArrayList[l].Status_Ar] = []\r\n if (constituteArrayList[l].APP_ID) {\r\n statusArray[constituteArrayList[l].Status_Ar].push(constituteArrayList[l])\r\n }\r\n if (!constituteArrayList[l].APP_ID) {\r\n count = constituteArrayList[l]\r\n }\r\n if (constituteArrayList[l].TotalArea) {\r\n Area = Area + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Status_Ar == 'A') {\r\n verifiedAreaCount = verifiedAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if ((constituteArrayList[l].Status_Ar == 'CP') || (constituteArrayList[l].Status_Ar == 'RP')) {\r\n incompleteAreaCount = incompleteAreaCount + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].Estimatedate) {\r\n EstimateCreated = EstimateCreated + 1\r\n }\r\n if (constituteArrayList[l].EstimateApprovalDate) {\r\n EstimateApproved = EstimateApproved + 1\r\n }\r\n if (constituteArrayList[l].BoqUploaddate) {\r\n BillsofQuantityUploaded = BillsofQuantityUploaded + 1\r\n }\r\n if (constituteArrayList[l].PVDate) {\r\n PhysicalverificationCompleted = PhysicalverificationCompleted + 1\r\n }\r\n if (constituteArrayList[l].SubsidyDisbursedDate) {\r\n AssistanceDisbursed = AssistanceDisbursed + 1\r\n }\r\n if (constituteArrayList[l].AssistanceDisbursedArea) {\r\n AssistanceDisbursedArea = AssistanceDisbursedArea + (constituteArrayList[l].TotalArea ? constituteArrayList[l].TotalArea : 0)\r\n }\r\n if (constituteArrayList[l].AssistanceDisbursedAmount) {\r\n AssistanceDisbursedAmount = AssistanceDisbursedAmount + (constituteArrayList[l].DisbursedAmount ? constituteArrayList[l].DisbursedAmount : 0)\r\n }\r\n }\r\n }\r\n const Obj = {\r\n Source_id: source_id,\r\n Application_recevied: constituteArrayList.length,\r\n District: constituteArrayList[0].District,\r\n Constituency: constituteArrayList[0].Constituency,\r\n Area: Area ? Area.toFixed(2) : 0,\r\n Approved: statusArray['A'] ? statusArray['A'].length : 0,\r\n Rejected: statusArray['R'] ? statusArray['R'].length : 0,\r\n Pending: statusArray['P'] ? statusArray['P'].length : 0,\r\n Incomplete: (statusArray['CP'] ? statusArray['CP'].length : 0) + (statusArray['RP'] ? statusArray['RP'].length : 0),\r\n Verified_Area_Count: verifiedAreaCount ? verifiedAreaCount.toFixed(2) : 0,\r\n Incomplete_Area_count: incompleteAreaCount,\r\n Estimate_Created: EstimateCreated,\r\n Estimate_Approved: EstimateApproved,\r\n Billsof_Quantity_Uploaded: BillsofQuantityUploaded,\r\n Physical_Verification_Completed: PhysicalverificationCompleted,\r\n Assistance_Disbursed: AssistanceDisbursed,\r\n Assistance_Disbursed_Area: AssistanceDisbursedArea,\r\n Assistance_Disbursed_Amount: AssistanceDisbursedAmount,\r\n NoOf_Benficiary : statusArray['A'] ? statusArray['A'].length : 0,\r\n }\r\n tempConsistenceWisedData.push(Obj)\r\n }\r\n tempConsistenceWisedData.forEach(e=>{\r\n e.Area=parseFloat(e.Area)\r\n e.Verified_Area_Count=parseFloat(e.Verified_Area_Count)\r\n })\r\n this.disctrictConsistenceWiseData = tempConsistenceWisedData\r\n this.cd.detectChanges();\r\n this.cd.reattach()\r\n }\r\n\r\n }\r\n refreshTable() {\r\n sessionStorage.removeItem('District and consistence wise data Approval ');\r\n this.loadData();\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Source_id', header: 'SI' },\r\n { field: 'District', header: 'Disctrict' },\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Application_recevied', header: 'App receieved' },\r\n { field: 'Area', header: 'Area' },\r\n { field: 'Approved', header: 'Verified App' },\r\n { field: 'Verified_Area_Count', header: 'Area' },\r\n { field: 'Incomplete', header: 'Incomplete App' },\r\n { field: 'Rejected', header: 'Rejected App' },\r\n { field: 'Pending', header: 'Pending App' },\r\n { field: 'Estimate_Created', header: 'Estimate Create' },\r\n { field: 'Estimate_Approved', header: 'Estimate Approved' },\r\n { field: 'Billsof_Quantity_Uploaded', header: 'Bills od Quantity Uploaded' },\r\n { field: 'Physical_Verification_Completed', header: 'Physical Verification Completed' },\r\n { field: 'Assistance_Disbursed', header: 'Assistance Disbursed' },\r\n { field: 'Assistance_Disbursed_Area', header: 'Area' },\r\n { field: 'Assistance_Disbursed_Amount', header: 'Amount' },\r\n { field: 'Approved', header: 'No. of Benficiary' }\r\n\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n printForm(appId, statusCode) {\r\n if (appId) {\r\n this.dashboard\r\n .getMIDetailByAppID(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n this.router.navigate(\r\n [\r\n 'department',\r\n 'print',\r\n this.cryptoJsService.Encrypt(appId),\r\n res[0]?.VendorId,\r\n res[0]?.ProgId,\r\n res[0]?.User_ID,\r\n res[0]?.AutoId,\r\n ],\r\n { queryParams: { statusCode: statusCodeEncrypted } }\r\n );\r\n },\r\n error: (err) => {\r\n console.log('error', err);\r\n this.activityRecordService.activityRecord(this.userID, 'View District and consistence wise data Approval', appId, new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'SI': d.Source_id,\r\n 'Disctrict': d.Application_recevied,\r\n 'Constituency': d.District,\r\n 'App receieved': d.Constituency,\r\n 'Area': d.Area,\r\n 'Verified App': d.Verified_Area_Count,\r\n 'Verified Area': d.Approved,\r\n 'Incomplete App': d.Rejected,\r\n 'Rejected App': d.Pending,\r\n 'Pending App': d.Incomplete,\r\n 'Estimate Create': d.Estimate_Created,\r\n 'Estimate Approved': d.Estimate_Approved,\r\n 'Bills od Quantity Uploaded': d.Billsof_Quantity_Uploaded,\r\n 'Physical Verification Completed': d.Physical_Verification_Completed,\r\n 'Assistance Disbursed': d.Assistance_Disbursed,\r\n 'Assistance Disbursed Area': d.Assistance_Disbursed_Area,\r\n 'Amount': d.Assistance_Disbursed_Amount,\r\n 'No. of Benficiary': d.Approved\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n exportExcel1(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Water Source\" : d.Source_Name,\r\n 'Application Verified and Eligible for Assistance': d.Verified_Apps,\r\n 'MI Area (In Acre)': d.Verified_Area_Count,\r\n 'Application under process of Installation': d.Under_Process_of_Installation,\r\n 'Assistance disbursed': d.Assistance_Disbursed,\r\n 'Area (In Acre)': d.Area,\r\n 'Amount (Rs. In lakh)': d.Disbursed_Amount,\r\n 'No. of Beneficiary': d.Verified_Apps,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n downloadSheetAsPdf1(modelData, filename) {\r\n this.cols = [\r\n { field: 'Source_Name', header: 'Water Source' },\r\n { field: 'Verified_Apps', header: 'Application Verified and Eligible for Assistance' },\r\n { field: 'Verified_Area_Count', header: 'MI Area (In Acre)' },\r\n { field: 'Under_Process_of_Installation', header: 'Application under process of Installation' },\r\n { field: 'Assistance_Disbursed', header: 'Assistance disbursed' },\r\n { field: 'Area', header: 'Area (In Acre)' },\r\n { field: 'Disbursed_Amount', header: 'Amount (Rs. In lakh)' },\r\n { field: 'Verified_Apps', header: 'No. of Beneficiary' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'MICRO_IRRIGATION_SYSTEM' | translate}}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'WATER_SOURCE' | translate}}\r\n \r\n \r\n \r\n {{'APPLICATION_VERIFIED' | translate}}\r\n \r\n \r\n \r\n {{'MI_AREA_IN_ACRE' | translate}}\r\n \r\n \r\n \r\n \r\n {{'APPLICATION_INSTALLATION' | translate}}\r\n \r\n \r\n \r\n {{'ASSISTANCE_DISBURSED' | translate}}\r\n \r\n \r\n \r\n \r\n {{'AREA_IN_ACRE' | translate}}\r\n \r\n \r\n \r\n {{'AMOUNT_IN_LAKH' | translate}}\r\n \r\n \r\n \r\n {{'NOOF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Source_Name}}\r\n {{product?.Verified_Apps}}\r\n {{product?.Verified_Area_Count}}\r\n {{product?.Under_Process_of_Installation}}\r\n {{product?.Assistance_Disbursed}}\r\n {{product?.Area}}\r\n {{product?.Disbursed_Amount}}\r\n {{product?.Noof_Benficiaries}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{WaterSoucreListData ? WaterSoucreListData.length : 0 }}\r\n {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'DRILL_DOWN_WILL_LEAD_TO_DISTRICT'| translate}}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'SI'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n \r\n {{'APP_RECEIVED'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n {{'VERIFIED_APP'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n {{'INCOMPLETE_APP'| translate}}\r\n \r\n \r\n \r\n {{'REJECTED_APP'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_APP'| translate}}\r\n \r\n \r\n \r\n \r\n {{'ESTIMATE_CREATED'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATE_APPROVED'| translate}}\r\n \r\n \r\n \r\n {{'BILLS_OF_QUANTITY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PHYSICAL_VERIFICATION_COMPLETED'|\r\n translate}}\r\n \r\n \r\n \r\n \r\n {{'ASSISTANCE_DISBURSED'| translate}}\r\n \r\n \r\n \r\n {{'AREA'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'NOOF_BENEFICIARY'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Source_id}}\r\n {{product?.District}}\r\n {{product?.Constituency}}\r\n {{product?.Application_recevied}}\r\n {{product?.Area}}\r\n {{product?.Approved}}\r\n {{product?.Verified_Area_Count}}\r\n {{product?.Incomplete}}\r\n {{product?.Rejected}}\r\n {{product?.Pending}}\r\n {{product?.Estimate_Created}}\r\n {{product?.Estimate_Approved}}\r\n {{product?.Billsof_Quantity_Uploaded}}\r\n {{product?.Physical_Verification_Completed}}\r\n {{product?.Assistance_Disbursed}}\r\n {{product?.Assistance_Disbursed_Area}}\r\n {{product?.Assistance_Disbursed_Amount}}\r\n {{product?.NoOf_Benficiary}}\r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{disctrictConsistenceWiseData ?\r\n disctrictConsistenceWiseData.length : 0 }} {{'VERIFICATION_APPLICATIONS_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-add-to-solar-flow',\r\n templateUrl: './add-to-solar-flow.component.html',\r\n styleUrls: ['./add-to-solar-flow.component.scss']\r\n})\r\nexport class AddToSolarFlowComponent implements OnInit {\r\n @ViewChild('queryDataTable', { static: true })\r\n public queryDataTable: Table;\r\n \r\n public userId: any;\r\n public appIds: any;\r\n public password: any;\r\n\r\n\r\n constructor(\r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private apiService: DashboardService,\r\n ) { }\r\n\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // console.log('token1', token);\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n }\r\n\r\n onSubmit() {\r\n if(this.appIds == null || this.appIds == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please Enter Application Ids.',\r\n });\r\n return;\r\n }\r\n if(this.password == null || this.password == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please Enter password.',\r\n });\r\n return;\r\n }\r\n let reqBody = {\r\n userId: this.cryptoJsService.Encrypt(this.userId),\r\n appIds: this.cryptoJsService.Encrypt(this.appIds),\r\n passCode: this.cryptoJsService.Encrypt(this.password),\r\n }\r\n this.postQuery(reqBody);\r\n }\r\n\r\n\r\n postQuery(reqBody){\r\n this.loader.start();\r\n this.apiService\r\n .addToSolarFlow(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.password = null;\r\n // this.appIds = null;\r\n\r\n if(data[0]?.Column1 == 'Success'){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: data[0] ? data[0]?.Column1 : '',\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'info',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ \"Application Ids\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ \"PASSWORD\" | translate }}\r\n \r\n
\r\n\r\n
\r\n {{ \"sub\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first } from 'rxjs';\r\nimport saveAs from 'file-saver';\r\nimport { inventory } from 'src/app/models/department-reports.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { shareReplay } from 'rxjs/operators';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-error-tracking',\r\n templateUrl: './error-tracking.component.html',\r\n styleUrls: ['./error-tracking.component.scss']\r\n})\r\nexport class ErrorTrackingComponent implements OnInit {\r\n\r\n errordata: any[];\r\n verfAppArea: any;\r\n pendingArea: any;\r\n incompleteAppArea: any;\r\n rejectedAppArea: any;\r\n changeRequestAppArea: any;\r\n totalAppArea: any;\r\n targetArea: any;\r\n grandVerfAppArea: number;\r\n grandPendingArea: number;\r\n grandIncompleteAppArea: number;\r\n grandRejectedAppArea: number;\r\n grandChangeRequestAppArea: number;\r\n grandTotalAppArea: number;\r\n grandTargetArea: number;\r\n arrayIndex: number;\r\n tempVendorMiArea: any[];\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: any[];\r\n filteredDataForExport: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public filteredData: any = [];\r\n public totalSelectedApp: any = 0;\r\n public totalSubToFarmer: any = 0;\r\n public totalSubToVendor: any = 0;\r\n public totalFarmerRefund: any = 0;\r\n\r\n public userID: any;\r\n displayMaximizable: boolean;\r\n displayMaximizable_totalApp: boolean;\r\n displayMaximizable_pendingApp: boolean;\r\n drilldownDetails: any;\r\n pendingType: any;\r\n displayMaximizable_rejectedApp: any;\r\n vendorName: any;\r\n name: any;\r\n routePath: any;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n public loading: boolean = false;\r\n public visible: boolean;\r\n public selectedData:any;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private messageService: MessageService,\r\n private dashboard: DashboardService,\r\n private router: Router,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private apiService: DashboardService,\r\n private confirmationService: ConfirmationService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.loadData()\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Inventory_report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.appVerificationModel, \"Inventory_report\");\r\n // }\r\n // },\r\n ];\r\n }\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe()\r\n }\r\n }\r\n\r\n loadData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.dashboard.getErrorTracking()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userID, 'Inventory Report', '', new Date(), 'Success');\r\n // this.loader.close();\r\n this.loading = false;\r\n console.log(\"dataaa\", data)\r\n if (data?.length > 0) {\r\n this.errordata = data;\r\n this.appVerificationModel = data;\r\n\r\n\r\n }\r\n else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n this.errordata = [];\r\n this.appVerificationModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'Inventory Report', '', new Date(), err);\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n // console.log(d)\r\n return {\r\n \"Auto ID\": d.AutoID,\r\n \"Login ID\": d.LoginID,\r\n \"Role Id\": d.RoleId,\r\n \"Action Type\": d.ActionType,\r\n \"Specific Id\": d.SpecificId,\r\n \"Status\": d.Status,\r\n \"Occurrence Date Time\": d.OccurrenceDateTime,\r\n \"Network Id\": d.NetworkId,\r\n \"Request Payload\": d.RequestPayload,\r\n }\r\n })\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // {field: 'VendorName', header: 'Vendor Name'},\r\n // {field: 'ProgrammeName', header: 'Programme Name'},\r\n // { field: 'component', header: 'component' },\r\n // { field: 'size', header: 'size' },\r\n // {field: 'Quantity', header: 'Quantity'},\r\n // {field: 'PreviouslyConsumedQuantity', header: 'Previously Consumed Quantity'},\r\n // {field: 'RemaningQuantity', header: 'Remaning Quantity'},\r\n // {field: 'BatchNO', header: 'BatchNO'},\r\n // {field: 'LotNo', header: 'LotNo'},\r\n // {field: 'PurchaseInvoiceNo', header: 'Purchase InvoiceNo'},\r\n // {field: 'ItemType', header: 'Item Type'},\r\n\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n // import(\"jspdf\").then(jsPDF => {\r\n // import(\"jspdf-autotable\").then(x => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 9 }});\r\n // doc.save(`${filename}.pdf`);\r\n // })\r\n // })\r\n // }\r\n refreshTable() {\r\n this.loadData()\r\n }\r\n\r\n onResolvedClick(val) {\r\n if (val.Resolved == 1) {\r\n this.confirmationService.confirm({\r\n message: 'Changed Mind!!! Problem is still not resolved ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n let reqBody = {\r\n AutoId: val.AutoID,\r\n StatusType: 'Resolved',\r\n Status: 0\r\n }\r\n this.loading = true;\r\n this.dashboard.UpdateActivityTracker(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n else {\r\n this.confirmationService.confirm({\r\n message: 'Are you sure problem is resolved ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n let reqBody = {\r\n AutoId: val.AutoID,\r\n StatusType: 'Resolved',\r\n Status: 1\r\n }\r\n this.loading = true;\r\n this.dashboard.UpdateActivityTracker(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n onNotRequiredClick(val) {\r\n if (val.NotRequired == 1) {\r\n this.confirmationService.confirm({\r\n message: 'Changed Mind!!! Want to take action?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n let reqBody = {\r\n AutoId: val.AutoID,\r\n StatusType: 'NA',\r\n Status: 0\r\n }\r\n this.loading = true;\r\n this.dashboard.UpdateActivityTracker(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n }); }\r\n else {\r\n this.confirmationService.confirm({\r\n message: 'Are you sure action is not required ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n let reqBody = {\r\n AutoId: val.AutoID,\r\n StatusType: 'NA',\r\n Status: 1\r\n }\r\n this.loading = true;\r\n this.dashboard.UpdateActivityTracker(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n }\r\n showDialog(selectedData:any) {\r\n this.visible = true;\r\n // console.log(selectedData,\"selectedData\")\r\n this.selectedData=selectedData\r\n}\r\n\r\nonCloseDialog(){\r\n this.visible = false;\r\n this.selectedData = {};\r\n}\r\n\r\n \r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'ERROR_TRACKING'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'ACTION_TYPE'| translate}}\r\n \r\n \r\n \r\n {{'SPECIFIC_ID'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'OCCURRANCE_DATE_TIME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VIEW'| translate}}\r\n {{'RESOLVED'| translate}}\r\n \r\n \r\n \r\n {{'NOT_REQUIRED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{errordata.ActionType}}\r\n {{errordata.SpecificId}}\r\n {{errordata.Status}}\r\n {{errordata.OccurrenceDateTime}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-get-solar',\r\n templateUrl: './get-solar.component.html',\r\n styleUrls: ['./get-solar.component.scss']\r\n})\r\nexport class GetSolarComponent implements OnInit {\r\n @ViewChild('queryDataTable', { static: true })\r\n public queryDataTable: Table;\r\n \r\n public userId: any;\r\n public text: any;\r\n public password: any;\r\n\r\n public textDefinition: any = null;\r\n\r\n constructor(\r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private apiService: DashboardService,\r\n ) { }\r\n\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // console.log('token1', token);\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n }\r\n\r\n onSubmit() {\r\n if(this.text == null || this.text == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please write text.',\r\n });\r\n return;\r\n }\r\n if(this.password == null || this.password == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please Enter Password.',\r\n });\r\n return;\r\n }\r\n let reqBody = {\r\n text: this.cryptoJsService.Encrypt(this.text),\r\n userId: this.userId ? this.cryptoJsService.Encrypt(this.userId) : '',\r\n passCode: this.cryptoJsService.Encrypt(this.password)\r\n }\r\n this.postQuery(reqBody);\r\n }\r\n\r\n\r\n postQuery(reqBody){\r\n this.loader.start();\r\n this.apiService\r\n .getSolar(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.text = null;\r\n this.password = null;\r\n this.textDefinition = this.cryptoJsService.DecryptData(data);\r\n console.log(this.cryptoJsService.DecryptData(data))\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.textDefinition = null;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ \"Text\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ \"PASSWORD\" | translate }}\r\n \r\n
\r\n\r\n
\r\n {{ \"sub\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{ \"Definition\" | translate }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-modify-solar',\r\n templateUrl: './modify-solar.component.html',\r\n styleUrls: ['./modify-solar.component.scss']\r\n})\r\nexport class ModifySolarComponent implements OnInit {\r\n @ViewChild('queryDataTable', { static: true })\r\n public queryDataTable: Table;\r\n \r\n public userId: any;\r\n public text: any;\r\n public password: any;\r\n\r\n public textDefinition: any = null;\r\n\r\n constructor(\r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private apiService: DashboardService,\r\n ) { }\r\n\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // console.log('token1', token);\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n }\r\n\r\n onSubmit() {\r\n if(this.text == null || this.text == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please write text.',\r\n });\r\n return;\r\n }\r\n if(this.password == null || this.password == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please Enter Password.',\r\n });\r\n return;\r\n }\r\n let reqBody = {\r\n text: this.cryptoJsService.Encrypt(this.text),\r\n userId: this.userId ? this.cryptoJsService.Encrypt(this.userId) : '',\r\n passCode: this.cryptoJsService.Encrypt(this.password)\r\n }\r\n this.postQuery(reqBody);\r\n }\r\n\r\n\r\n postQuery(reqBody){\r\n this.loader.start();\r\n this.apiService\r\n .modifySolarFlow(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.text = null;\r\n this.password = null;\r\n this.textDefinition = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.textDefinition = null;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ \"Text\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ \"PASSWORD\" | translate }}\r\n \r\n
\r\n\r\n
\r\n {{ \"sub\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{ \"Definition\" | translate }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-request-solar',\r\n templateUrl: './request-solar.component.html',\r\n styleUrls: ['./request-solar.component.scss']\r\n})\r\nexport class RequestSolarComponent implements OnInit {\r\n @ViewChild('queryDataTable', { static: true })\r\n public queryDataTable: Table;\r\n \r\n public userId: any;\r\n public query: any;\r\n public password: any;\r\n\r\n public tableData: any = [];\r\n public tableColumns: any = [];\r\n\r\n public isSubmitted: boolean = false;\r\n\r\n constructor(\r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private apiService: DashboardService,\r\n ) { }\r\n\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // console.log('token1', token);\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n }\r\n\r\n onSubmit() {\r\n if(this.query == null || this.query == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please write a proper query.',\r\n });\r\n return;\r\n }\r\n if(this.password == null || this.password == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please Enter Password.',\r\n });\r\n return;\r\n }\r\n let reqBody = {\r\n encContent: this.cryptoJsService.Encrypt(this.query),\r\n userId: this.userId ? this.cryptoJsService.Encrypt(this.userId) : '',\r\n passCode: this.cryptoJsService.Encrypt(this.password)\r\n }\r\n this.postQuery(reqBody);\r\n }\r\n\r\n\r\n postQuery(reqBody){\r\n this.isSubmitted = true;\r\n this.loader.start();\r\n this.apiService\r\n .requestSolar(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.query = null;\r\n this.password = null;\r\n\r\n if(Array.isArray(data) ? data.length == 0 : false){\r\n this.tableColumns = [];\r\n this.tableData = [];\r\n }\r\n else{\r\n this.tableColumns = Object.keys(data[0])\r\n this.tableData = data;\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.isSubmitted = false;\r\n this.tableColumns = [];\r\n this.tableData = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
{{ \"WRITE_YOUR_QUERY\" | translate }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ \"PASSWORD\" | translate }}\r\n \r\n
\r\n\r\n
\r\n {{ \"sub\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
{{ \"No Data Found\" }}
\r\n
\r\n
0\">\r\n \r\n \r\n
\r\n
{{'QUERY_RESPONSE_DATA'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product[item]}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ tableData ? tableData.length : 0 }} {{'ROWS'| translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-solar-list',\r\n templateUrl: './solar-list.component.html',\r\n styleUrls: ['./solar-list.component.scss']\r\n})\r\nexport class SolarListComponent implements OnInit {\r\n @ViewChild('queryDataTable', { static: true })\r\n public queryDataTable: Table;\r\n \r\n public userId: any;\r\n public solarListPassword: any;\r\n public downloadPassword: any;\r\n public fileBackupValue: boolean;\r\n\r\n\r\n public isSubmittedForSolarList: boolean = false;\r\n\r\n public tableData: any = [];\r\n public tableColumns: any = [];\r\n\r\n\r\n constructor(\r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private apiService: DashboardService,\r\n ) { }\r\n\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // console.log('token1', token);\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n \r\n }\r\n\r\n onSubmitSolarList(){\r\n if(this.solarListPassword == null || this.solarListPassword == ''){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: \"Please Enter a Password\",\r\n });\r\n return\r\n }\r\n this.isSubmittedForSolarList = true;\r\n let reqBody = {\r\n userId: this.cryptoJsService.Encrypt(this.userId),\r\n passCode: this.cryptoJsService.Encrypt(this.solarListPassword)\r\n }\r\n this.getSolarList(reqBody);\r\n // this.tableColumns = Object.keys({\"FileName\":\"Micada_New_0702-280220234.bak\",\"userId\":null,\"PassCode\":null})\r\n // this.tableData = [{\"FileName\":\"Micada_New_0702-060320234.bak\",\"userId\":null,\"PassCode\":null},{\"FileName\":\"Micada_New_0702-280220234.bak\",\"userId\":null,\"PassCode\":null}]\r\n }\r\n\r\n getSolarList(reqBody){\r\n this.loader.start();\r\n this.apiService\r\n .solarList(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.query = null;\r\n\r\n if(Array.isArray(data) ? data.length == 0 : false){\r\n this.tableColumns = [];\r\n this.tableData = [];\r\n }\r\n else{\r\n this.tableColumns = Object.keys(data[0])\r\n this.tableData = data;\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.tableColumns = [];\r\n this.tableData = [];\r\n this.isSubmittedForSolarList = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n onTooglebutton(val){\r\n this.fileBackupValue = val.checked\r\n }\r\n\r\n onSubmitFileBackup() {\r\n this.solarBackup(this.fileBackupValue);\r\n }\r\n\r\n\r\n solarBackup(fileBackupValue){\r\n this.loader.start();\r\n this.apiService\r\n .solarBackup(fileBackupValue)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n onDelete(val){\r\n let reqBody = {\r\n userId: this.cryptoJsService.Encrypt(this.userId),\r\n passCode: this.cryptoJsService.Encrypt(this.solarListPassword),\r\n text: this.cryptoJsService.Encrypt(val?.FileName)\r\n }\r\n\r\n this.removedbbackup(reqBody);\r\n \r\n }\r\n\r\n removedbbackup(reqBody){\r\n this.loader.start();\r\n this.apiService\r\n .removedbbackup(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: JSON.stringify(data),\r\n });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n }\r\n });\r\n }\r\n\r\n\r\n onDownload(val){\r\n let reqBody = {\r\n userId: this.cryptoJsService.Encrypt(this.userId),\r\n passCode: this.cryptoJsService.Encrypt(this.solarListPassword),\r\n fileName: this.cryptoJsService.Encrypt(val?.FileName)\r\n }\r\n\r\n this.downloadsolar(reqBody);\r\n }\r\n\r\n downloadsolar(reqBody){\r\n this.loader.start();\r\n this.apiService\r\n .downloadsolar(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: JSON.stringify(data),\r\n });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n }\r\n });\r\n }\r\n}\r\n\r\n","\r\n
\r\n
\r\n
\r\n
\r\n {{\"File Backup\"}}\r\n \r\n
\r\n\r\n
\r\n {{ \"sub\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n {{ \"PASSWORD\" | translate }}\r\n \r\n
\r\n\r\n
\r\n {{ \"sub\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{ \"No Data Found\" }}
\r\n
\r\n \r\n
0\">\r\n \r\n \r\n
\r\n
{{'QUERY_RESPONSE_DATA'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n {{ \"Delete\" }}\r\n {{ \"Download\" }}\r\n \r\n \r\n \r\n \r\n {{product[item]}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ tableData ? tableData.length : 0 }} {{'ROWS'| translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-solar-procedure',\r\n templateUrl: './solar-procedure.component.html',\r\n styleUrls: ['./solar-procedure.component.scss']\r\n})\r\nexport class SolarProcedureComponent implements OnInit {\r\n @ViewChild('queryDataTable', { static: true })\r\n public queryDataTable: Table;\r\n \r\n public userId: any;\r\n public procedureName: any;\r\n public parameters: any;\r\n public password: any;\r\n\r\n public tableData: any = [];\r\n public tableColumns: any = [];\r\n\r\n constructor(\r\n private cryptoJsService: CryptoJsService, \r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private apiService: DashboardService,\r\n ) { }\r\n\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // console.log('token1', token);\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n }\r\n\r\n onSubmit() {\r\n if(this.procedureName == null || this.procedureName == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please write a procedure.',\r\n });\r\n return;\r\n }\r\n // if(this.parameters == null || this.parameters == \"\"){\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Please Enter Parameters.',\r\n // });\r\n // return;\r\n // }\r\n if(this.password == null || this.password == \"\"){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please Enter Password.',\r\n });\r\n return;\r\n }\r\n let reqBody = {\r\n procName: this.cryptoJsService.Encrypt(this.procedureName),\r\n parameter: this.cryptoJsService.Encrypt(this.parameters),\r\n userId: this.userId ? this.cryptoJsService.Encrypt(this.userId) : '',\r\n passCode: this.cryptoJsService.Encrypt(this.password)\r\n }\r\n this.postQuery(reqBody);\r\n }\r\n\r\n\r\n postQuery(reqBody){\r\n this.loader.start();\r\n this.apiService\r\n .solarProcedure(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.procedureName = null;\r\n // this.parameters = null;\r\n this.password = null;\r\n \r\n \r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: JSON.stringify(data),\r\n });\r\n \r\n this.tableColumns = Object.keys(data[0])\r\n this.tableData = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.tableColumns = [];\r\n this.tableData = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ \"Procedure\" | translate }}\r\n \r\n
\r\n
\r\n {{ \"Parameter\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ \"PASSWORD\" | translate }}\r\n \r\n
\r\n\r\n
\r\n {{ \"sub\" | translate }}\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
0\">\r\n \r\n \r\n
\r\n
{{'QUERY_RESPONSE_DATA'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product[item]}}\r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ tableData ? tableData.length : 0 }} {{'ROWS'| translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { first } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-update-jamabandi',\r\n templateUrl: './update-jamabandi.component.html',\r\n styleUrls: ['./update-jamabandi.component.scss']\r\n})\r\nexport class UpdateJamabandiComponent implements OnInit {\r\n\r\n public userId: any;\r\n\r\n constructor(\r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private apiService: DashboardService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n }\r\n\r\n onClickUpdateJamabandi() {\r\n this.updateJamabandi();\r\n }\r\n\r\n updateJamabandi() {\r\n this.loader.start();\r\n this.apiService\r\n .getLandGetAreaByKhewatDevOnly()\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n\r\n if(resp['status'] == 200){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp['msg'],\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp['msg'],\r\n });\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n \r\n
\r\n
","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-evaluation-study',\r\n templateUrl: './evaluation-study.component.html',\r\n styleUrls: ['./evaluation-study.component.scss']\r\n})\r\nexport class EvaluationStudyComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n \r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n \r\n \r\n }\r\n}\r\n","\r\n
{{'EVALUATION_STUDY' |\r\n translate}}
\r\n

\r\n

\r\n

\r\n {{'EVALUATION_ABOUT' | translate}}
\r\n {{'EVALUATION_OF_CADWM' | translate}}.
\r\n

\r\n

{{'SUGGEST_GOV_INDIA' | translate}}:-

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
1.Chief Secretary to Govt. of HaryanaChairman
2.Additional Chief Secretary/Principal Secretary,Agriculture Department.Vice Chairman
3. Additional Chief Secretary/Principal Secretary,Finance & Planning DepartmentMember
4.Additional Chief Secretary to Govt. Haryana, Development and Panchayat DepartmentMember
5. Additional Chief Secretary/Principal Secretary,Water Resources/Irrigation/Minor Irrigation\r\n Department\r\n Member
6.Additional Chief Secretary/Principal Secretary,to Govt. Haryana, Forest & Wildlife DepartmentMember
7.Additional Chief Secretary/Principal Secretary,Science & Technology Department.Member
8.Additional Chief Secretary/Principal Secretary, Public Health Engineering Department.Member
9.Director General, Horticulture Haryana PanchkulaMember
10.Director General/Director, Rural DevelopmentMember
11.Director General/Director, Science & Technology Member
12.Representative of Department of Agriculture Co-operation & Farmers Welfare, Govt. of IndiaMember
13.Representative Department of Water Resources & GR, GOIMember
14.Representative Department of Land Resources & Rural Development, GOI.Member
15.Principal Chief Conservator of ForestsMember
16.Engineer-in-Chief, Public Health Engineering DepartmentMember
17.Engineer-in-Chief, Irrigation & Water Resources DepartmentMember
18. Administrator, CADAMember
19.Director General/Director, AgricultureMember Secretary

\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-farmer-dashboard',\r\n templateUrl: './farmer-dashboard.component.html',\r\n styleUrls: ['./farmer-dashboard.component.scss']\r\n})\r\nexport class FarmerDashboardComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

farmer-dashboard works!

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\nimport { first, groupBy, map, mergeMap, of, reduce, toArray } from 'rxjs';\r\nimport {\r\n crop_Datas,\r\n FarmerLandModel,\r\n FLandModel,\r\n} from 'src/app/models/farmer-land.model';\r\nimport { TankCoverageArea } from 'src/app/models/farmers-application.model';\r\nimport { OnFarmMiModel } from 'src/app/models/on-farm-mi.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { ChallanService } from 'src/app/services/challan-services.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { OnFarmMiService } from 'src/app/services/on-farm-mi.service';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-change-request',\r\n templateUrl: './change-request.component.html',\r\n styleUrls: ['./change-request.component.scss'],\r\n})\r\nexport class ChangeRequestComponent implements OnInit {\r\n public farmerId: any;\r\n public farmerMobile: any;\r\n public farmerAppDetails: any;\r\n\r\n requestType: any = [\r\n { reqType: 'Personal Details' },\r\n { reqType: 'Bank Details' },\r\n { reqType: 'Land Details' },\r\n { reqType: 'Existing MI Details' },\r\n { reqType: 'Edit App Details' },\r\n ];\r\n\r\n public todayDate: Date;\r\n public famerAppDetailsforDropDown: any = [];\r\n public selectedFarmerDeatils: any;\r\n public selectedAppId: any;\r\n\r\n public selectedRequestType: any;\r\n\r\n public showPersonalDetailsCard: boolean = false;\r\n public showBankDetailsCard: boolean = false;\r\n public showLandDetailsCard: boolean = false;\r\n public showExistingMIDetailsCard: boolean = false;\r\n public showEditAppDetailsCard: boolean = false;\r\n\r\n //personal details\r\n public farmersDetailsForm: FormGroup;\r\n // public selectedVillage: any;\r\n public selectedVillageForPersonalDetails: any;\r\n public selectedVillageForEditAppDetails: any;\r\n public selectedVillageForLandDetails: any;\r\n public isPeronalDetailsSubmitted: boolean = false;\r\n public genderType: string;\r\n public filteredVillage: any[];\r\n public villageList: { Code: number; Name: string }[];\r\n\r\n //bank details\r\n bankAccountList: BankDetail[] = [];\r\n bankAccountListForEditApp: BankDetail[] = [];\r\n bankList: any;\r\n selectedBankAccounts: BankDetail[];\r\n openBankDialog: boolean = false;\r\n bankAccount: any = [];\r\n bankDetailsSubmitted: boolean = false;\r\n filteredBankList: any[];\r\n public bank_Name: any;\r\n\r\n //land details\r\n lstFarmerLandModel: FarmerLandModel[];\r\n selectedFarmerLand: FarmerLandModel[];\r\n landDetailsSubmitted: boolean = false;\r\n openLandDialog: boolean = false;\r\n public innerWidth: any;\r\n public farmerLandForm: FormGroup;\r\n selectedNodes1: any[] = [];\r\n nodes2: any[];\r\n valRadio: boolean;\r\n selectedCorpModel: crop_Datas;\r\n selectedCorpModelList: any;\r\n farmerLandModel: FarmerLandModel;\r\n editFLModel: FarmerLandModel;\r\n\r\n // Existing MI Details\r\n lstOnFarmMiModel: OnFarmMiModel[];\r\n selectedOnFarmMi: OnFarmMiModel[];\r\n editFarmMiModel: OnFarmMiModel;\r\n lstFarmerLandModel1: FLandModel[];\r\n selectedLandDetail: any;\r\n selectedcompMaster: any;\r\n componentMasterList = [];\r\n isSubsidyAvailabe: any;\r\n openExistingMIDialog: boolean = false;\r\n public onFarmMIForm: FormGroup;\r\n existingMIDetailsSubmitted: boolean = false;\r\n filteredLandDetails: any[];\r\n MorabbaNo: any;\r\n KillaNo: any;\r\n filteredComponentMaster: any[];\r\n departmentList = [\r\n { name: 'Agriculture', code: 'Agriculture' },\r\n { name: 'Horticulture', code: 'Horticulture' },\r\n ];\r\n onFarmMiModel: OnFarmMiModel;\r\n\r\n // Edit App Details\r\n applicationSelected: any;\r\n waterSourceTypeList: { waterSource: any; component: any[] }[] = [];\r\n schemeMasterList: { type: any; data: any[] }[];\r\n componentList: any = [];\r\n canalOutletList: { canal: any; data: any[] }[];\r\n villageCodeFarmer = [];\r\n selectedVillageName: any;\r\n selectedVillageCode: any;\r\n selectedFarmerLandDetails: any[];\r\n farmerDetailsList: any;\r\n applicationId: any;\r\n landIDList: any;\r\n allLandsOfApplication: any;\r\n selectedFarmersLandList: any[];\r\n outletTypeList: any[];\r\n selectedWatersourceType: any;\r\n watercourseApplicatonForm: FormGroup;\r\n selectedLandIdList: any;\r\n componentSelected: any;\r\n addFarmerGroupDialog: boolean = false;\r\n consentUploadPath: any;\r\n miApplicatonForm: FormGroup;\r\n addBankDialog: boolean = false;\r\n miDetailsList = [];\r\n onFarmPondApplicatonForm: FormGroup;\r\n public isSubmittedWaterCourseFrom: boolean = false;\r\n public isSubmittedPondApplicatonForm: boolean = false;\r\n public isSubmittedSolarApplicatonFrom: boolean = false;\r\n tankListMaster: any;\r\n coverageAreaSelected: TankCoverageArea = new TankCoverageArea();\r\n solarApplicatonForm: FormGroup;\r\n primarySolarVendorList = [];\r\n solarMasterData: any = [];\r\n selectedPrimarySolarVendor: any;\r\n secondarySolarVendorList = [];\r\n selectedSecondarySolarVendor: any;\r\n selectedSecondarySolarVendorId: any;\r\n pumpCapacityList: { name: string; code: string }[];\r\n workTypeMasterList: any;\r\n bankAccountSelected: any;\r\n farmerPreviousSubsidies: any = [];\r\n totalNumberOfFarmersInGroup: number;\r\n selectedGroupFarmersLandList: any[];\r\n selectedSchemeId: any;\r\n selectedPondLand: any;\r\n allSchemeMaster: any[] = [];\r\n\r\n miList: any = [];\r\n public selectedMI: any;\r\n public selectedProgramId: any;\r\n miVendorList: any = [];\r\n filteredmiVendorList: any = [];\r\n miSelectedVendor: any;\r\n selectedFarmersLandIdList: any[] = [];\r\n componentMaster: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private productService: BankDetailService,\r\n private flService: FarmerLandDetailService,\r\n private ofService: OnFarmMiService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private confirmationService: ConfirmationService,\r\n private _dashboardService: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.todayDate = new Date();\r\n this.getIP();\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n\r\n this.farmerMobile = farmerConfData.get('farmerPh');\r\n \r\n let farmerData = farmerConfData.get('farmerDetails');\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n\r\n this.activityRecordService.activityRecord(this.farmerMobile, 'Change Request', this.farmerId, new Date(), 'Success');\r\n\r\n\r\n this.farmersDetailsForm = this._fb.group({\r\n farmersName: ['', Validators.required],\r\n fathersName: ['', Validators.required],\r\n mothersName: ['', Validators.required],\r\n gender: ['', Validators.required],\r\n dob: ['', Validators.required],\r\n pppId: [\r\n '',\r\n [Validators.required, Validators.minLength(8), Validators.maxLength(8)],\r\n ],\r\n aadharNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(12),\r\n Validators.maxLength(12),\r\n ],\r\n ],\r\n aadharPhotoPath: ['', Validators.required],\r\n mobileNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(10),\r\n Validators.maxLength(10),\r\n ],\r\n ],\r\n caste: ['', Validators.required],\r\n address: ['', Validators.required],\r\n pincode: ['', Validators.required],\r\n emailId: [\r\n '',\r\n Validators.compose([Validators.required, Validators.email]),\r\n ],\r\n village: [this.selectedVillageForPersonalDetails, Validators.required],\r\n pppPhotoPath: ['', Validators.required],\r\n farmersPhotoPath: ['', Validators.required],\r\n });\r\n\r\n this._personalDetalSer.getVillageMatserData().subscribe((res) => {\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList];\r\n if (!window.localStorage.getItem('villageMaster')) {\r\n window.localStorage.setItem('villageMaster', JSON.stringify(res));\r\n }\r\n });\r\n\r\n this.farmerLandForm = this._fb.group({\r\n totalArea: ['', [Validators.required]],\r\n morabbaNumber: [, [Validators.required]],\r\n killaNumber: [, [Validators.required]],\r\n kanals: [\r\n '',\r\n Validators.compose([Validators.required, Validators.max(8)]),\r\n ],\r\n marlas: ['', [Validators.required]],\r\n village: ['', [Validators.required]],\r\n latitude: ['', ''],\r\n longitude: ['', ''],\r\n cropType: ['', [Validators.required]],\r\n IsSubsidyAvailabe: ['', [Validators.required]],\r\n landdoc_Path: ['', [Validators.required]],\r\n leaseDoc_Path: [''],\r\n });\r\n\r\n this.onFarmMIForm = this._fb.group({\r\n yearSubsudy: ['', []],\r\n balanceArea: ['', [Validators.required]],\r\n departmentSubsidy: ['', []],\r\n componentMaster: ['', []],\r\n isSubsidyAvailabe: ['', [Validators.required]],\r\n landDetails: ['', [Validators.required]],\r\n subsidyArea: [''],\r\n });\r\n\r\n //edit app\r\n this.watercourseApplicatonForm = this._fb.group({\r\n canal: ['', Validators.required],\r\n outlet: ['', Validators.required],\r\n workType: ['', Validators.required],\r\n checkBox: ['', Validators.required],\r\n });\r\n\r\n this.miApplicatonForm = this._fb.group({\r\n mi: [''],\r\n vendor: [''],\r\n landId: [''],\r\n });\r\n\r\n this.onFarmPondApplicatonForm = this._fb.group({\r\n landId: ['', Validators.required],\r\n sizeCoverageArea: ['', Validators.required],\r\n topSize: [''],\r\n bottomSize: [''],\r\n depth: [''],\r\n waterCapacity: [''],\r\n tenativeCost: [''],\r\n tankId: [''],\r\n });\r\n\r\n this.solarApplicatonForm = this._fb.group({\r\n controlType: ['', Validators.required],\r\n pump: ['', Validators.required],\r\n pumpType: ['', Validators.required],\r\n pumpCapacity: ['', Validators.required],\r\n primaryVendor: ['', Validators.required],\r\n secondaryVendor: [''],\r\n farmerShare: [''],\r\n solarId: ['', Validators.required],\r\n landId: ['', Validators.required],\r\n });\r\n\r\n this.pumpCapacityList = [\r\n { name: '3 HP', code: '3 HP' },\r\n { name: '5 HP', code: '5 HP' },\r\n { name: '7.5 HP', code: '7.5 HP' },\r\n { name: '10 HP', code: '10 HP' },\r\n ];\r\n }\r\n\r\n //App details API\r\n getApplicationIdsForChallan(farmerId) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getApplicationIdsByFarmerIdForCR(farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.farmerAppDetails = res;\r\n if (this.farmerAppDetails.length > 0) {\r\n this.famerAppDetailsforDropDown = this.farmerAppDetails;\r\n // this.famerAppDetailsforDropDown = this.farmerAppDetails.map(\r\n // (res) => {\r\n // return {\r\n // appIdToDisplay: res.AppId + ' (' + res.ProgrammeName + ')',\r\n // ...res,\r\n // };\r\n // }\r\n // );\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // On select App Id\r\n onSelectAppId() {\r\n this.selectedAppId = this.selectedFarmerDeatils;\r\n this.applicationId = this.selectedAppId;\r\n // this.applicationId = \"MI22230000099\";\r\n this.populateForm(this.applicationId);\r\n }\r\n\r\n hideAllCards() {\r\n this.showPersonalDetailsCard = false;\r\n this.showBankDetailsCard = false;\r\n this.showLandDetailsCard = false;\r\n this.showExistingMIDetailsCard = false;\r\n this.showEditAppDetailsCard = false;\r\n }\r\n\r\n // on select change request type\r\n onSelectChangeRequestType() {\r\n this.hideAllCards();\r\n this.selectedRequestType.forEach((value) => {\r\n if (value.reqType == 'Personal Details') {\r\n this.LoadFarmerDetails();\r\n this.showPersonalDetailsCard = true;\r\n }\r\n if (value.reqType == 'Bank Details') {\r\n this.getFarmerId();\r\n this.getBankNameList();\r\n this.showBankDetailsCard = true;\r\n }\r\n if (value.reqType == 'Land Details') {\r\n this.loadLandDetailsData();\r\n this.getCorpType();\r\n this.innerWidth = window.innerWidth;\r\n this.showLandDetailsCard = true;\r\n }\r\n if (value.reqType == 'Existing MI Details') {\r\n this.loadOnFramMI();\r\n // this.getCorpType();\r\n this.loadComponentMaster();\r\n this.loadExisitingMIDialogData();\r\n this.innerWidth = window.innerWidth;\r\n this.showExistingMIDetailsCard = true;\r\n }\r\n\r\n if (value.reqType == 'Edit App Details') {\r\n this.getApplicationIdsForChallan(this.farmerId);\r\n // this.applicationId = \"MI22230000099\"\r\n this.waterSourceTypeList = [];\r\n // this.innerWidth = window.innerWidth;\r\n this.getPastSubsidiesByFarmerId();\r\n this.getSchemeMaster();\r\n this.getSolarMaster();\r\n this.getComponentMaster();\r\n this.getWorkTypeMasterData();\r\n this.getAllTank();\r\n\r\n this.getBankListOfFarmer();\r\n this.getVillageData();\r\n\r\n this.showEditAppDetailsCard = true;\r\n }\r\n });\r\n }\r\n //----------------------------------------------------------------------------------\r\n\r\n // Personal Details\r\n get farmersFormControls() {\r\n return this.farmersDetailsForm.controls;\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n this.loader.start();\r\n\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n\r\n if (resp.statusCode == 200) {\r\n this.farmersDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n LoadFarmerDetails() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .getFarmerDetails(phNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data) {\r\n this.loader.close();\r\n let farmerData = data.Table[0];\r\n if (farmerData) {\r\n // this.isEditable = farmerData.IsEdit;\r\n let dob = farmerData.DOB.split('T')[0].split('-');\r\n\r\n this.farmersFormControls.pppId.setValue(farmerData.PPP_ID);\r\n this.farmersFormControls.farmersName.setValue(farmerData.Name);\r\n this.farmersFormControls.fathersName.setValue(\r\n farmerData.Father_name\r\n );\r\n this.farmersFormControls.mothersName.setValue(\r\n farmerData.Mother_Name\r\n );\r\n this.farmersFormControls.address.setValue(farmerData.Address);\r\n this.farmersFormControls.mobileNo.setValue(farmerData.Mobile);\r\n this.farmersFormControls.dob.setValue(\r\n dob[2] + '-' + dob[1] + '-' + dob[0]\r\n );\r\n // this.farmersFormControls.dob.setValue(farmerData.DOB);\r\n this.farmersFormControls.pincode.setValue(farmerData.Pin_Code);\r\n this.farmersFormControls.emailId.setValue(farmerData.Email_ID);\r\n this.farmersFormControls.aadharNo.setValue(farmerData.Aadhar_No);\r\n this.farmersFormControls.caste.setValue(farmerData.Caste_Code);\r\n // this.farmersFormControls.idProof.setValue(farmerData.IDproof_Type);\r\n this.farmersFormControls.gender.setValue(farmerData.Gender);\r\n this.genderType = farmerData.Gender;\r\n this.farmersFormControls.farmersPhotoPath.setValue(\r\n farmerData.Farmer_Photo\r\n );\r\n // this.farmersFormControls.idProofPhotoPath.setValue(farmerData.ID_Proof_FilePath);\r\n this.farmersFormControls.aadharPhotoPath.setValue(\r\n farmerData.Aadhaar_Copy_Upload\r\n );\r\n this.farmersFormControls.pppPhotoPath.setValue(\r\n farmerData.ID_Proof_FilePath\r\n );\r\n let village = this.villageList.filter(\r\n (val) => val.Code === farmerData.Village_Code\r\n )[0];\r\n this.farmersFormControls.village.setValue(village.Name);\r\n this.selectedVillageForPersonalDetails = village;\r\n }\r\n }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.farmersFormControls.mobileNo.setValue(phNo);\r\n // this.router.navigate(['/personal-details']);\r\n },\r\n });\r\n }\r\n\r\n onPersonDetailUpdate() {\r\n this.isPeronalDetailsSubmitted = true;\r\n\r\n if (this.farmersDetailsForm.valid) {\r\n // const data = this.mapDataToFarmersModel();\r\n // if (farmerData) {\r\n\r\n // this._update(data)\r\n // } else {\r\n // this._insert(data)\r\n // }\r\n // /api/ChangeRequest/PersonalDetailsInsert_CR\r\n\r\n let DOB: Date;\r\n let values = this.farmersDetailsForm.controls.dob.value\r\n .toString()\r\n .split('-');\r\n if (values.length) {\r\n //Replacing DD MM to MM DD Format.\r\n values.splice(1, 0, values.shift());\r\n DOB = values.join(' ');\r\n }\r\n\r\n let val = this.farmersDetailsForm.value;\r\n let reqBody = {\r\n farmerID: this.farmerId,\r\n name: val.farmersName,\r\n farmerFatherName: val.fathersName,\r\n farmerMotherName: val.mothersName,\r\n gender: val.gender,\r\n dob: DOB\r\n ? this.toISOLocal(new Date(DOB)).replace(/.\\d+Z$/g, '')\r\n : this.toISOLocal(\r\n new Date(this.farmersDetailsForm.controls.dob.value)\r\n ).replace(/.\\d+Z$/g, ''),\r\n farmerphoto_path: val.farmersPhotoPath,\r\n ppP_ID: val.pppId,\r\n aadharno: val.aadharNo,\r\n mobileno: val.mobileNo,\r\n castcode: val.caste,\r\n address: val.address,\r\n pincode: val.pincode,\r\n emailid: val.emailId,\r\n villagecode: val.village.Code,\r\n ppP_path: val.pppId,\r\n aadhar_path: val.aadharPhotoPath,\r\n active: '1',\r\n area_Already_Apply: 0,\r\n userID: sessionStorage.getItem('abyUserID')\r\n ? sessionStorage.getItem('abyUserID')\r\n : sessionStorage.getItem('userID'),\r\n network_ID: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n };\r\n\r\n this.personalDetailsInsert_CR(reqBody);\r\n }\r\n }\r\n\r\n toISOLocal(d) {\r\n var z = (n) => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n\r\n return d.getFullYear() + '-' + z(d.getMonth() + 1) + '-' + z(d.getDate());\r\n }\r\n\r\n personalDetailsInsert_CR(reqBody) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .personalDetailsInsert_CR(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n // this.showPersonalDetailsCard = false;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n //----------------------------------------------------------------------------------\r\n\r\n // Bank Details\r\n editBankDetails(product) {\r\n this.bankAccount = product;\r\n // Bank_ID\r\n let bankName = this.bankList.filter(\r\n (val) => val.BANK_ID === product.Bank_ID\r\n )[0];\r\n // this.selectedBankAccounts = bankName;\r\n this.bank_Name = bankName;\r\n this.openBankDialog = true;\r\n }\r\n\r\n getBankList() {\r\n this.loader.start();\r\n this.productService\r\n .getBankDetails(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n let d = data ?? [];\r\n this.bankAccountList = d.map((res) => {\r\n return {\r\n accountHolderName: res.Account_Holder_Name,\r\n accountNumber: res.Account_NO,\r\n bankName: this.bankList\r\n .filter((d) => d.BANK_ID === res.Bank_ID)\r\n .map((d) => d.Bank_NAME)[0],\r\n ifscCode: res.IFSC_code,\r\n image: res.Passbook_Copy_Upload,\r\n ...res,\r\n };\r\n });\r\n\r\n // this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Bank Details saved Successfully.' });\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Bank Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getFarmerId() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let mobile = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') as string : '';\r\n \r\n this.loader.start();\r\n this.productService.getFarmerIdByMobileNo(mobile).subscribe((resp) => {\r\n this.loader.close();\r\n if (resp.statusCode === 200) {\r\n let far = JSON.parse(resp.data);\r\n if (far.length > 0) {\r\n this.farmerId = far[0].Farmer_ID;\r\n\r\n this.getBankList();\r\n }\r\n }\r\n });\r\n }\r\n\r\n getBankNameList() {\r\n this.loader.start();\r\n this.productService.getAllBankNames().subscribe((data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.bankList = data;\r\n this.filteredBankList = data;\r\n }\r\n });\r\n }\r\n\r\n filterBank(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.bankList.length; i++) {\r\n const bank = this.bankList[i];\r\n if (bank.Bank_NAME.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(bank);\r\n }\r\n }\r\n\r\n this.filteredBankList = filtered;\r\n }\r\n\r\n hideBankDialog() {\r\n this.openBankDialog = false;\r\n this.bankDetailsSubmitted = false;\r\n }\r\n\r\n saveBankDetails() {\r\n this.bankDetailsSubmitted = true;\r\n\r\n if (\r\n this.bankAccount.accountHolderName!.trim() &&\r\n this.bankAccount.accountNumber &&\r\n this.bankAccount.bankName &&\r\n this.bankAccount.ifscCode &&\r\n this.bankAccount.image &&\r\n this.bank_Name\r\n ) {\r\n const data = {\r\n farmerID: this.farmerId,\r\n bankID: this.bank_Name.BANK_ID,\r\n ifcS_Code: this.bankAccount.ifscCode,\r\n acco_Number: this.bankAccount.accountNumber.toString(),\r\n accHoName: this.bankAccount.accountHolderName,\r\n scanCopy_Path: this.bankAccount.image,\r\n active: '1',\r\n user_ID: sessionStorage.getItem('abyUserID')\r\n ? sessionStorage.getItem('abyUserID')\r\n : sessionStorage.getItem('userID'),\r\n network_Id: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n };\r\n this.loader.start();\r\n this.productService\r\n .bankDetailsInsert_CR(data)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Bank Details Added',\r\n });\r\n this.getBankList();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n this.openBankDialog = false;\r\n this.bankAccount = {};\r\n }\r\n }\r\n //----------------------------------------------------------------------------------\r\n\r\n // Land Details\r\n get f() {\r\n return this.farmerLandForm.controls;\r\n }\r\n\r\n loadLandDetailsData() {\r\n this.loader.start();\r\n this.flService\r\n .Get(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.Table.length > 0) {\r\n this.lstFarmerLandModel = data.Table;\r\n }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Land Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n editLandDetails(bank: any) {\r\n this.editFLModel = new FarmerLandModel();\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let flModel = { ...bank };\r\n this.f.totalArea.setValue(flModel.Total_Area);\r\n this.f.morabbaNumber.setValue(flModel.Morabba_No);\r\n this.f.killaNumber.setValue(flModel.Killa_No);\r\n this.f.kanals.setValue(flModel.Kanals);\r\n\r\n this.f.marlas.setValue(flModel.Marlas);\r\n\r\n this.f.latitude.setValue(flModel.Lat);\r\n this.f.longitude.setValue(flModel.Long);\r\n this.valRadio = flModel.IS_Avalibe_for_Lease;\r\n this.f.cropType.setValue(flModel.Crop_Type_ID);\r\n this.f.landdoc_Path.setValue(flModel.Land_Doc);\r\n this.editFLModel = flModel;\r\n\r\n let village = this.villageList.filter(\r\n (val) => val.Code === flModel.Village_Code\r\n )[0];\r\n this.f.village.setValue(village.Name);\r\n this.selectedVillageForLandDetails = village;\r\n\r\n this.openLandDialog = true;\r\n }\r\n\r\n onKanalsChange() {\r\n let tlk: any = 0.0;\r\n let tlm: any = 0.0;\r\n if (this.f.kanals.value != undefined || this.f.kanals.value != '') {\r\n if (parseInt(this.f.kanals.value) >= 8) {\r\n this.f.marlas.setValue(0);\r\n this.f.marlas.disable();\r\n tlm = 1;\r\n } else {\r\n this.f.marlas.enable();\r\n }\r\n tlk = parseInt(this.f.kanals.value) * 0.125;\r\n }\r\n if (this.f.marlas.value != undefined || this.f.marlas.value != '') {\r\n tlk = parseInt(this.f.marlas.value) * 0.006249999998;\r\n }\r\n\r\n let tl = tlk + tlm;\r\n this.f.totalArea.setValue(parseFloat(tl).toFixed(2));\r\n }\r\n\r\n onMarlasChange() {\r\n let tlk: any = 0.0;\r\n let tlm: any = 0.0;\r\n if (this.f.kanals.value != undefined || this.f.kanals.value != '') {\r\n tlk = parseInt(this.f.kanals.value) * 0.125;\r\n }\r\n if (this.f.marlas.value != undefined || this.f.marlas.value != '') {\r\n tlm = parseInt(this.f.marlas.value) * 0.006249999998;\r\n }\r\n let tl = tlk + tlm;\r\n this.f.totalArea.setValue(parseFloat(tl).toFixed(2));\r\n }\r\n\r\n getCorpType() {\r\n this.loader.start();\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.loader.close();\r\n this.nodes2 = files;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n setCurrentPosition() {\r\n if ('geolocation' in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.showPosition(position);\r\n });\r\n }\r\n }\r\n\r\n showPosition(position) {\r\n let geocoder = new google.maps.Geocoder();\r\n let latlng = {\r\n lat: position.coords.latitude,\r\n lng: position.coords.longitude,\r\n };\r\n this.f.latitude.setValue(position.coords.latitude);\r\n this.f.longitude.setValue(position.coords.longitude);\r\n }\r\n\r\n getSelectedCorpType() {\r\n this.selectedCorpModel = new crop_Datas();\r\n this.selectedCorpModelList = [];\r\n let selectedLabels = [];\r\n for (let result of this.selectedNodes1) {\r\n if (result.parent) {\r\n if (selectedLabels.includes(result.label)) {\r\n break;\r\n }\r\n let body = {\r\n crop_ID: result.data,\r\n type_of_crop_ID: result.parent?.data,\r\n };\r\n this.selectedCorpModelList.push(body);\r\n selectedLabels.push(result.label);\r\n } else if (result.children) {\r\n result.children.forEach((child) => {\r\n if (selectedLabels.includes(child.label)) {\r\n return;\r\n }\r\n let body = {\r\n crop_ID: child.data,\r\n type_of_crop_ID: child.parent?.data\r\n ? child.parent?.data\r\n : result.data,\r\n };\r\n\r\n this.selectedCorpModelList.push(body);\r\n selectedLabels.push(child.label);\r\n });\r\n }\r\n }\r\n }\r\n\r\n onLandDetailsSubmit() {\r\n this.landDetailsSubmitted = true;\r\n\r\n // stop here if form is invalid\r\n if (this.farmerLandForm.invalid) {\r\n return;\r\n }\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please complete the farmer details first.',\r\n });\r\n return;\r\n }\r\n this.getSelectedCorpType();\r\n this.farmerLandModel = new FarmerLandModel();\r\n this.farmerLandModel.land_ID = 0;\r\n this.farmerLandModel.farmerID = this.farmerId;\r\n this.farmerLandModel.total_Area = this.f.totalArea.value;\r\n this.farmerLandModel.morbno = this.f.morabbaNumber.value;\r\n this.farmerLandModel.killano = this.f.killaNumber.value;\r\n this.farmerLandModel.kanal = this.f.kanals.value;\r\n this.farmerLandModel.marla = this.f.marlas.value;\r\n this.farmerLandModel.village_Code = this.f.village.value.Code;\r\n this.farmerLandModel.lat = this.f.latitude.value\r\n ? this.f.latitude.value\r\n : 0;\r\n this.farmerLandModel.long = this.f.longitude.value\r\n ? this.f.longitude.value\r\n : 0;\r\n this.farmerLandModel.is_Available_Lease = this.valRadio;\r\n this.farmerLandModel.landdoc_Path = this.f.landdoc_Path.value;\r\n this.farmerLandModel.lease_Agrement_Doc = this.valRadio\r\n ? this.f.leaseDoc_Path.value\r\n : '';\r\n this.farmerLandModel.user_ID = farmerData?.['Farmer_ID'];\r\n this.farmerLandModel.network_ID = this.ipAddress;\r\n this.farmerLandModel.terminal_ID = this.ipAddress;\r\n this.farmerLandModel.active = '1';\r\n this.farmerLandModel.crop_Datas = this.selectedCorpModelList;\r\n\r\n if (this.editFLModel.Land_ID > 0) {\r\n this.farmerLandModel.land_ID = this.editFLModel.Land_ID;\r\n this.loader.start();\r\n this.flService\r\n .landDetailsInsert_CR(this.farmerLandModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: () => {\r\n this.loader.close();\r\n this.loadLandDetailsData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Farmer Land saved Successfully.',\r\n });\r\n this.openLandDialog = false;\r\n this.farmerLandForm.reset();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Land Details not saved.',\r\n });\r\n },\r\n });\r\n } else {\r\n this.loader.start();\r\n this.flService\r\n .InsertLandDetails(this.farmerLandModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: () => {\r\n this.loader.close();\r\n this.loadLandDetailsData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Farmer Land saved Successfully.',\r\n });\r\n this.openLandDialog = false;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Land Details not saved.',\r\n });\r\n },\r\n });\r\n }\r\n }\r\n\r\n hideLandDialog() {\r\n this.openLandDialog = false;\r\n this.landDetailsSubmitted = false;\r\n }\r\n\r\n //----------------------------------------------------------------------------------\r\n\r\n // Existing MI Details\r\n get fMI() {\r\n return this.onFarmMIForm.controls;\r\n }\r\n\r\n loadOnFramMI() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n this.loader.start();\r\n if (!farmerData) {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please complete the farmer details first.',\r\n });\r\n return;\r\n }\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n\r\n this.ofService\r\n .GetOnFarmMi(farmerData?.['Farmer_ID'])\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.Table.length > 0) {\r\n this.lstOnFarmMiModel = data.Table.map((res) => {\r\n return {\r\n landDetailsToDisplay:\r\n 'Village Name:' +\r\n res.VillageName +\r\n ' - Killa No:' +\r\n res.Killa_No +\r\n ' - Morabba No:' +\r\n res.Morabba_No,\r\n ...res,\r\n };\r\n });\r\n }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farm Mi Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n loadExisitingMIDialogData() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (farmerData) {\r\n this.loader.start();\r\n this.flService\r\n .getNotUsedLandsByFarmerID(farmerData?.['Farmer_ID'])\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.length > 0) {\r\n this.lstFarmerLandModel1 = data;\r\n this.lstFarmerLandModel1.forEach(function (value) {\r\n value.description =\r\n 'Morabba: ' + value.MorabbaNo + ', Killa' + value.KillaNo;\r\n });\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Land Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n }\r\n\r\n editExistingMIDetails(bank: any) {\r\n this.openExistingMIDialog = true;\r\n this.editFarmMiModel = new OnFarmMiModel();\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let farmMi = { ...bank };\r\n this.fMI.yearSubsudy.setValue(farmMi.Year_subsidy);\r\n this.fMI.balanceArea.setValue(farmMi.Bal_Area);\r\n this.fMI.departmentSubsidy.setValue(farmMi.Dept_Subsidy);\r\n this.fMI.landDetails.setValue(farmMi.Land_ID);\r\n let val = this.lstFarmerLandModel1.filter(\r\n (x) => x.LandID == farmMi.Land_ID\r\n )[0];\r\n this.selectedLandDetail = val;\r\n this.fMI.componentMaster.setValue(farmMi.Component);\r\n this.selectedcompMaster = this.componentMasterList.filter(\r\n (x) => x.Program_Name == farmMi.Component\r\n )[0];\r\n this.isSubsidyAvailabe = farmMi.Is_Subsidy_Avail;\r\n this.editFarmMiModel = bank;\r\n\r\n // this.openExistingMIDialog = true;\r\n }\r\n\r\n filterLandDetails(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.lstFarmerLandModel1.length; i++) {\r\n const wq = this.lstFarmerLandModel1[i];\r\n if (wq.MorabbaNo.toString().indexOf(query) == 0) {\r\n filtered.push(wq);\r\n }\r\n }\r\n this.filteredLandDetails = filtered;\r\n }\r\n\r\n changeLD() {\r\n this.KillaNo = this.selectedLandDetail.KillaNo;\r\n this.MorabbaNo = this.selectedLandDetail.MorabbaNo;\r\n let balanceArea =\r\n this.selectedLandDetail.TotalArea - this.fMI.balanceArea.value;\r\n this.fMI.balanceArea.setValue(balanceArea);\r\n }\r\n\r\n loadComponentMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getComponentMaster().subscribe((res) => {\r\n this.loader.close();\r\n this.componentMasterList = res;\r\n this.filteredComponentMaster = [...this.componentMasterList];\r\n });\r\n }\r\n\r\n filterComponentMaster(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.componentMasterList.length; i++) {\r\n const wq = this.componentMasterList[i];\r\n if (wq.Program_Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(wq);\r\n }\r\n }\r\n\r\n this.filteredComponentMaster = filtered;\r\n }\r\n\r\n subsidyAreachange(event: any) {\r\n let balanceArea =\r\n this.selectedLandDetail?.Total_Area - this.fMI.subsidyArea.value;\r\n this.fMI.balanceArea.setValue(balanceArea);\r\n }\r\n\r\n hideExistingMIDialog() {\r\n this.openExistingMIDialog = false;\r\n this.existingMIDetailsSubmitted = false;\r\n }\r\n\r\n onExistingMISubmit() {\r\n this.existingMIDetailsSubmitted = true;\r\n this.loader.start();\r\n // stop here if form is invalid\r\n if (this.onFarmMIForm.invalid) {\r\n return;\r\n this.loader.close();\r\n }\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please complete the farmer details first.',\r\n });\r\n return;\r\n }\r\n\r\n this.onFarmMiModel = new OnFarmMiModel();\r\n this.onFarmMiModel.farmerID = farmerData?.['Farmer_ID'];\r\n this.onFarmMiModel.land_ID = this.fMI.landDetails.value.LandID;\r\n this.onFarmMiModel.water_Quality = '1';\r\n this.onFarmMiModel.isSubsidyAvail = this.isSubsidyAvailabe;\r\n this.onFarmMiModel.year_subsidy =\r\n this.isSubsidyAvailabe == 1 ? this.fMI.yearSubsudy.value : '0';\r\n this.onFarmMiModel.bal_Area = this.fMI.balanceArea.value;\r\n this.onFarmMiModel.dept_subsidy =\r\n this.isSubsidyAvailabe == 1 ? this.fMI.departmentSubsidy.value : '';\r\n this.onFarmMiModel.component = this.fMI.componentMaster.value.Program_Id;\r\n this.onFarmMiModel.user_ID = sessionStorage.getItem('abyUserID')\r\n ? sessionStorage.getItem('abyUserID')\r\n : sessionStorage.getItem('userID');\r\n this.onFarmMiModel.network_ID = this.ipAddress;\r\n this.onFarmMiModel.terminal_ID = this.ipAddress;\r\n\r\n // if (this.editFarmMiModel != null) {\r\n this.onFarmMiModel.farmerID = this.editFarmMiModel.Farmer_ID;\r\n this.onFarmMiModel.land_ID = this.editFarmMiModel.Land_ID;\r\n this.ofService\r\n .insertOnFarmMIDetails_CR(this.onFarmMiModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: () => {\r\n this.loader.close();\r\n this.loadOnFramMI();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Farm Mi saved Successfully.',\r\n });\r\n this.openExistingMIDialog = false;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farm Mi Details not saved.',\r\n });\r\n },\r\n });\r\n // } else {\r\n // this.ofService\r\n // .insertOnFarmMIDetails_CR(this.onFarmMiModel)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: () => {\r\n // this.loadOnFramMI();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: 'Farm Mi saved Successfully.',\r\n // });\r\n // this.openExistingMIDialog = false;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Farm Mi Details not saved.',\r\n // });\r\n // },\r\n // });\r\n // }\r\n }\r\n //--------------------------------------------------------------------------------------------------\r\n\r\n\r\n // Edit App details\r\n //-------------------------------------------------------------------------------------\r\n onApplicationTypeSelected(event) {\r\n let selected = event.value;\r\n // this.getVillageData();\r\n this.applicationSelected = selected;\r\n this.waterSourceTypeList = [];\r\n this.componentList = [];\r\n let selectedAppData = this.schemeMasterList.filter(\r\n (d) => d.type === this.applicationSelected\r\n )[0].data;\r\n this.loader.start();\r\n of(...selectedAppData)\r\n .pipe(\r\n groupBy((p: any) => p.Source_Name),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ waterSource: arr[0], component: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n this.loader.close();\r\n this.waterSourceTypeList = p;\r\n if (this.applicationSelected == 'Individual') {\r\n // this.listAllOutletData();\r\n } else {\r\n this.canalOutletList = [];\r\n }\r\n });\r\n }\r\n\r\n onVillageSelect(val: any) {\r\n this.villageCodeFarmer = [];\r\n this.selectedVillageName = val.Name;\r\n this.selectedVillageCode = val.Code;\r\n this.selectedVillageForEditAppDetails = val;\r\n this.selectedFarmerLandDetails = [];\r\n this.farmerDetailsList = [];\r\n this.villageCodeFarmer.push(val.Code);\r\n this.GetAllFarmerDetails(this.villageCodeFarmer);\r\n this.getAllOutletData(this.villageCodeFarmer);\r\n }\r\n\r\n GetAllFarmerDetails(villageCode: any) {\r\n this.selectedFarmerLandDetails = [];\r\n this.farmerDetailsList = [];\r\n if (this.applicationId) {\r\n this.landIDList = this.transformLandIDData(this.allLandsOfApplication);\r\n } else {\r\n if (this.applicationSelected === 'Individual') {\r\n this.getFarmerLandByFarmerIds();\r\n } else {\r\n this.loader.start();\r\n this.farmerAppSer.GetFarmerAndLandByVillageCode(villageCode).subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.farmerDetailsList = data;\r\n this.getFarmerLandByFarmerIds();\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n }\r\n }\r\n\r\n getFarmerLandByFarmerIds() {\r\n let farmerIds = [];\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n //Here for Individual application Type\r\n if (this.applicationSelected === 'Individual') {\r\n let farmerId = farmerData?.['Farmer_ID'];\r\n farmerIds.push(farmerId.toString());\r\n } else {\r\n let farmerId = farmerData?.['Farmer_ID'];\r\n farmerIds.push(farmerId.toString());\r\n this.selectedFarmersLandList?.forEach((x) => {\r\n farmerIds.push(x.farmer_Id?.toString());\r\n });\r\n }\r\n\r\n let villageCodes = [];\r\n villageCodes.push(this.selectedVillageCode.toString());\r\n let body = {\r\n farmerId: farmerIds,\r\n villageCode: villageCodes,\r\n };\r\n this.loader.start();\r\n this.farmerAppSer.GetFarmerLandByFarmerIds(body).subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.length) {\r\n this.landIDList = this.transformLandIDData(data);\r\n return;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n //this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Cannot Get Farmer lands for Selected Village.' });\r\n },\r\n });\r\n }\r\n\r\n getAllOutletData(villageCode: any) {\r\n this.loader.start();\r\n this.farmerAppSer.GetAllOutletDetails(villageCode).subscribe((res) => {\r\n of(...res)\r\n .pipe(\r\n groupBy((p: any) => p.canal),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ canal: arr[0], data: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n this.loader.close();\r\n this.canalOutletList = p;\r\n if (this.applicationId) {\r\n this.onCanalOutletSelected({\r\n value: this.watercourseApplicatonForm.controls.canal.value,\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n onCanalOutletSelected(event) {\r\n let selected = event.value;\r\n this.outletTypeList = [];\r\n let selectedAppData = this.canalOutletList?.filter(\r\n (d) => d.canal === selected\r\n )[0].data;\r\n this.outletTypeList = selectedAppData;\r\n if (!this.applicationId) {\r\n if (\r\n this.selectedWatersourceType == 'Canal' ||\r\n this.selectedWatersourceType == 'STP'\r\n ) {\r\n this.landIDList = this.selectedLandIdList?.filter(\r\n (x) => x.Village_Code == this.outletTypeList[0].villageCode\r\n );\r\n } else {\r\n this.landIDList = this.selectedLandIdList;\r\n }\r\n }\r\n }\r\n\r\n transformLandIDData(inputData) {\r\n return inputData?.map((r) => {\r\n return {\r\n ...r,\r\n displayName:\r\n 'Village Name:' +\r\n (r.VillageName ? r.VillageName : this.selectedVillageName) +\r\n ' - Killa No:' +\r\n ((r.Killa_No ? r.Killa_No : r.killaNo)\r\n ? r.Killa_No\r\n ? r.Killa_No\r\n : r.killaNo\r\n : r.KillaNo) +\r\n ' - Morabba No:' +\r\n ((r.Morabba_No ? r.Morabba_No : r.morabbaNo)\r\n ? r.Morabba_No\r\n ? r.Morabba_No\r\n : r.morabbaNo\r\n : r.MorabbaNo),\r\n };\r\n });\r\n }\r\n\r\n get watercourseFormControls() {\r\n return this.watercourseApplicatonForm.controls;\r\n }\r\n\r\n onWaterSourceTypeSelected(event) {\r\n this.selectedWatersourceType = event.value;\r\n // this.componentSelected.Scheme_ID = '';\r\n // this.componentSelected.component = '';\r\n let selectedWaterSourceData = this.waterSourceTypeList.filter(\r\n (d) => d.waterSource === this.selectedWatersourceType\r\n )[0].component;\r\n this.componentList = selectedWaterSourceData\r\n .map((d) => {\r\n let keys = ['MI', 'Solar', 'Pond', 'Water_Course'];\r\n let filtered = keys.filter((r) => d[r] === true);\r\n return { component: filtered.join('+'), Scheme_ID: d.Scheme_ID };\r\n })\r\n .filter((r) => r.component && r.Scheme_ID);\r\n console.log('componentList', this.componentList);\r\n }\r\n\r\n onComponentSelected(event) {\r\n let selected = event.value;\r\n this.componentSelected = selected;\r\n console.log('componentSelected', this.componentSelected);\r\n }\r\n\r\n addFarmersInGroup() {\r\n // this.bankAccount = {};\r\n // this.submitted = false;\r\n this.addFarmerGroupDialog = true;\r\n }\r\n\r\n openPreviousConsent(url) {\r\n window.open(url, '_blank');\r\n }\r\n\r\n downloadConsent() {\r\n window.open('/assets/consent.pdf', '_blank');\r\n }\r\n\r\n editFarmersInGroup(ele) {\r\n this.addFarmerGroupDialog = true;\r\n }\r\n\r\n openNew() {\r\n // this.bankAccount = {};\r\n // this.submitted = false;\r\n this.miApplicatonForm.reset();\r\n this.getFarmerLandByFarmerIds();\r\n this.addBankDialog = true;\r\n }\r\n\r\n onCapacityOfPumpSelected(event) {\r\n if (!this.solarApplicatonForm.controls.controlType.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - controlType Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pump.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pump Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pumpType.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pumpType Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.pumpCapacity.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - pumpCapacity Cant be Empty',\r\n });\r\n return;\r\n } else if (!this.solarApplicatonForm.controls.landId.value) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! SOLAR FORM - landId Cant be Empty',\r\n });\r\n }\r\n\r\n this.validateAndGetSolarVendors();\r\n }\r\n\r\n getBankListOfFarmer() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let appNo = farmerData?.['Farmer_ID'];\r\n this.loader.start();\r\n this.productService.getBankDetails(appNo).subscribe((res) => {\r\n this.loader.close();\r\n this.bankAccountListForEditApp = res.map((r) => {\r\n return { ...r, displayName: r.Account_NO + ' - ' + r.Bank_NAME };\r\n });\r\n });\r\n }\r\n\r\n getSolarMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getSolarMaster().subscribe({\r\n next: (data) => {\r\n if (data) {\r\n this.loader.close();\r\n this.solarMasterData = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n\r\n validateAndGetSolarVendors() {\r\n if (\r\n this.solarApplicatonForm.controls.controlType.value &&\r\n this.solarApplicatonForm.controls.pump.value &&\r\n this.solarApplicatonForm.controls.pumpType.value &&\r\n this.solarApplicatonForm.controls.pumpCapacity.value\r\n )\r\n this.getPrimarySolarVendors();\r\n }\r\n\r\n getPrimarySolarVendors() {\r\n this.primarySolarVendorList = [];\r\n\r\n let solarMasteredFilteredData = this.getFarmerShare();\r\n if (solarMasteredFilteredData) {\r\n this.solarApplicatonForm.patchValue({\r\n farmerShare: solarMasteredFilteredData.Farmers_Share,\r\n });\r\n this.solarApplicatonForm.patchValue({\r\n solarId: solarMasteredFilteredData.Solar_ID,\r\n });\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getPrimarySolarVendors(solarMasteredFilteredData.Solar_ID)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.primarySolarVendorList = data;\r\n if (this.applicationId) {\r\n this.onPrimarySolarVendorChange({\r\n value: this.selectedPrimarySolarVendor,\r\n });\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Solar ID Not Found For selected Combination',\r\n });\r\n }\r\n }\r\n\r\n onPrimarySolarVendorChange(event) {\r\n this.selectedPrimarySolarVendor = event.value;\r\n let solarMasteredFilteredData = this.getFarmerShare();\r\n console.log(this.primarySolarVendorList);\r\n let selectedPrimaryVendor = this.primarySolarVendorList.filter((vendor) => {\r\n return vendor.Primary_Vendor === event.value;\r\n });\r\n if (selectedPrimaryVendor.length) {\r\n this.getSecondarySolarVendors(selectedPrimaryVendor[0].pid);\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'PID value is unknown for Selcted Primary Vendor, Hence Secondary Vendor is not known',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n getSecondarySolarVendors(solarId: any) {\r\n this.loader.start();\r\n this.farmerAppSer.getSecondarySolarVendors(solarId).subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.secondarySolarVendorList = data;\r\n if (this.selectedSecondarySolarVendor) {\r\n let selectedSolarVendor = this.secondarySolarVendorList.filter(\r\n (x) => {\r\n return x.Secondary_Vendor === this.selectedSecondarySolarVendor;\r\n }\r\n );\r\n this.selectedSecondarySolarVendorId = selectedSolarVendor[0].sid;\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n\r\n onSecondarySolarVendorChange(event) {\r\n this.selectedSecondarySolarVendor = event.value;\r\n let selectedSolarVendor = this.secondarySolarVendorList.filter((x) => {\r\n return x.Secondary_Vendor === this.selectedSecondarySolarVendor;\r\n });\r\n this.selectedSecondarySolarVendorId = selectedSolarVendor[0].sid;\r\n }\r\n\r\n getFarmerShare() {\r\n return this.solarMasterData.filter(\r\n (d: any) =>\r\n d.Pump_Controler_Type ===\r\n this.solarApplicatonForm.value['controlType'] &&\r\n d.Pump_Capacity === this.solarApplicatonForm.value['pumpCapacity'] &&\r\n d.Pump_Category === this.solarApplicatonForm.value['pumpType'] &&\r\n d.Pump_Type === this.solarApplicatonForm.value['pump']\r\n )[0];\r\n }\r\n\r\n onSolarLandIdSelected(event) { }\r\n\r\n get solarApplicatonFormControls() {\r\n return this.solarApplicatonForm.controls;\r\n }\r\n\r\n onCoverageAreaSelected(event) {\r\n this.coverageAreaSelected = event.value;\r\n this.onFarmPondApplicatonForm.patchValue({\r\n topSize: this.coverageAreaSelected.Top_Size,\r\n bottomSize: this.coverageAreaSelected.Bottom_Size,\r\n depth: this.coverageAreaSelected.Depth,\r\n waterCapacity: this.coverageAreaSelected.Water_Capacity,\r\n tenativeCost: this.coverageAreaSelected.Total_Cost,\r\n tankId: this.coverageAreaSelected.Tank_ID,\r\n });\r\n }\r\n\r\n getAllTank() {\r\n this.loader.start();\r\n this.farmerAppSer.getAllTank().subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.tankListMaster = data;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n console.log(err);\r\n },\r\n });\r\n }\r\n\r\n get farmPondApplicatonFormControls() {\r\n return this.onFarmPondApplicatonForm.controls;\r\n }\r\n\r\n deleteProduct(ele) {\r\n this.loader.start();\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n this.loader.close();\r\n this.miDetailsList = this.miDetailsList.filter(\r\n (val) => val.landId !== ele.landId\r\n );\r\n },\r\n });\r\n }\r\n\r\n editProduct(ele) {\r\n this.miApplicatonForm.reset();\r\n this.miApplicatonForm.patchValue({\r\n landId: ele.landId,\r\n // landId: this.landIDList.filter(r => r.Land_ID === ele.landId)[0].displayName,\r\n mi: ele.mi,\r\n vendor: ele.vendorId,\r\n });\r\n this.addBankDialog = true;\r\n }\r\n\r\n onBankAccountSelected(event) {\r\n this.bankAccountSelected = event.value;\r\n }\r\n\r\n getPastSubsidiesByFarmerId() {\r\n this.loader.start();\r\n if (this.farmerId) {\r\n this.ofService\r\n .GetFarmerPastSubsidyByFarmerId(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.farmerPreviousSubsidies = data;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getWorkTypeMasterData() {\r\n this.farmerAppSer.GetWorktypeMaster().subscribe((res) => {\r\n this.workTypeMasterList = res;\r\n });\r\n }\r\n\r\n resetApplication() {\r\n this.solarApplicatonForm.reset();\r\n this.onFarmPondApplicatonForm.reset();\r\n this.miDetailsList = [];\r\n }\r\n\r\n getVillageData() {\r\n this.loader.start();\r\n this._personalDetalSer.getVillageMatserData().subscribe((res) => {\r\n this.loader.close();\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList];\r\n if (!window.sessionStorage.getItem('villageMaster')) {\r\n window.sessionStorage.setItem('villageMaster', JSON.stringify(res));\r\n }\r\n });\r\n console.log(this.villageList);\r\n }\r\n\r\n\r\n postFarmersRegistrationDataForChangeReq(farmersApplicationToSubmit) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .changeReqSubmitApplication(farmersApplicationToSubmit)\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.startsWith('S:')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.showEditAppDetailsCard = false;\r\n this.resetApplication();\r\n // setTimeout(() => {\r\n // this.router.navigate(['dashboard']);\r\n // }, 1000);\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Application not saved.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onFarmersApplicationFormSubmit() {\r\n // console.log(\"miDetailsList\", this.miDetailsList, this.miDetailsList.length == 0);\r\n // console.log(\"componentSelected\", this.componentSelected);\r\n // console.log(\"coverageAreaSelected\", this.coverageAreaSelected['Tank_ID'] );\r\n // console.log(\"coverageAreaSelected\", this.coverageAreaSelected);\r\n // console.log(\"bankAccountSelected\", this.bankAccountSelected);\r\n // console.log(\"solarApplicatonForm\", this.solarApplicatonForm.value)\r\n\r\n // check validations\r\n if (this.componentSelected.component.includes('MI')) {\r\n if (this.miDetailsList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! MI list is empty',\r\n detail: 'Please Add MI details first',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n if (this.componentSelected.component.includes('Pond')) {\r\n if (this.onFarmPondApplicatonForm.invalid) {\r\n this.isSubmittedPondApplicatonForm = true;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Fill Pond Application Form Properly.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n if (this.componentSelected.component.includes('Solar')) {\r\n if (this.solarApplicatonForm.invalid) {\r\n this.isSubmittedSolarApplicatonFrom = true;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Fill Solar Application Form Properly.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n //gettting primary solar vendor Id\r\n let filteredPrimarySolarVendor: any = this.primarySolarVendorList.filter(\r\n (x) => x.Primary_Vendor === this.selectedPrimarySolarVendor\r\n );\r\n\r\n //Populating Water\r\n let waterCouseDetail = [];\r\n if (\r\n this.selectedWatersourceType == 'Canal' ||\r\n this.selectedWatersourceType == 'STP'\r\n ) {\r\n if (this.watercourseApplicatonForm.invalid) {\r\n this.isSubmittedWaterCourseFrom = true;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Fill Water Course Form Properly.',\r\n });\r\n return;\r\n } else {\r\n let body = {\r\n outlet_Code: this.watercourseApplicatonForm.controls.outlet.value,\r\n work_type: this.watercourseApplicatonForm.controls.workType.value,\r\n };\r\n waterCouseDetail.push(body);\r\n }\r\n }\r\n\r\n //validation for bank details\r\n if (\r\n this.bankAccountSelected == undefined ||\r\n this.bankAccountSelected == null\r\n ) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message! Invalid',\r\n detail: 'Please Select the Bank Details.',\r\n });\r\n return;\r\n }\r\n\r\n //Validation for Group: Consent Form Path shouldnt be null\r\n if (this.applicationSelected === 'Group') {\r\n if (!this.consentUploadPath) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please upload Consent Form',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n //Validate if Total subsidy area is less than 12.5\r\n let totalSubsidyArea = 0;\r\n this.miDetailsList.forEach((mi) => {\r\n totalSubsidyArea = totalSubsidyArea + Number(mi.totalArea);\r\n });\r\n this.farmerPreviousSubsidies.forEach((subsidy) => {\r\n if (subsidy.DiffYear < 8) {\r\n totalSubsidyArea = totalSubsidyArea + Number(subsidy.Area);\r\n }\r\n });\r\n //For Group Application, the total max subsidy allowed is calculated by No. of Farmer in Group Multiplied by '12.5' and Subtracting farmer previous subsidies from last 8 years\r\n if (this.applicationSelected === 'Group') {\r\n let maxSubsidyAreaForGroup = this.totalNumberOfFarmersInGroup * 12.5;\r\n if (maxSubsidyAreaForGroup > 0) {\r\n if (totalSubsidyArea > maxSubsidyAreaForGroup) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Total Area Eligible for subsidy should be Less than ' +\r\n Number(maxSubsidyAreaForGroup) +\r\n 'Acre .For ' +\r\n this.totalNumberOfFarmersInGroup +\r\n 'Farmers (Group Application). You are applying for ' +\r\n Number(totalSubsidyArea) +\r\n ' Acre. \\n\\n Contact Department',\r\n });\r\n return;\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Max SubSidy Area Cant be calculated for Group. Contact Department',\r\n });\r\n return;\r\n }\r\n } else {\r\n if (totalSubsidyArea > 12.5) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Total Area Eligible for subsidy should be Less than 12.5 Acre. You are applying for ' +\r\n Number(totalSubsidyArea) +\r\n ' Acre. \\n\\n Contact Department',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n let totalArea = 0;\r\n this.miDetailsList.forEach((mi) => {\r\n totalArea = totalArea + Number(mi.totalArea);\r\n });\r\n //Validation for 'MI' if total area is less than 1 acre\r\n if (Number(totalArea) < 1 && Number(totalArea) != 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Data error! Total Area for MI form cannot be less than 1 Acre. ' +\r\n Number(totalArea),\r\n });\r\n return;\r\n }\r\n //Validation for 'Pond' if total area is less than 5 acre\r\n if (this.componentSelected.component.includes('Pond')) {\r\n if (Number(totalArea) < 5 && Number(totalArea) != 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Data error! Total Area for Pond form cannot be less than 5 Acre.Current Total Area is ' +\r\n Number(totalArea),\r\n });\r\n return;\r\n }\r\n }\r\n\r\n\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let appNo = farmerData?.['Farmer_ID'];\r\n let farmersApplicationToSubmit = {\r\n apP_ID: this.applicationId ? this.applicationId : '',\r\n farmer_ID: appNo,\r\n applicant_type: this.applicationSelected,\r\n scheme_Code: this.componentSelected.Scheme_ID,\r\n user_ID: sessionStorage.getItem('abyUserID')\r\n ? sessionStorage.getItem('abyUserID')\r\n : sessionStorage.getItem('userID'),\r\n is_Atal:\r\n sessionStorage.getItem('isAtalBhujal') === '1' ||\r\n sessionStorage.getItem('isVendor') === '1'\r\n ? true\r\n : false,\r\n netWork_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n consentPath: this.consentUploadPath ? this.consentUploadPath : '',\r\n group_Datas: this.selectedGroupFarmersLandList,\r\n water_Course_Datas: waterCouseDetail,\r\n onFarm_Pond_Datas: this.componentSelected.component.includes('Pond')\r\n ? [\r\n {\r\n land_ID: this.onFarmPondApplicatonForm.value['landId'],\r\n tank_id: this.onFarmPondApplicatonForm.value['tankId'],\r\n },\r\n ]\r\n : [],\r\n solar_Pump_Datas: this.componentSelected.component.includes('Solar')\r\n ? [\r\n {\r\n solar_ID: +this.solarApplicatonForm.value['solarId'],\r\n solar_Vendor_id: filteredPrimarySolarVendor[0].pid,\r\n solar_Vendor_Secondry_ID: this.selectedSecondarySolarVendorId,\r\n land_ID: this.solarApplicatonForm.controls.landId.value,\r\n },\r\n ]\r\n : [],\r\n new_MI_Datas: this.miDetailsList.map((r) => {\r\n return {\r\n // new_MI_System: this.miList.filter(\r\n // (res) => res.Program_Name === r.mi\r\n // )[0]?.Program_Id,\r\n land_ID: r.landId,\r\n new_MI_System: r.mi,\r\n vendor_Code: r.vendorId?.Vendor_Code\r\n ? r.vendorId?.Vendor_Code\r\n : r.vendorCode,\r\n };\r\n }),\r\n bank_Datas: [\r\n {\r\n bank_Data: this.bankAccountSelected?.toString(),\r\n },\r\n // {\r\n // \"farmer_ID\": appNo,\r\n // \"bank_ID\": this.bankAccountSelected\r\n // }\r\n ],\r\n };\r\n\r\n this.postFarmersRegistrationDataForChangeReq(farmersApplicationToSubmit);\r\n }\r\n\r\n saveFarmerToGroup() {\r\n this.selectedFarmersLandList = [];\r\n this.selectedGroupFarmersLandList = [];\r\n console.log(this.selectedFarmerLandDetails);\r\n if (this.applicationSelected === 'Group') {\r\n let farmerIds = [];\r\n this.selectedFarmerLandDetails.forEach((farmer) => {\r\n farmerIds.push(farmer.Farmer_ID.toString());\r\n });\r\n this.totalNumberOfFarmersInGroup = farmerIds.length;\r\n if (farmerIds.length) {\r\n this.loader.start();\r\n this.ofService\r\n .GetFarmerPastSubsidyByMultipleFarmerIds(farmerIds)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.farmerPreviousSubsidies = data;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n });\r\n },\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Group-Farmers Previous Subsidies not Fetched.',\r\n });\r\n return;\r\n }\r\n }\r\n this.selectedFarmerLandDetails.forEach((r) => {\r\n r.landDetails.forEach((element) => {\r\n // this.selectedFarmersLandList.push({\r\n // \"farmer_Id\": element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n // \"landID\": element.Land_ID ? element.Land_ID : element.LandID,\r\n // \"farmersName\": r.Name,\r\n // \"village\": r.vendorId ? r.venorId : r.Village_Code\r\n // })\r\n // this.selectedGroupFarmersLandList.push({\r\n // \"farmer_Id\": element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n // \"landID\": element.Land_ID ? element.Land_ID : element.LandID\r\n // })\r\n\r\n let filteredLands = this.selectedFarmersLandIdList.filter((x) => {\r\n return (\r\n x.Land_ID == (element.LandID ? element.LandID : element.Land_ID)\r\n );\r\n });\r\n\r\n if (filteredLands.length) {\r\n this.selectedFarmersLandList.push({\r\n farmer_Id: element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n landID: element.Land_ID ? element.Land_ID : element.LandID,\r\n farmersName: r.Name,\r\n village: r.vendorId ? r.venorId : r.Village_Code,\r\n });\r\n this.selectedGroupFarmersLandList.push({\r\n farmer_Id: element.Farmer_ID ? element.Farmer_ID : element.farmerId,\r\n landID: element.Land_ID ? element.Land_ID : element.LandID,\r\n });\r\n }\r\n });\r\n });\r\n this.addFarmerGroupDialog = false;\r\n }\r\n\r\n hideFarmersAddToGroupDialog() {\r\n this.addFarmerGroupDialog = false;\r\n }\r\n\r\n selectRow(checkValue, data) {\r\n if (checkValue) {\r\n let index = this.selectedFarmersLandIdList.indexOf(data);\r\n if (index == -1) {\r\n this.selectedFarmersLandIdList.push(data);\r\n }\r\n } else {\r\n let index = this.selectedFarmersLandIdList.indexOf(data);\r\n if (index !== -1) {\r\n this.selectedFarmersLandIdList.splice(index, 1);\r\n }\r\n }\r\n }\r\n\r\n selectHeaderRow(checkValue, data) {\r\n if (checkValue) {\r\n data.forEach((element) => {\r\n let index = this.selectedFarmersLandIdList.indexOf(element);\r\n if (index == -1) {\r\n this.selectedFarmersLandIdList.push(element);\r\n }\r\n });\r\n } else {\r\n data.forEach((element) => {\r\n let index = this.selectedFarmersLandIdList.indexOf(element);\r\n if (index !== -1) {\r\n this.selectedFarmersLandIdList.splice(index, 1);\r\n }\r\n });\r\n }\r\n }\r\n\r\n saveProduct() {\r\n // mi: [''],\r\n // vendor: [''],\r\n // landId: ['']\r\n\r\n let vendorName = this.miVendorList.filter(\r\n (x) =>\r\n x.Vendor_Code == this.miApplicatonForm.value['vendor']['Vendor_Code']\r\n )[0]?.Name;\r\n let filteredLand = this.landIDList.filter((x) => {\r\n return x.LandID == this.miApplicatonForm.value['landId'];\r\n });\r\n console.log('Filtered Land', filteredLand);\r\n let miFarmValue = {\r\n mi: this.miApplicatonForm.value['mi'],\r\n vendor: vendorName,\r\n landId: this.miApplicatonForm.value['landId'],\r\n vendorId: this.miApplicatonForm.value['vendor'],\r\n landData: filteredLand[0]?.displayName,\r\n totalArea: filteredLand[0]?.TotalArea,\r\n };\r\n\r\n this.miDetailsList = this.miDetailsList.filter(\r\n (val) => val.landId !== miFarmValue.landId\r\n );\r\n\r\n this.miDetailsList.push(miFarmValue);\r\n this.miApplicatonForm.reset();\r\n this.addBankDialog = false;\r\n }\r\n\r\n hideDialog() {\r\n this.miApplicatonForm.reset();\r\n this.addBankDialog = false;\r\n }\r\n\r\n onVendorSelect(event) { }\r\n\r\n filterMIVendor(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.miVendorList.length; i++) {\r\n const vendor = this.miVendorList[i];\r\n if (vendor.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendor);\r\n }\r\n }\r\n this.filteredmiVendorList = filtered;\r\n }\r\n\r\n onSelectMI() {\r\n console.log('programId', this.selectedMI);\r\n this.selectedProgramId = this.selectedMI;\r\n this.getAllMIvenders(this.selectedMI);\r\n }\r\n\r\n getSchemeMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getSchemeMaster().subscribe((res) => {\r\n this.loader.close();\r\n this.allSchemeMaster = res;\r\n of(...res)\r\n .pipe(\r\n groupBy((p: any) => p.Applicant_type),\r\n mergeMap((group$) =>\r\n group$.pipe(reduce((acc, cur) => [...acc, cur], [`${group$.key}`]))\r\n ),\r\n map((arr) => ({ type: arr[0], data: arr.slice(1) })),\r\n toArray()\r\n )\r\n .subscribe((p) => {\r\n this.schemeMasterList = p;\r\n });\r\n });\r\n }\r\n\r\n\r\n getAllMIvenders(programId) {\r\n this.loader.start();\r\n this.farmerAppSer\r\n .getAllMIvenders(programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n console.log('All MI Vendor Data', res);\r\n this.miVendorList = res;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Category not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getComponentMaster() {\r\n this.loader.start();\r\n this.farmerAppSer.getComponentMaster().subscribe((res) => {\r\n this.loader.close();\r\n console.log('componentMaster', res);\r\n this.componentMaster = res;\r\n this.miList = res;\r\n });\r\n }\r\n\r\n onPondLandIdSelected(event) {\r\n this.selectedPondLand = event.value;\r\n }\r\n\r\n populateForm(appId) {\r\n this.loader.start();\r\n this._dashboardService\r\n .getApplicationByAppId(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.APP_ID) {\r\n //Populating Farmer Application Form\r\n if (data.FarmerLand) {\r\n this.landIDList = [];\r\n this.allLandsOfApplication = data.FarmerLand;\r\n this.landIDList = this.transformLandIDData(data.FarmerLand);\r\n console.log(this.landIDList)\r\n }\r\n if (data.Scheme_ID) {\r\n this.selectedSchemeId = data.Scheme_ID;\r\n const populatedScheme = this.allSchemeMaster.filter(\r\n (x) => x.Scheme_ID === data.Scheme_ID\r\n );\r\n\r\n this.onApplicationTypeSelected({\r\n value: populatedScheme[0].Applicant_type,\r\n });\r\n this.onVillageSelect({\r\n Code: data.VillageData[0].VillageCode,\r\n Name: data.VillageData[0].VillageName,\r\n });\r\n this.onWaterSourceTypeSelected({\r\n value:\r\n this.waterSourceTypeList[populatedScheme[0].Water_Source - 1]\r\n .waterSource,\r\n });\r\n const populatedComponent = this.componentList.filter(\r\n (x) => x.Scheme_ID === data.Scheme_ID\r\n );\r\n this.onComponentSelected({ value: populatedComponent[0] });\r\n console.log(\"selectedWatersourceType\", this.selectedWatersourceType)\r\n console.log(\"componentSelected\", this.componentSelected)\r\n }\r\n if (data.ConsentPath) {\r\n this.consentUploadPath = data.ConsentPath;\r\n }\r\n //populating Farmer Details\r\n if (data.Group_Datas) {\r\n data.Group_Datas.forEach((x) => {\r\n x.landDetails = data.FarmerLand.filter((land) => {\r\n return land.farmerId === x.Farmer_ID;\r\n });\r\n this.selectedFarmerLandDetails.push(x);\r\n });\r\n data.GroupTableData.forEach((x) => {\r\n this.selectedFarmersLandIdList.push({ Land_ID: x.LandID });\r\n });\r\n this.saveFarmerToGroup();\r\n // this.selectedFarmersLandList = data.GroupTableData;\r\n }\r\n\r\n //Populating MI Data\r\n this.miDetailsList = [];\r\n if (data.New_MI_Datas) {\r\n data.New_MI_Datas.forEach((x) => {\r\n let filteredList = this.miVendorList.filter((vendor) => {\r\n return vendor.Name == x.miVendorName;\r\n });\r\n this.miSelectedVendor = filteredList[0];\r\n\r\n\r\n let component = 0;\r\n this.componentMaster.forEach((val) => {\r\n if (x.programName == val.Program_Name) {\r\n component = val.Program_Id;\r\n }\r\n })\r\n\r\n let body = {\r\n mi: component,\r\n vendor: x.miVendorName,\r\n landId: x.LandID,\r\n vendorCode: x.VendorCode,\r\n vendorObject: filteredList[0],\r\n landData: x.landData,\r\n totalArea: x.totalArea,\r\n };\r\n this.miDetailsList.push(body);\r\n });\r\n }\r\n\r\n //populating Bank\r\n this.onBankAccountSelected({\r\n value: data.FarmerBank?.accoNumber?.toString(),\r\n });\r\n\r\n //Populating Pond Farm\r\n if (data.OnFarm_Pond_Datas) {\r\n // let selectedLand = this.landIDList.filter((x) => {\r\n // return x.Land_ID === data.OnFarm_Pond_Datas[0].LandID;\r\n // });\r\n let selectedLand = data.OnFarm_Pond_Datas;\r\n this.onPondLandIdSelected({ value: selectedLand[0] });\r\n this.onFarmPondApplicatonForm.controls.landId.setValue(\r\n selectedLand[0].Land_ID\r\n );\r\n\r\n let filteredTankMaster = this.tankListMaster.filter((x) => {\r\n return (\r\n x.Coverage_Area == data.OnFarm_Pond_Datas[0].CoverageArea\r\n );\r\n });\r\n this.onCoverageAreaSelected({ value: filteredTankMaster[0] });\r\n }\r\n\r\n //populating Solar Form\r\n if (data.Solar_Pump_Datas) {\r\n // let selectedLand = this.landIDList.filter((x) => {\r\n // return x.Land_ID === data.Solar_Pump_Datas[0].LandID;\r\n // });\r\n let selectedLand = data.Solar_Pump_Datas;\r\n this.solarApplicatonForm.controls.landId.setValue(\r\n selectedLand[0].Land_ID\r\n );\r\n this.solarApplicatonForm.controls.controlType.setValue(\r\n data.Solar_Pump_Datas[0].controlerType\r\n );\r\n this.solarApplicatonForm.controls.pump.setValue(\r\n data.Solar_Pump_Datas[0].type\r\n );\r\n this.solarApplicatonForm.controls.pumpType.setValue(\r\n data.Solar_Pump_Datas[0].pumpCategory\r\n );\r\n this.solarApplicatonForm.controls.pumpCapacity.setValue(\r\n data.Solar_Pump_Datas[0].pumpCapacity\r\n );\r\n this.validateAndGetSolarVendors();\r\n this.selectedPrimarySolarVendor =\r\n data.Solar_Pump_Datas[0].primaryVendor;\r\n this.selectedSecondarySolarVendor =\r\n data.Solar_Pump_Datas[0].secondaryVendor;\r\n\r\n this.solarApplicatonForm.controls.farmerShare.setValue(\r\n data.Solar_Pump_Datas[0].farmerShare\r\n );\r\n }\r\n\r\n if (data?.Water_Course_Datas) {\r\n this.watercourseApplicatonForm.controls.canal.setValue(data?.Water_Course_Datas[0]?.Canal_Outlet_Name);\r\n this.watercourseApplicatonForm.controls.outlet.setValue(data?.Water_Course_Datas[0]?.Outlet_Code);\r\n this.watercourseApplicatonForm.controls.workType.setValue(data?.Water_Course_Datas[0]?.Work_type);\r\n console.log(this.watercourseApplicatonForm.controls)\r\n }\r\n\r\n\r\n\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Requested Application Not Found.',\r\n });\r\n return;\r\n }\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Requested Application Not Found.',\r\n });\r\n return;\r\n },\r\n });\r\n }\r\n\r\n //-------------------------------------------------------------------------------------\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n
{{'FARMERS_APPLICATION_CHANGES_REQUEST'| translate}}
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n
{{'FARMERS_DETAILS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_NAME_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'FARMERS_PHOTO_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'FATHERS_NAME_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'MOTHERS_NAME_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'DATE_OF_BIRTH_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'EMAIL_ID_IS_REQUIRED'| translate}}
\r\n
{{'EMAIL_IS_INVALID'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{farmersDetailsForm.controls.mobileNo.value}}\r\n
\r\n\r\n
\r\n
{{'MOBILE_NO_IS_REQUIRED'| translate}}
\r\n\r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS'| translate}}\r\n
\r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS'| translate}}\r\n
\r\n
{{'MBILE_NO_SHOULD_CONTAIN'| translate}}\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'ADDRESS_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_NAME_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'PINCODE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'AADHAR_NO_IS_REQUIRED'| translate}}
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS'| translate}}\r\n
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS'| translate}}\r\n
\r\n
{{'AADHAR_NO_SHOULD_CONTAIN_ONLY_DIGITS'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'AADHAR_PHOTO_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'PPP_ID_IS_REQUIRED'| translate}}
\r\n
{{'PPP_ID_SHOULD_BE_OF_8DIGITS'| translate}}
\r\n
{{'PPP_ID_SHOULD_BE_OF_8DIGITS'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'PPP_PHOTO_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_BANK_ACCOUNTS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'ACCOUNT_HOLDERS_NAME'| translate}}\r\n \r\n \r\n \r\n {{'BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'ACCOUNT_NO'| translate}}\r\n \r\n \r\n \r\n {{'IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'ACTIVE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.accountHolderName}}\r\n {{product.bankName}}\r\n {{product.accountNumber}}\r\n {{product.ifscCode}}\r\n {{product.Active}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{bankAccountList ? bankAccountList.length : 0 }} {{'BANK_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
{{'MANAGE_LAND_DETAILS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'LAND_ID'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'MORABBA_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'KILLA_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Land_ID}}\r\n {{product.Total_Area}}\r\n {{product.Morabba_No}}\r\n {{product.Killa_No}}\r\n {{product.VillageName}}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{lstFarmerLandModel ? lstFarmerLandModel.length : 0 }} {{'LAND_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
{{'MANAGE_FARM_MI'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'LAND_DETAILS'| translate}}\r\n \r\n \r\n \r\n {{'YEAR_SUBSIDY'| translate}}\r\n \r\n \r\n \r\n {{'BALANCE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'DEPARTMENT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.landDetailsToDisplay}}\r\n {{product.Year_subsidy}}\r\n {{product.Bal_Area}}\r\n {{product.Dept_Subsidy}}\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{lstOnFarmMiModel ? lstOnFarmMiModel.length : 0 }} {{'LAND_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
{{'EDIT_APP_DETAILS'| translate}}
\r\n
\r\n
{{'FARMERS_APPLICATION'| translate}}
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_FARMERS_LIST'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n {{'FARMER_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMERS_NAME'| translate}}\r\n \r\n \r\n \r\n {{'LAND_ID_'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {{product.farmer_Id}}\r\n {{product.farmersName}}\r\n {{product.landID}}\r\n {{product.village}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{selectedFarmersLandList ? selectedFarmersLandList.length : 0 }} {{'FARMERS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
{{'MI_FORM'}}
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_MI_LIST'}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'COMPONENT'| translate}}\r\n \r\n \r\n \r\n {{'VENDOR'| translate}}\r\n \r\n \r\n \r\n {{'LAND_ID_'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA_ACRE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.mi}}\r\n {{product.vendor}}\r\n {{product.landData}}\r\n {{product.totalArea}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{miDetailsList ? miDetailsList.length : 0 }} {{'COMPONENT_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
{{'POND_FORM'| translate}}
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'LAND_ID_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'SIZE_COVERAGE_AREA_IA_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
{{'SOLAR_PUMP_DETAIL'}}
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'LAND_ID_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
{{'WATER_COURSE_FORM'| translate}}
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'CANAL_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'OUTLET_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'WORKTYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'SELECT_CHECKBOX'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
{{'SELECT_BENEFICIARY_BANK'| translate}}
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n {{'NAME_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'NAME_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'FARMERS_PHOTO_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MORABBA_NUMBER_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'KILLA_NUMBER_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'KANNALS_IS_REQUIRED'| translate}}\"
\r\n
{{'KANAL_CANNOT_BE_GREATER'| translate}}.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MARLAS_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LATITUDE_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LONGITUDE_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'| translate}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'LAND_DOCUMENT_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n\r\n
\r\n
{{'LAND_DETAILS_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'COMPONENT_MASTER_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n\r\n
\r\n
{{'DEPARTMANT_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'YEAR_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'BALANCE_AREA_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n {{'DEPARTMENT'| translate}}\r\n {{'AREA'| translate}}\r\n {{'SUBSIDY_YEAR'| translate}}\r\n {{'AADHAR_NUMBER'| translate}}\r\n {{'SYSTEM'| translate}}\r\n {{'LAND_DETAIL'| translate}}\r\n {{'DIFF_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{subsidy.AppId}}\r\n {{subsidy.Department}}\r\n {{subsidy.Area | number : '1.2-2'}}\r\n {{subsidy.SubsidyYear}}\r\n {{subsidy.AadharNo}}\r\n {{subsidy.System}}\r\n {{subsidy.LandDetail}}\r\n {{subsidy.DiffYear}}\r\n \r\n \r\n \r\n \r\n {{'NO_RECORDS_TO_SHOW'| translate}}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'NAME'| translate}} \r\n \r\n {{'FATHER_NAME'| translate}} \r\n \r\n {{'MOTHER_NAME'| translate}} \r\n \r\n {{'PPP_ID'| translate}} \r\n \r\n {{'AADHAR'| translate}} \r\n \r\n {{'VILLAGE_CODE'| translate}} \r\n \r\n {{'MOBILE'| translate}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Name}}\r\n {{product.Father_name}}\r\n {{product.Mother_Name}}\r\n {{product.PPP_ID}}\r\n {{product.Aadhar_No}}\r\n {{product.Village_Code}}\r\n {{product.Mobile}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'LAND_ID'| translate}} \r\n \r\n {{'MORABBA_NO'| translate}} \r\n \r\n {{'KILLA_NO'| translate}} \r\n \r\n {{'KANALS'| translate}} \r\n \r\n {{'VILLAGE_CODE'| translate}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{order.Land_ID}}\r\n {{order.Morabba_No}}\r\n {{order.Killa_No}}\r\n {{order.Kanals}}\r\n {{order.Village_Code}}\r\n \r\n \r\n \r\n \r\n {{'THERE_ARE_NO_LAND_FOR_THIS_FARMER'| translate}}.\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport jwtDecode from 'jwt-decode';\r\nimport { MessageService } from 'primeng/api';\r\nimport { Subscription, first } from 'rxjs';\r\nimport { AppConfig } from 'src/app/models/appconfig';\r\nimport { ConfigService } from 'src/app/services/app.config.service';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n styles: [`\r\n :host ::ng-deep .p-password input {\r\n width: 100%;\r\n padding:1rem;\r\n }\r\n\r\n :host ::ng-deep .pi-eye{\r\n transform:scale(1.6);\r\n margin-right: 1rem;\r\n color: var(--primary-color) !important;\r\n }\r\n\r\n :host ::ng-deep .pi-eye-slash{\r\n transform:scale(1.6);\r\n margin-right: 1rem;\r\n color: var(--primary-color) !important;\r\n }\r\n `]\r\n})\r\nexport class ForgotPasswordComponent implements OnInit, OnDestroy {\r\n public onAuthForm: FormGroup;\r\n valCheck: string[] = ['remember'];\r\n\r\n password: string;\r\n\r\n config: AppConfig;\r\n userData: any;\r\n subscription: Subscription;\r\n display: any;\r\n validationOTP: any;\r\n showPasswordsSections: boolean = false;\r\n disableUserName: boolean = false;\r\n submitted: boolean = false;\r\n\r\n constructor(\r\n private _formBuilder: FormBuilder, \r\n public configService: ConfigService, \r\n private authService: AuthenticationService, \r\n public router: Router, \r\n private service: MessageService, \r\n private cryptoJs: CryptoJsService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.onAuthForm = this._formBuilder.group({\r\n email: ['', [Validators.required]],\r\n password: ['', [Validators.required]],\r\n reEnteredPassword: ['', [Validators.required]],\r\n otp: ['', [Validators.required]],\r\n emailOtp: ['', [Validators.required]],\r\n });\r\n\r\n this.config = this.configService.config;\r\n this.subscription = this.configService.configUpdate$.subscribe(config => {\r\n this.config = config;\r\n });\r\n }\r\n\r\n changePassword() {\r\n this.submitted = true;\r\n if (this.onAuthForm.status === \"INVALID\") {\r\n return;\r\n }\r\n if (this.f.password.value !== this.f.reEnteredPassword.value) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Password Doesnt Match with Re-Enter Password.' });\r\n return;\r\n }\r\n let reqBody = {\r\n \"userName\": this.f.email.value,\r\n \"passWord\": this.cryptoJs.Encrypt(this.f.password.value),\r\n \"otp\": this.cryptoJs.Encrypt(this.f.otp.value),\r\n \"otpEmail\": this.cryptoJs.Encrypt(this.f.emailOtp.value),\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJs.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n this.authService.changePasswordForUser(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data === 'Invalid OTP!..') {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Invalid OTP' });\r\n return;\r\n }\r\n else if (data === 'Password Update Failed!.') {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Password Update Failed' });\r\n return;\r\n }\r\n else if (data === 'Updated Successfully!.') {\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: 'Password Updated Successfully.' });\r\n setTimeout(() => {\r\n this.router.navigate(['/login']);\r\n }, 2000);\r\n }\r\n },\r\n error: (res) => {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! userid or password not correct.' });\r\n\r\n }\r\n });\r\n }\r\n\r\n get f() {\r\n return this.onAuthForm.controls;\r\n }\r\n\r\n onOTPClick() {\r\n if (!this.f.email.value) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'UserName/Email Cant be Empty.' });\r\n return;\r\n }\r\n this.f.otp.setValue('');\r\n \r\n let reqBody = {\r\n UserName: this.f.email.value\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n this.authService.getOTPforUsers(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n let encResp = JSON.parse(resp as string);\r\n let data = this.cryptoJs.DecryptToken(encResp.data);\r\n // let val1 = JSON.parse(data['data']);\r\n\r\n if(data == 'OTP sent on SMS and Email Id' || data == 'OTP already sent on SMS and Email Id'){\r\n this.service.add({ \r\n severity: 'success', \r\n summary: 'Success Message', \r\n detail: data.toString() \r\n });\r\n\r\n this.disableOTPButton(3);\r\n this.disableUserName = true;\r\n this.showPasswordsSections = true;\r\n }else {\r\n this.service.add({ \r\n severity: 'info', \r\n summary: 'Info Message', \r\n detail: data.toString() \r\n });\r\n } \r\n },\r\n error: (err) => {\r\n this.service.add({ \r\n severity: 'error', \r\n summary: 'Error Message', \r\n detail: `Error! OTP not generated. ${err}` });\r\n }\r\n });\r\n }\r\n\r\n disableOTPButton(minute) {\r\n // let minute = 1;\r\n let seconds: number = minute * 60;\r\n let textSec: any = \"0\";\r\n let statSec: number = 60;\r\n\r\n const prefix = minute < 10 ? \"0\" : \"\";\r\n\r\n const timer = setInterval(() => {\r\n seconds--;\r\n if (statSec != 0) statSec--;\r\n else statSec = 59;\r\n\r\n if (statSec < 10) {\r\n textSec = \"0\" + statSec;\r\n } else textSec = statSec;\r\n\r\n this.display = `${prefix}${Math.floor(seconds / 60)}:${textSec}`;\r\n\r\n if (seconds == 0) {\r\n clearInterval(timer);\r\n }\r\n }, 1000);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \"Image\"\r\n\r\n\r\n
{{'WELCOME'| translate}}
\r\n {{'RESET_YOUR_PASSWORD_HERE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n\r\n
\r\n
\r\n {{'YOU_CAN_REQUEST_OTP_IN'| translate}} {{display}} {{'MINUTES'| translate}}\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
{{'MOBILE_OTP_IS_REQ'| translate}}
\r\n
\r\n \r\n \r\n
\r\n
{{'EMAIL_OTP_IS_REQ'| translate}}
\r\n
\r\n \r\n \r\n
\r\n
{{'PASSWORD_IS_REQ'| translate}}
\r\n
\r\n \r\n \r\n
\r\n
{{'RE_ENTER_PASSWORD_IS_REQ'|\r\n translate}}
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Location } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-photo-gallery',\r\n templateUrl: './photo-gallery.component.html',\r\n styleUrls: ['./photo-gallery.component.scss']\r\n})\r\nexport class PhotoGalleryComponent implements OnInit {\r\n\r\n selectedLang: any;\r\n\r\n constructor(\r\n private translateService: TranslateService,\r\n private location: Location\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth'\r\n });\r\n\r\n // if (localStorage.getItem('lang')) {\r\n // this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n // this.translateService.use(this.selectedLang.code)\r\n // }\r\n }\r\n\r\n onChildValueChanged(value){\r\n // console.log(value)\r\n // if (value?.code == 'en') {\r\n // // this.lanTranslate('en')\r\n // } else if (value?.code == 'hd') {\r\n // // this.lanTranslate('hd')\r\n // }\r\n }\r\n\r\n goBack(): void {\r\n this.location.back();\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{ 'PHOTO_GALLERY' | translate }}

\r\n
\r\n
\r\n
\r\n

Available soon!

\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Location } from '@angular/common';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-video-gallery',\r\n templateUrl: './video-gallery.component.html',\r\n styleUrls: ['./video-gallery.component.scss']\r\n})\r\nexport class VideoGalleryComponent implements OnInit {\r\n\r\n selectedLang: any;\r\n\r\n videoList: { link: SafeResourceUrl; description: string, isOnLocalDev: boolean }[] = [];\r\n\r\n constructor(\r\n private translateService: TranslateService,\r\n private location: Location,\r\n private sanitizer: DomSanitizer\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth'\r\n });\r\n\r\n // if (localStorage.getItem('lang')) {\r\n // this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n // this.translateService.use(this.selectedLang.code)\r\n // }\r\n this.loadVideoList();\r\n }\r\n\r\n onChildValueChanged(value){\r\n // console.log(value)\r\n // if (value?.code == 'en') {\r\n // // this.lanTranslate('en')\r\n // } else if (value?.code == 'hd') {\r\n // // this.lanTranslate('hd')\r\n // }\r\n }\r\n\r\n goBack(): void {\r\n this.location.back();\r\n }\r\n\r\n loadVideoList() {\r\n const rawVideoList = [\r\n {\r\n link: 'https://drive.google.com/file/d/1N3vHHXLOelD-SNQbIVGmTLzEUmvPx28F/preview',\r\n description: 'Atal Bhujal Yojana, Fatehabad',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/1vvYqwnMFho_laiVNwsfoTtNPFsqoz1YJ/preview',\r\n description: 'Data Dissemination DLI#1, Gurugram & Bhiwani',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/17FUHZUCzE6_IYw_932410FYdruhcaAVs/preview',\r\n description: 'Success of Convergence, Yamunanagar',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/1vQGxQOL-inU6OGN2-yOHv2m70daInm_t/preview',\r\n description: 'DSR Video, Karnal',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/15cyvl6gHnXCMg2TEGrbqgiaP2wQy_N2X/preview',\r\n description: 'Success Story, Gurugram',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/1iIN5kHjarOqRRarIXDIYIkR5487fZeaZ/preview',\r\n description: 'Women Warrior, Yamunanagar',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/1_vIYiKe4kOEIlGV8oHTzXbdeIo70IIGo/preview',\r\n description: 'IEC Interventions, Gurugram',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/1pf-oCfNdrGLn-LvYh2onsDCfyJcxTC2G/preview',\r\n description: 'Water Conservation, Mahendragarh',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: 'https://drive.google.com/file/d/1zcBDLZ6csWx1-upqcE2Oqhse1orHlFVJ/preview',\r\n description: 'IISIF, Mahendragarh',\r\n isOnLocalDev: false\r\n },\r\n {\r\n link: '../../../assets/home/videos/Vertical Drainage Success Story - Jhajjar.mp4',\r\n description: 'Vertical Drainage Success Story - Jhajjar',\r\n isOnLocalDev: true\r\n },\r\n ]\r\n\r\n this.videoList = rawVideoList.map(video => ({\r\n link: this.sanitizer.bypassSecurityTrustResourceUrl(video.link),\r\n description: video.description,\r\n isOnLocalDev: video.isOnLocalDev\r\n }));\r\n }\r\n\r\n}\r\n\r\n","\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{ 'VIDEO_GALLERY' | translate }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {{ video.description }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\n\r\n@Component({\r\n selector: 'app-google-map',\r\n templateUrl: './google-map.component.html',\r\n styleUrls: ['./google-map.component.scss']\r\n})\r\nexport class GoogleMapComponent implements OnInit {\r\n\r\n @Input() public overlays: any = [];\r\n @Input() public options: any;\r\n\r\n // options: any;\r\n\r\n // overlays: any[];\r\n\r\n dialogVisible: boolean;\r\n\r\n markerTitle: string;\r\n\r\n selectedPosition: any;\r\n\r\n infoWindow: any;\r\n\r\n draggable: boolean;\r\n True: boolean = true;\r\n\r\n constructor(private messageService: MessageService) { }\r\n\r\n ngOnInit() {\r\n // this.options = {\r\n // center: { lat: 36.890257, lng: 30.707417 },\r\n // zoom: 12\r\n // };\r\n\r\n this.initOverlays();\r\n\r\n this.infoWindow = new google.maps.InfoWindow();\r\n }\r\n\r\n handleMapClick(event) {\r\n this.dialogVisible = true;\r\n this.selectedPosition = event.latLng;\r\n }\r\n\r\n handleOverlayClick(event) {\r\n let isMarker = event.overlay.getTitle != undefined;\r\n\r\n if (isMarker) {\r\n let title = event.overlay.getTitle();\r\n this.infoWindow.setContent('' + title + '');\r\n this.infoWindow.open(event.map, event.overlay);\r\n event.map.setCenter(event.overlay.getPosition());\r\n\r\n this.messageService.add({ severity: 'info', summary: 'Marker Selected', detail: title });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'info', summary: 'Shape Selected', detail: '' });\r\n }\r\n }\r\n\r\n addMarker() {\r\n this.overlays.push(new google.maps.Marker({ position: { lat: this.selectedPosition.lat(), lng: this.selectedPosition.lng() }, title: this.markerTitle, draggable: this.draggable }));\r\n this.markerTitle = null;\r\n this.dialogVisible = false;\r\n }\r\n\r\n handleDragEnd(event) {\r\n this.messageService.add({ severity: 'info', summary: 'Marker Dragged', detail: event.overlay.getTitle() });\r\n }\r\n\r\n initOverlays() {\r\n // if (!this.overlays || !this.overlays.length) {\r\n // this.overlays = [\r\n // new google.maps.Marker({ position: { lat: 36.879466, lng: 30.667648 }, title: \"Konyaalti\" }),\r\n // new google.maps.Marker({ position: { lat: 36.883707, lng: 30.689216 }, title: \"Ataturk Park\" }),\r\n // new google.maps.Marker({ position: { lat: 36.885233, lng: 30.702323 }, title: \"Oldtown\" }),\r\n // ];\r\n // }\r\n }\r\n\r\n zoomIn(map) {\r\n map.setZoom(map.getZoom() + 1);\r\n }\r\n\r\n zoomOut(map) {\r\n map.setZoom(map.getZoom() - 1);\r\n }\r\n\r\n clear() {\r\n this.overlays = [];\r\n }\r\n}","\r\n\r\n\r\n\r\n\r\n\r\n\r\n>\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { GrievanceRemarks, VendorDetails } from 'src/app/models/vendor-details.model';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-grievance-handler',\r\n templateUrl: './grievance-handler.component.html',\r\n styleUrls: ['./grievance-handler.component.scss']\r\n})\r\nexport class GrievanceHandlerComponent implements OnInit {\r\n @Input() finyear: string;\r\n \r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n\r\n public subActionType: string = \"Grievance Handler\";\r\n // public finYear: any;\r\n vendorCode:any;\r\n userType:any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public miCompletedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n isLoading:boolean;\r\n isSubmitted:boolean;\r\n // public selectedMICompletedFilter: null;\r\n public statusOptions = [\r\n { label: 'Active', value: 'Active' },\r\n { label: 'Closed', value: 'Closed' },\r\n // { label: 'Pending', value: 'Pending' }\r\n ];\r\n public displayDialog: boolean = false;\r\n public selectedData: any = {};\r\n public miTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Grievance Handler';\r\n miCompletedReport: MenuItem[];\r\n loading: boolean;\r\npopup:FormGroup;\r\n constructor(\r\n private reportsService: ReportsService,\r\n private formBuilder: FormBuilder,\r\n private router: Router, \r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.popup = this.formBuilder.group({\r\n ticket: [{ value: '', disabled: true }],\r\n description: ['', Validators.required],\r\n status: ['', Validators.required]\r\n\r\n });\r\n this.loadMIDataUnderProcess();\r\n // this.finYear = 'All';\r\n // if(this.finYear == 'All'){\r\n // this.finYear = '';\r\n // }\r\n\r\n // this.loadMIDataUnderProcess(this.subActionType, 0);\r\n // setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n // block: \"center\",\r\n // behavior: \"smooth\"\r\n // }), 400)\r\n \r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n this.vendorCode=JSON.parse(sessionToken).officeCode\r\n\r\n this.miCompletedReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Tickect No': d.TicketNo,\r\n 'User Type': d?.User_Id,\r\n 'User': d?.User_Name,\r\n 'Mobile No': d?.Mobile_No,\r\n 'Email': d.EmailID,\r\n 'Address': d.Address,\r\n 'Grivence Type': d.GrievanceType,\r\n 'Greievence Description': d.BriefDescription,\r\n 'Date': d.Date,\r\n 'Status': d.Status,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n loadMIDataUnderProcess() {\r\n // this.loader.start();\r\n // if (autoId == 0) {\r\n // this.loading = true;\r\n // }\r\n let sub = this.reportsService\r\n .getGrievenceHandler()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.miTableDataWithFilter=data;\r\n // this.popup.value['ticket']=this.miCompletedFilterList.ticketNo;\r\n // this.popup.value['description']=this.miCompletedFilterList.remarks;\r\n // this.popup.value['status']=this.miCompletedFilterList.status;\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loading = false;\r\n // this.loading = false;\r\n // this.miTableData = [];\r\n // this.miTableDataWithFilter = [];\r\n // this.actionTypesFromTableData = [];\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n \r\n updateGrievence(data:any){\r\n\r\n }\r\n openDialog(data: any) {\r\n this.selectedData = { ...data };\r\n this.popup.patchValue({\r\n ticket: data.TicketNo,\r\n description: null,\r\n status: data.Status\r\n });\r\n this.displayDialog = true;\r\n }\r\n // saveChanges() {\r\n // // Here, you can perform any logic, like making an API call to update the grievance.\r\n // console.log('Updated Data:', this.selectedData);\r\n \r\n // // Call the service to update the data in the backend (if needed)\r\n // // this.reportsService.updateGrievance(this.selectedData).subscribe(response => {\r\n // // // Handle response\r\n // // });\r\n\r\n // this.displayDialog = false; // Close the dialog\r\n // }\r\n getSeverity(status: any) {\r\n if (status.startsWith('A')) {\r\n return 'warning'\r\n } else if (status.startsWith('C')) {\r\n return 'success';\r\n }\r\n }\r\n mapDataToFarmersModel(): GrievanceRemarks {\r\n let farmerData = JSON.parse(window.sessionStorage.getItem('vendorDetails'));\r\n \r\n let data: GrievanceRemarks = {};\r\n \r\n data.ticketNo = this.popup.value['ticket'];\r\n data.remarks=this.popup.value['description'];\r\n data.status = this.popup.value['status'];\r\n \r\n return data;\r\n }\r\n _insert(data_) {\r\n this.reportsService.updateGrievence(data_).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n \r\n this.isLoading = false;\r\n \r\n \r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.isLoading = false;\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Vendors Details not saved.' });\r\n // this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), err, JSON.stringify(data_));\r\n }\r\n });\r\n }\r\n saveChanges() {\r\n if (this.popup.valid) {\r\n const formData = this.popup.getRawValue(); // Get form data including disabled fields\r\n const mappedData = this.mapDataToGrievanceModel(formData);\r\n\r\n this.loader.start();\r\n this.reportsService.updateGrievence(mappedData).pipe(first()).subscribe({\r\n next: () => {\r\n this.loader.close();\r\n this.displayDialog = false;\r\n this.messageService.add({ severity: 'success', \r\n summary: 'Success Message', \r\n detail: 'Status Updated successfully' \r\n });\r\n\r\n this.loadMIDataUnderProcess(); // Reload the table data\r\n },\r\n error: (err) => {\r\n this.messageService.add({ severity: 'error', \r\n summary: 'Error Message', \r\n detail: err \r\n });\r\n this.loader.close();\r\n console.error('Error updating grievance:', err);\r\n }\r\n });\r\n }else{\r\n this.messageService.add({ severity: 'info', \r\n summary: 'Info Message', \r\n detail: 'Add Remarks' \r\n });\r\n }\r\n }\r\n mapDataToGrievanceModel(formData: any): GrievanceRemarks {\r\n return {\r\n ticketNo: formData.ticket,\r\n remarks: formData.description,\r\n status: formData.status.value\r\n };\r\n }\r\n\r\n hideDialog(){\r\n this.displayDialog = false;\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n {{ tableHeaderName | translate }}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n {{ \"Ticket No\" | translate }}\r\n {{ \"USER_TYPE\" | translate }}\r\n {{ \"USER\" | translate }}\r\n {{ \"MOBILE_NO\" | translate }}\r\n {{ \"EMAIL\" | translate }}\r\n {{ \"ADDRESS\" | translate }}\r\n {{ \"GRIEVANCE_TYPE\" | translate }}\r\n \r\n {{ \"GRIEVANCE_DESCRIPTION\" | translate }}\r\n \r\n {{ \"DATE\" | translate }}\r\n {{ \"View Doc\" | translate }}\r\n {{ \"STATUS\" | translate }}\r\n \r\n {{ \"ACTION\" | translate }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ consolidateData?.User_Id }}\r\n {{ consolidateData?.User_Name }}\r\n {{ consolidateData?.Mobile_No }}\r\n {{ consolidateData?.EmailID }}\r\n {{ consolidateData?.Address }}\r\n {{ consolidateData?.GrievanceType }}\r\n {{ consolidateData?.BriefDescription }}\r\n {{ consolidateData?.Date | date : \"mediumDate\" }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-grievance',\r\n templateUrl: './grievance.component.html',\r\n styleUrls: ['./grievance.component.scss']\r\n})\r\nexport class GrievanceComponent implements OnInit {\r\n @ViewChild('grievanceDataTable') tableContainer: ElementRef;\r\n grievanceForm: FormGroup;\r\n userTypes = [\r\n { label: 'Farmer', value: 'farmer' },\r\n { label: 'Vendor', value: 'vendor' },\r\n // { label: 'Helpdesk', value: 'helpdesk' }\r\n ];\r\n\r\n loginType: string = ''; // Assuming this value will be set based on the login type\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public grievanceTableData: any = [];\r\n public vendorCode: any;\r\n public farmerMobileNo: any;\r\n public categoryList: any = [];\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private messageService: MessageService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private loader: AppLoaderService,\r\n private vendorService: VendorDashboardService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n const mobileNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n const isFarmerLogin = farmerconfData.get('isFarmerLogin')\r\n\r\n this.loginType = isFarmerLogin == '1' ? 'farmer' : sessionStorage.getItem('isVendor') == '1' ? 'vendor' : '';\r\n\r\n const isDisabled = this.loginType === 'farmer' || this.loginType === 'vendor';\r\n\r\n this.grievanceForm = this.fb.group({\r\n userType: [{ value: this.loginType, disabled: isDisabled }, Validators.required],\r\n userName: ['', Validators.required],\r\n mobileNumber: [{ value: '', disabled: this.loginType == 'farmer' ? true : false }, [Validators.required, Validators.pattern('^[0-9]{10}$')]],\r\n emailId: ['', [Validators.required, Validators.email]],\r\n address: [''],\r\n description: ['', Validators.required],\r\n category: ['', Validators.required],\r\n grievanceCopyPath: [null, Validators.required]\r\n });\r\n\r\n if (this.loginType == 'farmer') {\r\n this.farmerMobileNo = mobileNo;\r\n this.grievanceForm.controls.mobileNumber.setValue(mobileNo)\r\n } else if (this.loginType == 'vendor') {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n // this.vendorCode = JSON.parse(payload)?.sub;\r\n this.vendorCode = JSON.stringify(token?.officeCode);\r\n\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n }\r\n\r\n this.loadCategory();\r\n }\r\n\r\n loadCategory(){\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getCategories()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.categoryList = data;\r\n } else {\r\n this.categoryList = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${data}`,\r\n });\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.categoryList = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n onFileChange(event: any) {\r\n const file = event.target.files[0];\r\n if (file && file.size <= 5 * 1024 * 1024) { // 5 MB limit\r\n this.grievanceForm.patchValue({ file: file });\r\n } else {\r\n this.grievanceForm.patchValue({ file: null });\r\n alert('File size exceeds 5 MB.');\r\n }\r\n }\r\n\r\n onSubmit() {\r\n if (this.grievanceForm.valid) {\r\n // console.log('Form submitted', this.grievanceForm.value);\r\n let val = this.grievanceForm.value;\r\n\r\n let phoneNo = null;\r\n if (this.loginType == 'farmer') {\r\n let phNo = this.farmerMobileNo;\r\n phoneNo = phNo;\r\n }else if(this.loginType == 'vendor'){\r\n phoneNo = val?.mobileNumber\r\n }\r\n \r\n let reqBody = {\r\n \"user_Id\": this.loginType,\r\n \"user_Name\": val?.userName,\r\n \"mobile_No\": phoneNo,\r\n \"address\": val?.address,\r\n \"emailID\": val?.emailId,\r\n \"briefDescription\": val?.description,\r\n \"grievanceType\": val?.category,\r\n \"doc_Path\": val?.grievanceCopyPath,\r\n \"vendor_Code\": this.vendorCode ? this.vendorCode : '0'\r\n }\r\n this.postGrievanceData(reqBody);\r\n // Here you can handle form submission, like sending the data to a server\r\n } else {\r\n alert('Please fill in all required fields.');\r\n this.markAllFieldsAsTouched();\r\n }\r\n }\r\n\r\n private markAllFieldsAsTouched() {\r\n Object.keys(this.grievanceForm.controls).forEach(field => {\r\n const control = this.grievanceForm.get(field);\r\n control?.markAsTouched({ onlySelf: true });\r\n });\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n let phNo = this.farmerMobileNo;\r\n this.loader.start();\r\n\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.grievanceForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded Successfully',\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Oops! Someting went wrong.',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n uploadElement.clear();\r\n }\r\n\r\n onClickTrackApp() {\r\n this.grievanceTableData = [];\r\n if (this.loginType == 'vendor') {\r\n this.getVendorGrievanceDetails(this.vendorCode);\r\n // this.getVendorGrievanceDetails(0);\r\n } else if (this.loginType == 'farmer') {\r\n this.getFarmerGrievanceDetails(this.farmerMobileNo);\r\n // this.getFarmerGrievanceDetails('string');\r\n }\r\n }\r\n\r\n postGrievanceData(reqBody) {\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .submitGrievance(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.startsWith('Your ticket')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: `${data}`,\r\n });\r\n this.grievanceForm.reset();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${data}`,\r\n });\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getVendorGrievanceDetails(vendorCode) {\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .vendorGrievanceStatus(vendorCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.grievanceTableData = data;\r\n setTimeout(() => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n } else {\r\n this.grievanceTableData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.grievanceTableData = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getFarmerGrievanceDetails(mobileNo) {\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .farmerGrievanceStatus(mobileNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.grievanceTableData = data;\r\n setTimeout(() => this.tableContainer.nativeElement.scrollIntoView({\r\n block: \"center\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n } else {\r\n this.grievanceTableData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.grievanceTableData = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n getSeverity(status: any) {\r\n if (status.startsWith('A')) {\r\n return 'warning'\r\n } else if (status.startsWith('C')) {\r\n return 'success';\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n

Grievance Form

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n User Type is required.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n User Name is required.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n Mobile Number is required and must be 10 digits.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n Please enter a valid email address.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n Max file size: 10MB\r\n
\r\n Please upload a valid file.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n Category is required.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n Please enter description.\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
0\" class=\"card dashboardTable\">\r\n \r\n \r\n \r\n \r\n \r\n Ticket No\r\n Name\r\n Mobile No\r\n Email Id\r\n Address\r\n Date\r\n Grievance Type\r\n Description\r\n Status\r\n Doc Path\r\n Dept Remarks\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.User_Name}}\r\n {{product.Mobile_No }}\r\n {{product.EmailID}}\r\n {{product.Address}}\r\n {{product.Date | date:'mediumDate'}}\r\n {{product.GrievanceType}}\r\n {{product.BriefDescription}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.Remarks}}\r\n \r\n \r\n \r\n \r\n
\r\n","import { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { first } from 'rxjs';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-helpdesk',\r\n templateUrl: './helpdesk.component.html',\r\n styleUrls: ['./helpdesk.component.scss']\r\n})\r\nexport class HelpdeskComponent implements OnInit {\r\n\r\n isSubmitted = false;\r\n applicationId: any = null;\r\n inputId: any = null;\r\n userID: any;\r\n\r\n constructor(\r\n public router: Router,\r\n private messageService: MessageService,\r\n private route: ActivatedRoute,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'Application Status', '', new Date(), 'Success');\r\n }\r\n\r\n getApplicationStatus() {\r\n if (!this.inputId) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Enter Application Id/ Aadhar No.',\r\n });\r\n return;\r\n }\r\n if(this.inputId.length == 12){\r\n this.getApplicationNo(this.inputId);\r\n }else if(this.inputId.startsWith('MI')){\r\n this.applicationId = this.inputId;\r\n this.checkApplicationDetails();\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Enter Application Id/ Aadhar No properly.',\r\n });\r\n }\r\n // this.isSubmitted = false;\r\n\r\n this.isSubmitted = true;\r\n }\r\n\r\n getApplicationNo(aadharNo){\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getAppIdByAadharNo(aadharNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.applicationId = data[0][0]?.APP_ID;\r\n this.checkApplicationDetails();\r\n this.activityRecordService.activityRecord(this.userID, 'Get Application by Aadhar No', aadharNo, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'Get Application by Aadhar No', aadharNo, new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n checkApplicationDetails() {\r\n this.ngOnDestroy();\r\n // this.router.navigate(['helpdesk', 'home', this.applicationId]);\r\n if (((this.router.url.startsWith('/helpdesk')))) {\r\n this.router.navigate(['helpdesk', 'home', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else if ((this.router.url.startsWith('/xen'))) {\r\n this.router.navigate(['xen', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else if ((this.router.url.startsWith('/cao'))) {\r\n this.router.navigate(['cao', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else if ((this.router.url.startsWith('/ew-department'))) {\r\n this.router.navigate(['ew-department', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else if ((this.router.url.startsWith('/ew-je'))) {\r\n this.router.navigate(['ew-je', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else if ((this.router.url.startsWith('/vendor'))) {\r\n this.router.navigate(['vendor', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else if ((this.router.url.startsWith('/je'))) {\r\n this.router.navigate(['je', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else if ((this.router.url.startsWith('/webadmin'))) {\r\n this.router.navigate(['webadmin', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n else {\r\n this.router.navigate(['department', 'helpdesk', this.cryptoJsService.Encrypt(this.applicationId)]);\r\n }\r\n }\r\n\r\n}","\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\n\r\n@Component({\r\n selector: 'app-new-target',\r\n templateUrl: './new-target.component.html',\r\n styleUrls: ['./new-target.component.scss']\r\n})\r\nexport class NewTargetComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n \r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n public targetMasterData: any;\r\n public overFlowPondData: any;\r\n public canalData: any;\r\n public stpData: any;\r\n public cropData: any;\r\n public loading: boolean = false;\r\n\r\n constructor(\r\n private translateService: TranslateService,\r\n public authService: AuthenticationService\r\n ) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n\r\n this.getTargetMasterData();\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code);\r\n }\r\n\r\n getTargetMasterData() {\r\n this.loading = true;\r\n this.authService.getTargetMasterPublic().subscribe((response: any) => {\r\n this.loading = false;\r\n if(response.$values && response.$values.length > 0){\r\n \r\n if(response.$values[0] && response.$values[0].$values.length > 0){\r\n this.canalData = response.$values[0].$values;\r\n this.canalData = response.$values[0].$values.filter(val => val.Type == 'Canal');\r\n this.stpData = response.$values[0].$values.filter(val => val.Type == 'STP');\r\n this.canalData.forEach((val, index) => \r\n val['SNo'] = index + 1\r\n )\r\n this.stpData.forEach((val, index) => \r\n val['SNo'] = index + 1\r\n )\r\n }\r\n \r\n if(response.$values[1] && response.$values[1].$values.length > 0){\r\n this.overFlowPondData = response.$values[1].$values;\r\n this.overFlowPondData.forEach((val, index) => \r\n val['SNo'] = index + 1\r\n )\r\n }\r\n \r\n if(response.$values[2] && response.$values[2].$values.length > 0){\r\n this.cropData = response.$values[2].$values;\r\n this.cropData.forEach((val, index) => \r\n val['SNo'] = index + 1\r\n )\r\n }\r\n\r\n }\r\n\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'NEW_TARGET_DESCRIPTION1'|\r\n translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n \r\n {{'TARGET_BASED'| translate}}\r\n \r\n \r\n {{'CANAL'| translate}}\r\n \r\n \r\n {{'RD'| translate}}\r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n {{'CIRCLE'| translate}}\r\n \r\n \r\n {{'VIEW_OFFICE_ORDER_COPY'| translate}}\r\n {{'START_DATE'| translate}}\r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.SNo}}\r\n {{product?.Type}}\r\n {{product?.Canal}}\r\n {{product?.RD}}\r\n {{product?.Village}}\r\n {{product?.District}}\r\n {{product?.Constituency}}\r\n {{product?.CircleName}}\r\n {{'VIEW_DOC' | translate}}\r\n {{product?.fromDate | date:'mediumDate'}}\r\n {{product?.endDate | date:'mediumDate'}}\r\n {{product?.CurrentStatus}}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'NEW_TARGET_DESCRIPTION12'|\r\n translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n \r\n {{'TARGET_BASED'| translate}}\r\n \r\n \r\n {{'STP'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n {{'CIRCLE'| translate}}\r\n \r\n \r\n {{'VIEW_OFFICE_ORDER_COPY'| translate}}\r\n {{'START_DATE'| translate}}\r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.SNo}}\r\n {{product?.Type}}\r\n {{product?.Canal}}\r\n \r\n {{product?.Village}}\r\n {{product?.District}}\r\n {{product?.Constituency}}\r\n {{product?.CircleName}}\r\n {{'VIEW_DOC' | translate}}\r\n {{product?.fromDate | date:'mediumDate'}}\r\n {{product?.endDate | date:'mediumDate'}}\r\n {{product?.CurrentStatus}}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'NEW_TARGET_DESCRIPTION2'|\r\n translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n \r\n {{'TARGET_BASED'| translate}}\r\n \r\n \r\n {{'NAME'| translate}}\r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n {{'DIVISION'| translate}}\r\n \r\n \r\n {{'VIEW_OFFICE_ORDER_COPY'| translate}}\r\n {{'START_DATE'| translate}}\r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.SNo}}\r\n {{product?.Type}}\r\n {{product?.Name}}\r\n {{product?.Village}}\r\n {{product?.District}}\r\n {{product?.Block}}\r\n {{product?.Constituency}}\r\n {{product?.Division}}\r\n {{'VIEW_DOC' | translate}}\r\n {{product?.fromDate | date:'mediumDate'}}\r\n {{product?.endDate | date:'mediumDate'}}\r\n {{product?.CurrentStatus}}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'NEW_TARGET_DESCRIPTION3'|\r\n translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n \r\n {{'CROP_TYPE'| translate}}\r\n \r\n \r\n {{'CROP_NAME'| translate}}\r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n {{'START_DATE'| translate}}\r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.SNo}}\r\n {{product?.Type_Of_Crop_Name}}\r\n {{product?.Crop_Name}}\r\n {{product?.District}}\r\n {{product?.fromDate | date:'mediumDate'}}\r\n {{product?.endDate | date:'mediumDate'}}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n","import { AppLoaderService } from './../../services/app-loader/app-loader.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem } from 'primeng/api';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.scss']\r\n})\r\nexport class HomeComponent implements OnInit {\r\n items: MenuItem[];\r\n images: number[];\r\n responsiveOptions: { breakpoint: string; numVisible: number; numScroll: number; }[];\r\n constructor(public router: Router, private loader : AppLoaderService) { }\r\n\r\n ngOnInit(): void {\r\n this.items = [\r\n {\r\n label: 'Atal Login', icon: 'pi pi-fw pi-sign-in', command: () => {\r\n this.emailLogin();\r\n }\r\n },\r\n {\r\n label: 'Farmer Login', icon: 'pi pi-fw pi-sign-in', command: () => {\r\n this.otpLogin();\r\n }\r\n },\r\n\r\n ];\r\n this.images = [1,2,3,4]\r\n\r\n this.responsiveOptions = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 3,\r\n numScroll: 3\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 2,\r\n numScroll: 2\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n numScroll: 1\r\n }\r\n ];\r\n }\r\n\r\n otpLogin() {\r\n this.router.navigate(['/phone-login']);\r\n }\r\n\r\n emailLogin() {\r\n this.router.navigate(['/login']);\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
NEWS & EVENTS
\r\n
\r\n \r\n

FARMER ONLINE APPLICATION FOR MI

\r\n

\r\n FARMER ONLINE APPLICATION has been inaugurated by Hon'ble Chief\r\n Minister Haryana on dated 16/01/2021\r\n

\r\n

CADA Administrator

\r\n

\r\n Dr. Satbir Singh Kadian, EIC, Administrator CADA Haryana Panchkula\r\n

\r\n

CADA Chief Engineer

\r\n

Sh. Suresh Yadav, Chief Engineer, CADA Haryana Panchkula

\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n

\r\n Welcome to Micro Irrigation & Command Area Development Authority\r\n

\r\n About CADA, Haryana \r\n

\r\n

\r\n  Command Area Development Authority was set up in Haryana in the\r\n year 1974 under a Centrally Sponsored Scheme on sharing basis i.e.\r\n 50:50 by the State Government and Government of India to bridge the\r\n gap between the irrigation potential created and irrigation potential\r\n utilized through micro level infrastructure development and effective\r\n farm water management, to enhance agricultural production &\r\n productivity and to improve socio-economic conditions of the farmers\r\n on selected Canal Commands in the state under Command Area Development\r\n Programme (CADP).\r\n

\r\n

\r\n The CAD programme was restructured and renamed as Command Area\r\n Development & Water Management (CADWM) w.e.f. 01.04.2004 and since\r\n 2008-09 the programme was implemented as a State sector scheme with\r\n Central assistance up-to 2015-16.
As per the latest guidelines\r\n issued in December, 2016 by the Government of India, Ministry of Water\r\n Resources, River Development and Ganga Rejuvenation, New Delhi, the\r\n Command Area Development & Water Management (CAD&WM) works\r\n shall be covered by the GoI under Incentivization Scheme for Bridging\r\n Irrigation Gap (ISBIG) under the umbrella scheme of “Pradhan Mantri\r\n Krishi Sinchayee Yojana” (PMKSY) “Har Khet Ko Pani” component.\r\n

\r\n

ORGANISATIONAL SETUP

\r\n

\r\n The overall control of CADA Haryana vests with its State Level\r\n Monitoring Committee cum Governing Body headed by the Chairman who is\r\n the Administrative Secretary to Government of Haryana, Irrigation\r\n & Water Resources Department with following members:-
1.\r\n Administrative Secretary, Irrigation Department Chairman
2.\r\n Administrator, CADA, Haryana, Member Secy.
3. Senior Joint\r\n Commissioner (CADWM) GoI or his representative Member
4. Vice\r\n Chancellor, CCS, Haryana or his representative Member
5.\r\n Director, Agriculture, Haryana or his representative Member
6.\r\n Engineer-in-Chief, Irrigation Department Haryana Member
7.\r\n Secretary, Finance, Haryana or his representative Member
8.\r\n Principal Director, HIRMI, Kurukshetra Member
9. Chief Engineer,\r\n CADA, Haryana Member
10. Officer on Special Duty, CADA, Haryana\r\n Member
11. Representative of Central Water Commission Member\r\n
12. Representative of Central Ground Water Board Member
13.\r\n Director of Central Soil Salinity Research Institute Karnal Member or\r\n his representative
14. Representative Water Users Association\r\n Member\r\n

\r\n

 

\r\n

\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \"\"\r\n

Sh. Manohar Lal

\r\n

Chief Minister
Haryana

\r\n
\r\n\r\n
\r\n \"\"\r\n

Sh. Devender Singh,

\r\n

IAS Addl. Chief Secretary
Haryana

\r\n
\r\n
\r\n \"\"\r\n

Dr. Satbir Singh Kadian
Engineer-In-Chief

\r\n

Administrator
CADA Haryana

\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n Copyright © 2021 Micro Irrigation & Command Area Development\r\n Authority, Haryana. All Rights Reserved.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-je-activity',\r\n templateUrl: './je-activity.component.html',\r\n styleUrls: ['./je-activity.component.scss']\r\n})\r\nexport class JeActivityComponent implements OnInit {\r\n public userRidList: any = [];\r\n public appTypeList: any = [];\r\n public financialYearList: any = [];\r\n\r\n public selectedUserRid: any;\r\n public selectedAppType: any;\r\n public selectedFinancialYear: any;\r\n selectedApplications: any[];\r\n public tableData: any = [];\r\n public userId: any;\r\n\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n public loading: boolean = false;\r\n public showTable: boolean = false;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private reportsService: ReportsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n setTimeout(() => {\r\n this.getAppTypeList();\r\n this.getFinancialYearList();\r\n }, 200);\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loadData();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n this.loader.start();\r\n let sub = this.deptDashBoardService\r\n .getActiveUserIDsByGeoCodes(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (`${data}`?.length > 0) {\r\n this.userRidList = data;\r\n } else {\r\n this.userRidList = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${data}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.userRidList = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${err}`,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n getAppTypeList() {\r\n this.appTypeList = [\r\n { status_Code: 1, status_Description: 'Pending' },\r\n { status_Code: 2, status_Description: 'Current' },\r\n { status_Code: 3, status_Description: 'Approved' }\r\n ];\r\n }\r\n\r\n getFinancialYearList(){\r\n this.reportsService.getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.financialYearList = data;\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'error Message',\r\n detail: `${err}`,\r\n });\r\n }\r\n })\r\n }\r\n\r\n fetchData() {\r\n if (this.selectedUserRid && this.selectedAppType && this.selectedFinancialYear) {\r\n this.getDataToShow();\r\n this.showTable = true;\r\n } else {\r\n this.showTable = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Select the value from the dropdown`,\r\n });\r\n }\r\n }\r\n\r\n getDataToShow() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getApplicationsForPhysicalVerification(\r\n this.selectedUserRid.UserID,\r\n this.selectedAppType.status_Description,\r\n this.selectedFinancialYear.FinancialYears)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if (`${data}`?.length > 0) {\r\n this.tableData = data;\r\n } else {\r\n this.tableData = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${data}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.tableData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${err}`,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onClickApp(appId) {\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(this.statusCode);\r\n const link = this.router.serializeUrl(this.router.createUrlTree(['xen', 'print', appId]));\r\n window.open(link, '_blank');\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'Farmer Application(s)' | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n App ID\r\n Farmer Name\r\n Programme Name\r\n Vendor Name\r\n Reg Date\r\n Village \r\n District\r\n Block\r\n Status\r\n Fin Year\r\n \r\n \r\n \r\n \r\n {{rowData.AppID}}\r\n {{rowData.FarmerName}}\r\n {{rowData.ProgrammeName}}\r\n {{rowData.VendorName}}\r\n {{rowData.RegDate| date:'mediumDate'}}\r\n {{rowData.Village}}\r\n {{rowData.District}}\r\n {{rowData.Block}}\r\n {{rowData.Status}}\r\n {{rowData.FinYear}}\r\n \r\n \r\n \r\n \r\n No Data found.\r\n \r\n \r\n
\r\n
","import { filter } from 'rxjs/operators';\r\nimport { FarmersDetailsService } from './../../../services/farmers-details.service';\r\nimport { Component, EventEmitter, OnInit, Output, OnDestroy ,Input} from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first } from 'rxjs';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { JsonPipe } from '@angular/common';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-attachment',\r\n templateUrl: './attachment.component.html',\r\n styleUrls: ['./attachment.component.scss']\r\n})\r\nexport class AttachmentComponent implements OnInit, OnDestroy {\r\n // if(sessionStorage.getItem('userRole')=='DD Associate'){\r\n\r\n // }\r\n\r\n @Input() data:any\r\n uploadOptions: any[];\r\n selectedCity1: any;\r\n displayCameraComponent: boolean = false;\r\n remarks: String;\r\n items: any[];\r\n selectedStatus: any;\r\n isDDAssociate:any;\r\n // images = [{\r\n // source: 'https://via.placeholder.com/301.jpg',\r\n // alt: 'Alt1',\r\n // title: 'Title1'\r\n // }, {\r\n // source: 'https://via.placeholder.com/302.jpg',\r\n // alt: 'Alt2',\r\n // title: 'Title2'\r\n // }, {\r\n // source: 'https://via.placeholder.com/303.jpg',\r\n // alt: 'Alt3',\r\n // title: 'Title3'\r\n // },\r\n // {\r\n // source: 'https://via.placeholder.com/301.jpg',\r\n // alt: 'Alt1',\r\n // title: 'Title1'\r\n // }, {\r\n // source: 'https://via.placeholder.com/302.jpg',\r\n // alt: 'Alt2',\r\n // title: 'Title2'\r\n // }, {\r\n // source: 'https://via.placeholder.com/303.jpg',\r\n // alt: 'Alt3',\r\n // title: 'Title3'\r\n // }];\r\n images = [];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n\r\n // Camera \r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n // toggle webcam on/off\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n appId: any;\r\n editBilledData: boolean = false;\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/)\r\n var q = Number(parts[1])\r\n var side = window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]]\r\n return side * (q / 100)\r\n }\r\n\r\n\r\n // webcam snapshot trigger\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject();\r\n selctedFileType: any;\r\n applicationNo: any;\r\n documentList: any = [];\r\n displayCustom: boolean;\r\n displayCustomJE: boolean;\r\n displayCustomXEN: boolean;\r\n activeIndex: number = 0;\r\n ParamsAppID: any;\r\n jeLogin: any\r\n jeorxenLogin: any\r\n xenLogin: any\r\n miPhysicalApplicationData: any;\r\n showListImageJE: boolean = true;\r\n showListImageXEN: boolean = true;\r\n\r\n listImagePathJE: any;\r\n listImagePathXEN: any;\r\n\r\n userID: any;\r\n\r\n isRPCase: boolean = false;\r\n\r\n userRole: any;\r\n viewWorkFlowAllStatus: boolean = false;\r\n ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private _personalDetalSer: FarmersDetailsService, \r\n private _fb: FormBuilder, \r\n private jeService: JEService, \r\n private messageService: MessageService,\r\n private route: ActivatedRoute, \r\n private router: Router, \r\n private cryptoJsService: CryptoJsService, \r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService, \r\n private activityRecordService: ActivityRecordService,\r\n private ipService: IpAddressService,\r\n ) {\r\n this.uploadOptions = [\r\n { name: 'Team and Farmer', code: 'team_and_farmer' },\r\n { name: 'Field Photo', code: 'field_photo' },\r\n { name: 'Component Photo', code: 'component_photo' },\r\n { name: 'Farmers Acceptance', code: 'farmers_acceptance' },\r\n { name: 'Others', code: 'others' }\r\n ];\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n this.jeorxenLogin = true\r\n }\r\n if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n this.jeorxenLogin = true\r\n }\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.ParamsAppID = params.appId\r\n })\r\n\r\n this.getIP();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.userRole = sessionStorage.getItem('userRole');\r\n\r\n if (sessionStorage.getItem(this.cryptoJsService.Encrypt('editBilledData'))) {\r\n this.editBilledData = Boolean(this.cryptoJsService.DecryptData(sessionStorage.getItem(this.cryptoJsService.Encrypt('editBilledData'))));\r\n }\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n this.getStatusMaster();\r\n\r\n if (this.jeLogin && sessionStorage.getItem('isRPCase') && sessionStorage.getItem('isRPCase') == 'true') {\r\n this.isRPCase = true;\r\n return;\r\n }\r\n\r\n \r\n if(sessionStorage.getItem('userRole')=='DD Associate'){\r\n this.isDDAssociate=true\r\n this.appId=this.data.appId\r\n this.autoId=this.data.autoId\r\n if (this.appId) {\r\n if (JSON.parse(sessionStorage.getItem('documentList'))?.appId == this.appId) {\r\n this.documentList = JSON.parse(sessionStorage.getItem('documentList'))?.documentList;\r\n }\r\n if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))?.length)) {\r\n if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))[0]?.appID) == this.appId) {\r\n this.miPhysicalAppReqBody = JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'));\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n // setTimeout(() => {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // return;\r\n // }, 1000);\r\n }\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n // setTimeout(() => {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // return;\r\n // }, 1000);\r\n }\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be empty' });\r\n return;\r\n }\r\n }\r\n else{\r\n this.isDDAssociate=false\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = this.cryptoJsService.DecryptData(params.autoId);\r\n this.appId = this.cryptoJsService.DecryptData(params.appId);\r\n if (this.appId) {\r\n if (JSON.parse(sessionStorage.getItem('documentList'))?.appId == this.appId) {\r\n this.documentList = JSON.parse(sessionStorage.getItem('documentList'))?.documentList;\r\n }\r\n if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))?.length)) {\r\n if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))[0]?.appID) == this.appId) {\r\n this.miPhysicalAppReqBody = JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'));\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n // setTimeout(() => {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // return;\r\n // }, 1000);\r\n }\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n setTimeout(() => {\r\n this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n return;\r\n }, 1000);\r\n }\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be empty' });\r\n return;\r\n }\r\n }\r\n );\r\n }\r\n\r\n\r\n\r\n this.miPhysicalApplicationData = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n\r\n if(this.miPhysicalApplicationData?.listDataForPhysicalVer){ \r\n for (let index = 0; index < this.miPhysicalApplicationData?.listDataForPhysicalVer.length; index++) {\r\n if(this.miPhysicalApplicationData.listDataForPhysicalVer[index].inventory!=null && this.miPhysicalApplicationData.listDataForPhysicalVer[index].inventory.length>0){\r\n delete this.miPhysicalApplicationData.listDataForPhysicalVer[index].selectedQuantity;\r\n delete this.miPhysicalApplicationData.listDataForPhysicalVer[index].selectedInventory;\r\n }\r\n }\r\n }\r\n if(sessionStorage.getItem('isJE')){\r\n this.showListImageJE = false;\r\n this.showListImageXEN = false;\r\n this.documentList = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathJE;\r\n }\r\n else if(sessionStorage.getItem('isXEN')){\r\n this.showListImageXEN = false;\r\n this.listImagePathJE = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathJE\r\n this.documentList = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathXEN;\r\n }\r\n else{\r\n this.listImagePathJE = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathJE;\r\n this.listImagePathXEN = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathXEN;\r\n }\r\n\r\n WebcamUtil.getAvailableVideoInputs()\r\n .then((mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n });\r\n }\r\n\r\n getStatusMaster() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n\r\n let actionId;\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin')) {\r\n actionId = 19; // Do not Change, it is fixed for Farmer Application Verifications\r\n } else {\r\n actionId = 18; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.items = data.$values;\r\n\r\n if (this.isRPCase) {\r\n this.items = [this.items[1]];\r\n this.selectedStatus = this.items;\r\n }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n goBack() {\r\n\r\n }\r\n\r\n onAttachmentDetailsFormSubmit() {\r\n if (this.jeLogin && this.isRPCase) {\r\n\r\n let val = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n\r\n let reqBody =\r\n {\r\n \"appID\": val?.AppID,\r\n \"vendorRegId\": val?.VendorCode,\r\n \"progID\": val?.ProgId,\r\n \"estimatedAmount\": 0,\r\n \"totalBilledAmount\": 0,\r\n \"totalCostVerification\": 0,\r\n \"billedTransportAmount\": 0,\r\n \"maxSubsidyAmount\": 0,\r\n \"farmerShareAmount\": 0,\r\n \"subsidyToFarmer_Amount\": 0,\r\n \"subsidyToVendor_Amount\": 0,\r\n \"farmerRefund_Amount\": 0,\r\n \"stateShare_Amount\": 0,\r\n \"centerShare_Amount\": 0,\r\n \"district\": val?.District,\r\n \"block\": val?.Block,\r\n \"village\": val?.Village,\r\n \"miArea\": val?.MIArea,\r\n \"plantSpacing\": val?.PlantSpacing,\r\n \"rowSpacing\": val?.RowSpacing,\r\n \"cropID\": val?.CropId,\r\n \"landId\": val?.LandIds,\r\n \"userId\": this.userID,\r\n \"remarks\": this.remarks ? this.remarks : '',\r\n \"network_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress,\r\n \"status\": this.selectedStatus.flag,\r\n \"proData_MaxSubsidy\": 0,\r\n \"surveyType\": 0,\r\n \"componentDetail\": [],\r\n \"insertServayAttachments\": [],\r\n \"insertSurveyGPSCoordiantes\": []\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify([reqBody]))\r\n }\r\n this.loader.start();\r\n this.jeService.insertPhysicalVerification(reqBodyAfterEncypt).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Submit', reqBody?.appID, new Date(), data, reqBody);\r\n if (data == 'S:Successfully Submitted') {\r\n sessionStorage.removeItem('documentList');\r\n sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n sessionStorage.removeItem('miPhysicalAppXENGPSCoordinates');\r\n sessionStorage.removeItem('myPhysicalSurveyType')\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Submitted' });\r\n let val = JSON.parse(window.sessionStorage.getItem('MIPhysicalVerificationPending'));\r\n val.forEach(val => {\r\n if (val?.AppID == reqBody?.appID) {\r\n val.Status_Ar = 'C';\r\n return;\r\n }\r\n })\r\n window.sessionStorage.setItem('MIPhysicalVerificationPending', JSON.stringify(val))\r\n setTimeout(() => {\r\n this.router.navigate([this.router.url.split('/')[1], 'physical-verification']);\r\n }, 1200);\r\n } else if (data == 'S:Successfully Updated') {\r\n sessionStorage.removeItem('documentList');\r\n sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n sessionStorage.removeItem('miPhysicalAppXENGPSCoordinates');\r\n sessionStorage.removeItem('myPhysicalSurveyType')\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Updated' });\r\n\r\n setTimeout(() => {\r\n this.router.navigate([this.router.url.split('/')[1], 'physical-verification']);\r\n }, 1000);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: data.toString() });\r\n }\r\n\r\n\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Submit', reqBody?.appID, new Date(), err, reqBody);\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: `Error! ${err}` });\r\n }\r\n });\r\n\r\n return;\r\n }\r\n \r\n // if(this.jeLogin && this.selectedStatus.flag != 'RP'){\r\n // let val = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n // val?.listDataForPhysicalVer.every(val => val.ActualQuantity == 0)\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail:\r\n // \"Please Add Component Quantity First\",\r\n // });\r\n // return;\r\n // }\r\n\r\n this.images = this.documentList;\r\n\r\n let isValid = true;\r\n // if ((this.images && this.images.length == 0) && this.jeLogin) {\r\n // if (this.documentList.length == 0) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message1', detail: 'Images are Mandatory' });\r\n // return;\r\n // } else {\r\n // this.uploadOptions.forEach(option => {\r\n // if (option.code != 'others') {\r\n\r\n // let filtered = this.documentList.filter(doc => { \r\n // return doc.document_type == option.code \r\n // });\r\n // if (filtered?.length == 0) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message11', detail: 'Atleast one ' + option.name + ' is Needed!' });\r\n // isValid = false;\r\n // return;\r\n // }\r\n // }\r\n // });\r\n // }\r\n // if (!isValid) {\r\n // return;\r\n // }\r\n // } else {\r\n // if (this.images.length == 0) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message2', detail: 'Images are Mandatory' });\r\n // return;\r\n // } else {\r\n // this.uploadOptions.forEach(option => {\r\n // if (option.name != 'Others') {\r\n // let filtered = this.images.filter(doc => { \r\n // return doc.DocumentType == option.name \r\n // });\r\n // if (filtered?.length == 0) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message22', detail: 'Atleast one ' + option.name + ' is Needed!' });\r\n // isValid = false;\r\n // return;\r\n // }\r\n // }\r\n // });\r\n // }\r\n // if (!isValid) {\r\n // return;\r\n // }\r\n // }\r\n\r\n if (this.jeLogin || (this.xenLogin && sessionStorage.getItem('myPhysicalSurveyType') == '1')) {\r\n if (this.documentList.length == 0) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Images are Mandatory' });\r\n return;\r\n }\r\n else {\r\n this.uploadOptions.forEach(option => {\r\n if (option.code != 'others') {\r\n\r\n let filtered = this.documentList.filter(doc => {\r\n return doc.DocumentType == option.code\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Atleast one ' + option.name + ' is Needed!' });\r\n isValid = false;\r\n return;\r\n }\r\n }\r\n });\r\n }\r\n if (!isValid) {\r\n return;\r\n }\r\n }\r\n // return;\r\n if(sessionStorage.getItem('userRole')=='DD Associate'){\r\n if (this.autoId) {\r\n\r\n if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))?.length)) {\r\n if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))[0]?.appID) == this.appId) {\r\n this.miPhysicalAppReqBody = JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'));\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n // setTimeout(() => {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // return;\r\n // }, 1000);\r\n }\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n // setTimeout(() => {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // return;\r\n // }, 1000);\r\n }\r\n\r\n let body = [];\r\n\r\n // Note : Only newly captured images has to be sent for the API\r\n //populating the newly captured images\r\n this.documentList.forEach(document => {\r\n body.push({\r\n \"attachmentsDoc\": document?.attachment ? document?.attachment : document?.ImagePath,\r\n \"documentType\": document?.DocumentType,\r\n })\r\n })\r\n\r\n this.miPhysicalAppReqBody[0].insertServayAttachments = body;\r\n this.miPhysicalAppReqBody[0].remarks = this.remarks ? this.remarks : '';\r\n this.miPhysicalAppReqBody[0].status = this.selectedStatus.flag;\r\n let reqBody = this.miPhysicalAppReqBody;\r\n\r\n //Remove 'componentDetail' & 'insertServayAttachments' for department & ADMIN login\r\n if((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin')){\r\n this.miPhysicalAppReqBody[0].componentDetail = undefined;\r\n this.miPhysicalAppReqBody[0].insertServayAttachments = undefined;\r\n reqBody = this.miPhysicalAppReqBody[0];\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n this.loader.start();\r\n this.jeService.insertPhysicalVerification(reqBodyAfterEncypt).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Submit', reqBody?.appID, new Date(), data, reqBody);\r\n\r\n if (data == 'S:Successfully Submitted') {\r\n sessionStorage.removeItem('documentList');\r\n sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n sessionStorage.removeItem('miPhysicalAppXENGPSCoordinates');\r\n sessionStorage.removeItem('myPhysicalSurveyType')\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Submitted' });\r\n let val = JSON.parse(window.sessionStorage.getItem('MIPhysicalVerificationPending'));\r\n val.forEach(val => {\r\n if(val?.AppID == reqBody?.appID){\r\n val.Status_Ar = 'C';\r\n return;\r\n }\r\n })\r\n window.sessionStorage.setItem('MIPhysicalVerificationPending', JSON.stringify(val))\r\n setTimeout(() => {\r\n this.router.navigate([this.router.url.split('/')[1], 'physical-verification']);\r\n }, 1200);\r\n } else if (data == 'S:Successfully Updated') {\r\n sessionStorage.removeItem('documentList');\r\n sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n sessionStorage.removeItem('miPhysicalAppXENGPSCoordinates');\r\n sessionStorage.removeItem('myPhysicalSurveyType')\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Updated' });\r\n\r\n setTimeout(() => {\r\n this.router.navigate([this.router.url.split('/')[1], 'physical-verification']);\r\n }, 1000);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: data.toString() });\r\n }\r\n\r\n\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Submit', reqBody[0]?.appID, new Date(), err, reqBody[0]);\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: `Error! ${err}` });\r\n }\r\n });\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n else{\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params.autoId) {\r\n let body = [];\r\n\r\n // Note : Only newly captured images has to be sent for the API\r\n //populating the newly captured images\r\n this.documentList.forEach(document => {\r\n body.push({\r\n \"attachmentsDoc\": document?.attachment ? document?.attachment : document?.ImagePath,\r\n \"documentType\": document?.DocumentType,\r\n })\r\n })\r\n\r\n this.miPhysicalAppReqBody[0].insertServayAttachments = body;\r\n this.miPhysicalAppReqBody[0].remarks = this.remarks ? this.remarks : '';\r\n this.miPhysicalAppReqBody[0].status = this.selectedStatus.flag;\r\n let reqBody = this.miPhysicalAppReqBody;\r\n\r\n //Remove 'componentDetail' & 'insertServayAttachments' for department & ADMIN login\r\n if((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin')){\r\n this.miPhysicalAppReqBody[0].componentDetail = undefined;\r\n this.miPhysicalAppReqBody[0].insertServayAttachments = undefined;\r\n reqBody = this.miPhysicalAppReqBody[0];\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n this.loader.start();\r\n this.jeService.insertPhysicalVerification(reqBodyAfterEncypt).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Submit', reqBody?.appID, new Date(), data, reqBody);\r\n if (data == 'S:Successfully Submitted') {\r\n sessionStorage.removeItem('documentList');\r\n sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n sessionStorage.removeItem('miPhysicalAppXENGPSCoordinates');\r\n sessionStorage.removeItem('myPhysicalSurveyType')\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Submitted' });\r\n let val = JSON.parse(window.sessionStorage.getItem('MIPhysicalVerificationPending'));\r\n val.forEach(val => {\r\n if(val?.AppID == reqBody?.appID){\r\n val.Status_Ar = 'C';\r\n return;\r\n }\r\n })\r\n window.sessionStorage.setItem('MIPhysicalVerificationPending', JSON.stringify(val))\r\n setTimeout(() => {\r\n this.router.navigate([this.router.url.split('/')[1], 'physical-verification']);\r\n }, 1200);\r\n } else if (data == 'S:Successfully Updated') {\r\n sessionStorage.removeItem('documentList');\r\n sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n sessionStorage.removeItem('miPhysicalAppXENGPSCoordinates');\r\n sessionStorage.removeItem('myPhysicalSurveyType')\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Successfully Updated' });\r\n\r\n setTimeout(() => {\r\n this.router.navigate([this.router.url.split('/')[1], 'physical-verification']);\r\n }, 1000);\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: data.toString() });\r\n }\r\n\r\n\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Submit', reqBody[0]?.appID, new Date(), err, reqBody[0]);\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: `Error ${err}` });\r\n }\r\n });\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n );\r\n }\r\n\r\n }\r\n\r\n openCamera() {\r\n this.displayCameraComponent = true;\r\n }\r\n\r\n onCloseDialog() {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n //Camera\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n // true => move forward through devices\r\n // false => move backwards through devices\r\n // string => move to device with given deviceId\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n const arr = this.webcamImage.imageAsDataUrl.split(\",\");\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], this.selctedFileType + '.jpeg', { type: mime })\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = (JSON.parse(payload)?.sub).trim();\r\n if(sessionStorage.getItem('userRole')=='DD Associate'){\r\n if (this.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n DocumentType: this.selctedFileType.code,\r\n displayName: this.cryptoJsService.DecryptData(this.appId) + '_',\r\n name:\r\n this.selctedFileType.code === 'team_and_farmer'\r\n ? 'team_and_farmer'\r\n : this.selctedFileType.code === 'field_photo'\r\n ? 'field_photo'\r\n : this.selctedFileType.code === 'farmers_acceptance'\r\n ? 'farmers_acceptance'\r\n : this.selctedFileType.code === 'others'\r\n ? 'others'\r\n : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n let documentListObject = {\r\n 'appId': this.cryptoJsService.DecryptData(this.appId),\r\n 'documentList': this.documentList\r\n }\r\n sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n }\r\n this.selctedFileType = '';\r\n });\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n else{\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n DocumentType: this.selctedFileType.code,\r\n displayName: this.cryptoJsService.DecryptData(params.appId) + '_',\r\n name:\r\n this.selctedFileType.code === 'team_and_farmer'\r\n ? 'team_and_farmer'\r\n : this.selctedFileType.code === 'field_photo'\r\n ? 'field_photo'\r\n : this.selctedFileType.code === 'farmers_acceptance'\r\n ? 'farmers_acceptance'\r\n : this.selctedFileType.code === 'others'\r\n ? 'others'\r\n : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n let documentListObject = {\r\n 'appId': this.cryptoJsService.DecryptData(params.appId),\r\n 'documentList': this.documentList\r\n }\r\n sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n }\r\n this.selctedFileType = '';\r\n });\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n );\r\n }\r\n\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n\r\n onAttachmentsFormGoBack() {\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params.autoId) {\r\n this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n );\r\n }\r\n\r\n // imageClick(index: number) {\r\n // this.activeIndex = index;\r\n // this.displayCustom = true;\r\n // }\r\n\r\n imageClick(index: number, type) {\r\n this.activeIndex = index;\r\n if(type == \"JE\"){\r\n this.displayCustomJE = true;\r\n }\r\n else if(type == \"XEN\"){\r\n this.displayCustomXEN = true;\r\n }\r\n else if(type == \"PA\"){\r\n this.displayCustom = true;\r\n }\r\n }\r\n\r\n removeCaptureImg(i){\r\n this.documentList.splice(i, 1)\r\n let documentListObject = {\r\n 'appId': this.cryptoJsService.DecryptData(this.ParamsAppID),\r\n 'documentList': this.documentList\r\n }\r\n sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n }\r\n\r\n workFlowAllStatus(){\r\n this.viewWorkFlowAllStatus = true;\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n\r\n}\r\n","\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
{{'UPLOAD_ATTACHMENT'| translate}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{i+1}}\r\n
\r\n

{{item.name ? item.name: item.DocumentType}}

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">\"{{'MESSAGES'| translate}}\":

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { first } from 'rxjs';\r\nimport { Component, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-basic',\r\n templateUrl: './basic.component.html',\r\n styleUrls: ['./basic.component.scss']\r\n})\r\nexport class BasicComponent implements OnInit {\r\n\r\n basicDetailsForm: FormGroup;\r\n isSubmitted = false;\r\n autoId: any;\r\n physicalVerficationApplicationData: any;\r\n public autoResize: boolean = true;\r\n longPosition: any;\r\n latPosition: any;\r\n editBilledData: boolean = false;\r\n // preEstimationGeolocationsArray: any = []\r\n jegeolocationsarray: any []= []\r\n xengeolocationsarray: any = []\r\n mapEnable = false;\r\n coordinateError: any\r\n preEstimationMapoverlays: any = [];\r\n jeMapoverlays: any = [];\r\n jeMapoptions: any;\r\n xenMapoverlays: any = [];\r\n xenMapoptions: any;\r\n preEstimateMapoptions: any;\r\n preEstimateCoordinates: any = [];\r\n coordinatesVerified = false\r\n jeLogin = false\r\n xenLogin = false\r\n jeorxenLogin = false\r\n dimicadaLogin = false\r\n ddAssociateLogin = false\r\n selectedSurveyType : any;\r\n preEstimationDate: any;\r\n landArea: number;\r\n preEstSurveyLandArea: number;\r\n jeSurveyLandArea: number;\r\n xenSurveyLandArea: number;\r\n userID: any;\r\n cropTypeList: any[];\r\n cropBasedNames: any;\r\n\r\n selectedRPType: any;\r\n\r\n isGPSError: boolean = false;\r\n public refreshLocation: any;\r\n\r\n public mapEnableJE : boolean = false;\r\n public mapEnableXEN : boolean = false;\r\n\r\n public snapAppId: any;\r\n public applicationDetails: any = null;\r\n public isAppDetails1Loading: boolean = true;\r\n public isAppDetails2Loading: boolean = true;\r\n\r\n public existingMIDetails: any = [];\r\n\r\n public selLandForOwnerdetails: any = {};\r\n public kewatNo: any = null;\r\n\r\n public displayLandOwnerDialog: boolean = false;\r\n public landOwnerDetails : any = [];\r\n public showLandOwnerDetails: boolean = false;\r\n\r\n public isLandOwnerDetFetching: boolean = false;\r\n loadingText: string = 'Fetching Owner Details from Land Revenue Department';\r\n private dotCount: number = 0;\r\n private maxDots: number = 3;\r\n private interval: any;\r\n\r\n public landOwnerDetailsErrorMsg: any = null;\r\n public showHiddenButton: boolean = false;\r\n public request1complete: boolean = false;\r\n public request2complete: boolean = false;\r\n public landDetailedInfo: any = [];\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private route: ActivatedRoute,\r\n private flService: FarmerLandDetailService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n private jeService: JEService,\r\n private messageService: MessageService,\r\n private loader: AppLoaderService,\r\n private activityRecordService: ActivityRecordService,\r\n private confirmationService: ConfirmationService,\r\n private cdr: ChangeDetectorRef,\r\n private _dashboardService: DashboardService,\r\n private vendorService: VendorDashboardService\r\n ) {\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n this.jeorxenLogin = true\r\n sessionStorage.setItem('jecoordinatesVerified', JSON.stringify(false));\r\n sessionStorage.setItem('myPhysicalSurveyType', JSON.stringify(1));\r\n }\r\n if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n this.jeorxenLogin = true\r\n sessionStorage.setItem('myPhysicalSurveyType', JSON.stringify(0));\r\n sessionStorage.setItem('xencoordinatesVerified', JSON.stringify(false));\r\n }\r\n if(tokenData && tokenData.role == 'DMICADA'){\r\n this.dimicadaLogin = true\r\n }\r\n if(tokenData && tokenData.role == 'DD Associate'){\r\n this.ddAssociateLogin = true\r\n }\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n\r\n sessionStorage.removeItem('isRPCase');\r\n this.getCorpType();\r\n if(sessionStorage.getItem('miPhysicalApplicationData')){\r\n sessionStorage.removeItem('miPhysicalApplicationData');\r\n }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // if(environment.production == false){\r\n // }\r\n // else if(environment.production == true){\r\n // }\r\n sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n // this.jegeolocationsarray = [];\r\n this.selectedSurveyType = 0\r\n this.jeMapoptions = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE\r\n };\r\n this.xenMapoptions = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE\r\n };\r\n this.preEstimateMapoptions = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE\r\n };\r\n if(this.jeLogin){\r\n this.refreshLocation = setInterval(() =>\r\n this.onRefreshCurrentLocation(false), 5000);\r\n }\r\n if (sessionStorage.getItem(this.cryptoJsService.Encrypt('editBilledData'))) {\r\n this.editBilledData = Boolean(this.cryptoJsService.DecryptData(sessionStorage.getItem(this.cryptoJsService.Encrypt('editBilledData'))));\r\n }\r\n\r\n this.getGPSCoordinates();\r\n this.basicDetailsForm = this._fb.group({\r\n cropType: [null],\r\n cropId: [null],\r\n farmersName: ['', Validators.required],\r\n MIArea: ['', [Validators.required, Validators.min(1), (control: AbstractControl) => Validators.max(this.landArea)(control)]],\r\n });\r\n \r\n this.route.queryParams.subscribe((params) => {\r\n this.autoId = this.cryptoJsService.DecryptData(params.autoId);\r\n this.snapAppId = this.cryptoJsService.DecryptData(params.appId);\r\n \r\n if (tokenData && (tokenData.role == 'DMICADA' || tokenData.role == 'DD Associate')){\r\n this.getApplicationDetails(this.snapAppId);\r\n this.getExistingMIDetails(this.snapAppId);\r\n }else{\r\n this.isAppDetails2Loading = false;\r\n }\r\n\r\n if (this.autoId) {\r\n // if ((JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.AutoId) == this.autoId) {\r\n // this.physicalVerficationApplicationData = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n // this.setupGeoLocations(this.physicalVerficationApplicationData)\r\n // } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loader.start();\r\n this.isAppDetails1Loading = true;\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification(\r\n this.autoId,\r\n JSON.parse(payload)?.sub\r\n )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data: any) => {\r\n if(!this.isAppDetails2Loading){\r\n this.loader.close();\r\n }\r\n this.isAppDetails1Loading = false;\r\n // this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Taken', this.autoId, new Date(), 'Success');\r\n let Obj = {};\r\n if (\r\n sessionStorage.getItem('myPhysicalSurveyType') &&\r\n JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))\r\n ?.AutoId == this.autoId\r\n ) {\r\n this.selectedSurveyType = sessionStorage.getItem(\r\n 'myPhysicalSurveyType'\r\n );\r\n } else if (data.SurveyType) {\r\n this.selectedSurveyType = data.SurveyType;\r\n if(this.selectedSurveyType == 1){\r\n this.refreshLocation = setInterval(() =>{\r\n this.onRefreshCurrentLocation(true);\r\n }, 5000);\r\n }\r\n sessionStorage.setItem(\r\n 'myPhysicalSurveyType',\r\n JSON.stringify(this.selectedSurveyType)\r\n );\r\n }\r\n this.physicalVerficationApplicationData = data;\r\n this.landArea = data?.MIArea;\r\n\r\n if(data?.CropTypeId_PhySurvey && data?.CropTypeId_PhySurvey != 0){\r\n this.basicDetailsForm.controls.cropType.setValue(data?.CropTypeId_PhySurvey);\r\n this.getCropTypeName({value: data?.CropTypeId_PhySurvey}, data?.CropId_PhySurvey);\r\n // this.basicDetailsForm.controls.cropId.setValue(data?.CropId_PhySurvey);\r\n }\r\n if(this.jeLogin || (this.xenLogin && data?.SurveyType == 1)){\r\n this.basicDetailsForm.controls['cropType'].clearValidators();\r\n this.basicDetailsForm.controls['cropId'].clearValidators();\r\n this.basicDetailsForm.controls['cropType'].setValidators(Validators.required);\r\n this.basicDetailsForm.controls['cropId'].setValidators(Validators.required);\r\n }\r\n this.basicDetailsForm.controls['cropType'].updateValueAndValidity();\r\n this.basicDetailsForm.controls['cropId'].updateValueAndValidity();\r\n\r\n if((this.ddAssociateLogin || this.dimicadaLogin) && sessionStorage.getItem('PVModifiedLandArea') && JSON.parse(sessionStorage.getItem('PVModifiedLandArea'))?.autoId == this.autoId){\r\n let val = JSON.parse(sessionStorage.getItem('PVModifiedLandArea'))?.MIArea;\r\n if(!(val ==null || val == \"\")){\r\n this.basicDetailsForm.controls.MIArea.setValue(val);\r\n }else{\r\n this.basicDetailsForm.controls.MIArea.setValue(data?.MIArea);\r\n }\r\n }\r\n else{\r\n this.basicDetailsForm.controls.MIArea.setValue(data?.MIArea);\r\n }\r\n sessionStorage.setItem('miPhysicalApplicationData', JSON.stringify(data));\r\n Obj['listGPSCoordinatesPreEst'] = data.listGPSCoordinatesPreEst\r\n if(sessionStorage.getItem('miPhysicalAppJEGPSCoordinates') &&\r\n JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.AutoId == this.autoId\r\n && JSON.parse(sessionStorage.getItem('miPhysicalAppJEGPSCoordinates'))){\r\n Obj['listGPSCoordinatesJE'] = JSON.parse(sessionStorage.getItem('miPhysicalAppJEGPSCoordinates'))\r\n }else {\r\n Obj['listGPSCoordinatesJE'] = data.listGPSCoordinatesJE\r\n }\r\n if(sessionStorage.getItem('miPhysicalAppXENGPSCoordinates') \r\n && JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.AutoId == this.autoId &&\r\n JSON.parse(sessionStorage.getItem('miPhysicalAppXENGPSCoordinates'))){\r\n Obj['listGPSCoordinatesXEN'] = JSON.parse(sessionStorage.getItem('miPhysicalAppXENGPSCoordinates'))\r\n } else{\r\n Obj['listGPSCoordinatesXEN'] = data.listGPSCoordinatesXEN\r\n }\r\n this.setupGeoLocations(Obj)\r\n this.preEstimationDate = new Date(data?.PreEstDate ? data?.PreEstDate : \"01-01-01\")\r\n },\r\n error: (err) => {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: `Data error! Physical Applications not loaded. ${err}` });\r\n // this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Taken', this.autoId, new Date(), err);\r\n\r\n setTimeout(()=>{\r\n history.back();\r\n }, 1500)\r\n \r\n if(!this.isAppDetails2Loading){\r\n this.loader.close();\r\n }\r\n this.isAppDetails1Loading = false;\r\n }\r\n });\r\n // }\r\n } else {\r\n // this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be empty' });\r\n return;\r\n }\r\n\r\n }\r\n );\r\n\r\n }\r\n\r\n get basicDetailsFormControls() {\r\n return this.basicDetailsForm.controls;\r\n }\r\n\r\n onRefreshCurrentLocation(isXenLogin){\r\n if(isXenLogin){\r\n this.xenMapoverlays.forEach((val, index) => {\r\n if(val?.title == \"Current Location\"){\r\n this.xenMapoverlays.splice(index, 1); \r\n }\r\n })\r\n this.getCurrentLocation(isXenLogin);\r\n }else{\r\n this.jeMapoverlays.forEach((val, index) => {\r\n if(val?.title == \"Current Location\"){\r\n this.jeMapoverlays.splice(index, 1); \r\n }\r\n })\r\n this.getCurrentLocation(isXenLogin);\r\n }\r\n }\r\n\r\n getCurrentLocation(isXenLogin) {\r\n let overlay;\r\n if(isXenLogin){\r\n overlay = this.xenMapoverlays;\r\n }else{\r\n overlay = this.jeMapoverlays;\r\n }\r\n\r\n let mapEnable = this.mapEnable;\r\n let instant = this;\r\n \r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 10000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n const crd = pos.coords;\r\n const obj = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n if(isXenLogin){\r\n instant.xenMapoptions.center = obj;\r\n }else{\r\n instant.jeMapoptions.center = obj;\r\n }\r\n // const image = 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png';\r\n \r\n const currentLocationMarker = new google.maps.Marker({\r\n position: { lat: obj?.lat, lng: obj?.lng },\r\n title: 'Current Location',\r\n icon: '../../assets/map/location-icon-5.png',\r\n });\r\n\r\n overlay.push(currentLocationMarker) \r\n \r\n // instant.geolocationsarray.push(obj)\r\n // instant.onSave()\r\n // instant.addOverlay()\r\n if(isXenLogin){\r\n instant.mapEnableXEN = true;\r\n }else{\r\n instant.mapEnableJE = true;\r\n }\r\n }\r\n\r\n function error(err) {\r\n instant.isGPSError = true;\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access.'\r\n } else{\r\n detailsMsg = 'Please Refresh the Current Location.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg,\r\n });\r\n }\r\n\r\n // this.mapEnable = true;\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n // this.addOverlay();\r\n }\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n });\r\n }\r\n\r\n _getPosition(): Promise {\r\n // this.loader.start();\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n // this.loader.close();\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n // this.loader.close();\r\n // reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n onBasicDetailsFormSubmit() {\r\n if (sessionStorage.getItem('isRPCase') && sessionStorage.getItem('isRPCase') == 'true') {\r\n\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n message: 'Are you sure that you want to proceed this App as RP case?',\r\n header: 'Confirmation',\r\n icon: 'pi pi-exclamation-triangle',\r\n acceptIcon: \"none\",\r\n rejectIcon: \"none\",\r\n rejectButtonStyleClass: \"p-button-text\",\r\n accept: () => {\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params.autoId) {\r\n sessionStorage.setItem('miPhysicalAppJEGPSCoordinates', JSON.stringify(this.jegeolocationsarray));\r\n sessionStorage.setItem('miPhysicalAppXENGPSCoordinates', JSON.stringify(this.xengeolocationsarray));\r\n this.router.navigate([this.router.url.split('/')[1], 'application', 'attachment'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n );\r\n },\r\n reject: () => {\r\n this.selectedRPType = [];\r\n }\r\n });\r\n\r\n return;\r\n }\r\n\r\n this.isSubmitted = true;\r\n if(this.basicDetailsFormControls?.cropId?.errors || this.basicDetailsFormControls?.cropType?.errors){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n \"Fill the crop details properly\",\r\n });\r\n return;\r\n }\r\n if(this.basicDetailsFormControls?.MIArea?.errors){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n \"Fill the value of 'Area Surveyed' properly\",\r\n });\r\n return;\r\n }\r\n let geoCoordinateError = false;\r\n if (this.jeLogin) {\r\n this.jegeolocationsarray.forEach((array, index) => {\r\n if(array.length < 4){\r\n this.coordinateError = `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`,\r\n });\r\n geoCoordinateError = true; \r\n return;\r\n }\r\n })\r\n if((Math.abs(this.landArea - this.jeSurveyLandArea) >= 0.1*this.landArea)){\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: `Difference between Calculated Area (${this.landArea}) and Survey Area (${this.jeSurveyLandArea}) is more. Please recapture the coordinates.` });\r\n geoCoordinateError = true;\r\n return;\r\n }\r\n }else if((this.xenLogin && this.selectedSurveyType == 1)){\r\n this.xengeolocationsarray.forEach((array, index) => {\r\n if(array.length < 4){\r\n this.coordinateError = `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`,\r\n });\r\n geoCoordinateError = true; \r\n return;\r\n }\r\n })\r\n if((Math.abs(this.landArea - this.xenSurveyLandArea) >= 0.1*this.landArea)){\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: `Difference between Calculated Area (${this.landArea}) and Survey Area (${this.jeSurveyLandArea}) is more. Please recapture the coordinates.` });\r\n geoCoordinateError = true;\r\n return;\r\n }\r\n }\r\n\r\n let isPolygonPositionError = false;\r\n if(this.preEstimateCoordinates.length != 0 && this.preEstimateCoordinates[0].length != 0 && (this.jeLogin && this.preEstimationDate > new Date(\"03-22-23\") || (this.xenLogin && this.selectedSurveyType == 1 && this.preEstimationDate > new Date(\"03-22-23\")))){\r\n let preEstimate: any = this.preEstimateCoordinates;\r\n const preEstimateMerge = preEstimate.flat();\r\n \r\n if(this.xenLogin){\r\n let xenArray: any = this.xengeolocationsarray;\r\n const xenMergedArray = xenArray.flat();\r\n isPolygonPositionError = this.verifyCoordinates(preEstimateMerge, xenMergedArray, true);\r\n if(isPolygonPositionError){\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Captured GPS Coordinates are Not Matching' });\r\n return;\r\n }\r\n }else{\r\n let jeArray: any = this.jegeolocationsarray;\r\n const jeMergedArray = jeArray.flat();\r\n isPolygonPositionError = this.verifyCoordinates(preEstimateMerge, jeMergedArray, false);\r\n if(isPolygonPositionError){\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Captured GPS Coordinates are Not Matching' });\r\n return;\r\n }\r\n }\r\n }\r\n\r\n if(geoCoordinateError || isPolygonPositionError) {\r\n // this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES'\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please provide atleast 4 GPS Coordinates' });\r\n return;\r\n } \r\n // else if (this.jeLogin && this.jegeolocationsarray.length >= 4 && (Math.abs(this.landArea - this.jeSurveyLandArea) >= 0.1*this.landArea)) {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: `Difference between Calculated Area (${this.landArea}) and Survey Area (${this.jeSurveyLandArea}) is more. Please recapture the coordinates.` });\r\n // return;\r\n // } \r\n // else if (this.xenLogin && this.xengeolocationsarray.length < 4 && this.selectedSurveyType == 1) {\r\n // this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES'\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please provide atleast 4 GPS Coordinates' });\r\n // return;\r\n // } \r\n\r\n // else if(this.preEstimateCoordinates&& this.preEstimateCoordinates.length > 0 && !this.verifyCoordinates(this.preEstimateCoordinates, this.jegeolocationsarray, false) && this.jeLogin && this.preEstimationDate > new Date(\"03-22-23\")){\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Captured GPS Coordinates are Not Matching' });\r\n // } \r\n // else if(this.preEstimateCoordinates&& this.preEstimateCoordinates.length > 0 && !this.verifyCoordinates(this.preEstimateCoordinates, this.xengeolocationsarray, true) && this.xenLogin && this.selectedSurveyType == 1 && this.preEstimationDate > new Date(\"03-22-23\")){\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Captured GPS Coordinates are Not Matching' });\r\n // }\r\n else {\r\n if (this.xenLogin) {\r\n sessionStorage.setItem('xencoordinatesVerified', JSON.stringify(true));\r\n } else {\r\n sessionStorage.setItem('jecoordinatesVerified', JSON.stringify(true));\r\n }\r\n // let jegeoCoordinates = []\r\n // let xengeoCoordinates = []\r\n\r\n // for (let index = 0; index < this.jegeolocationsarray.length; index++) {\r\n // const gpsObj = {\r\n // \"cornerID\": index + 1,\r\n // \"latitude\": this.jegeolocationsarray[index].lat,\r\n // \"longitude\": this.jegeolocationsarray[index].lng\r\n // }\r\n // jegeoCoordinates.push(gpsObj);\r\n // }\r\n // for (let index = 0; index < this.xengeolocationsarray.length; index++) {\r\n // const xengpsObj = {\r\n // \"cornerID\": index + 1,\r\n // \"latitude\": this.xengeolocationsarray[index].lat,\r\n // \"longitude\": this.xengeolocationsarray[index].lng\r\n // }\r\n // xengeoCoordinates.push(xengpsObj);\r\n // }\r\n if(sessionStorage.getItem('userRole')=='DD Associate'){\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params.autoId) {\r\n sessionStorage.setItem('miPhysicalAppJEGPSCoordinates', JSON.stringify(this.jegeolocationsarray));\r\n sessionStorage.setItem('miPhysicalAppXENGPSCoordinates', JSON.stringify(this.xengeolocationsarray));\r\n this.router.navigate([this.router.url.split('/')[1], 'application', 'image-attachment'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n );\r\n }\r\n else{\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params.autoId) {\r\n sessionStorage.setItem('miPhysicalAppJEGPSCoordinates', JSON.stringify(this.jegeolocationsarray));\r\n sessionStorage.setItem('miPhysicalAppXENGPSCoordinates', JSON.stringify(this.xengeolocationsarray));\r\n this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n );\r\n }\r\n }\r\n\r\n }\r\n\r\n addMarkers(row: any, index, tableNo) {\r\n this.jeMapoverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: `${row?.CornerID}`,\r\n // draggable: false,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n addOverlay() {\r\n this.jegeolocationsarray.forEach(arr => {\r\n this.jeMapoverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n\r\n setTimeout(()=> this.calculateSurveyArea(false), 1000);\r\n }\r\n\r\n xenAddOverlay() {\r\n this.xengeolocationsarray.forEach(arr => {\r\n this.xenMapoverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n\r\n setTimeout(()=> this.calculateSurveyArea(true), 1000);\r\n }\r\n xenAddMarkers(row: any, index, tableNo) {\r\n this.xenMapoverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: `${row?.CornerID}`,\r\n // draggable: false,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n calculateSurveyArea(isXenLogin){\r\n let area = 0;\r\n if(isXenLogin){\r\n this.xengeolocationsarray.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.xenSurveyLandArea = Number((0.000247105*area).toFixed(2));\r\n\r\n }else{\r\n this.jegeolocationsarray.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.jeSurveyLandArea = Number((0.000247105*area).toFixed(2));\r\n }\r\n }\r\n\r\n calculateLandArea(polygon){\r\n return google?.maps?.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n preEstimationAddOverlay() {\r\n this.preEstimateCoordinates.forEach((array)=> {\r\n this.preEstimationMapoverlays.push(new google.maps.Polygon({\r\n paths: array,\r\n strokeOpacity: 0.5, strokeWeight: 1, fillColor: '#1976D2', fillOpacity: 0.35\r\n }))\r\n })\r\n\r\n setTimeout(()=>this.calSurveyAreaPreEst(), 1000);\r\n // this.preEstimationMapoverlays.push(new google.maps.Polygon({\r\n // paths: this.preEstimationGeolocationsArray,\r\n // strokeOpacity: 0.5, strokeWeight: 1, fillColor: '#1976D2', fillOpacity: 0.35\r\n // }))\r\n }\r\n\r\n calSurveyAreaPreEst(){\r\n let area = 0;\r\n this.preEstimateCoordinates.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.preEstSurveyLandArea = Number((0.000247105*area).toFixed(2));\r\n }\r\n \r\n preEstimationAddMarkers(row: any, index) {\r\n this.preEstimationMapoverlays.push(new google.maps.Marker({ \r\n position: { lat: row?.lat, lng: row?.lng }, \r\n title: row?.CornerID\r\n }))\r\n }\r\n\r\n onCapture(xenlogin, index) {\r\n this.cdr.detectChanges();\r\n let instant = this;\r\n this.coordinateError = ''\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 5000,\r\n maximumAge: 0\r\n };\r\n\r\n function success(pos) {\r\n let isExist = false\r\n if(xenlogin) {\r\n isExist = instant.xengeolocationsarray[index].find(data=>{ \r\n if(\r\n data.latitude == pos.coords.latitude && \r\n data.longitude == pos.coords.longitude)\r\n {\r\n return data\r\n }})\r\n } else {\r\n isExist = instant.jegeolocationsarray[index].find((data) => {\r\n if (\r\n data.latitude == pos.coords.latitude &&\r\n data.longitude == pos.coords.longitude\r\n ) {\r\n return data;\r\n }\r\n });\r\n }\r\n if(isExist) {\r\n instant.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please move to a different location to get new coordinates.' });\r\n } else{\r\n const obj = {\r\n CornerID: xenlogin ? `Polygon ${index+1} : Coordinate ${instant.xengeolocationsarray[index].length + 1}` : `Polygon ${index+1} : Coordinate ${instant.jegeolocationsarray[index].length + 1}`,\r\n cornerID: xenlogin ? `Polygon ${index+1} : Coordinate ${instant.xengeolocationsarray[index].length + 1}` : `Polygon ${index+1} : Coordinate ${instant.jegeolocationsarray[index].length + 1}`,\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n latitude: pos.coords.latitude,\r\n longitude: pos.coords.longitude\r\n }\r\n xenlogin ? instant.xengeolocationsarray[index].push(obj) : instant.jegeolocationsarray[index].push(obj)\r\n\r\n // Check for self-intersections before allowing the polygon creation\r\n if (instant.isSelfIntersecting(xenlogin ? instant.xengeolocationsarray[index] : instant.jegeolocationsarray[index])) {\r\n // this.onDelect(this.geolocationsarray.length - 1);\r\n xenlogin ? instant.xengeolocationsarray[index].pop() : instant.jegeolocationsarray[index].pop()\r\n alert('Polygon is invalid due to intersecting edges. Please redraw.');\r\n return;\r\n }else { \r\n instant.onSave(xenlogin, index);\r\n }\r\n }\r\n }\r\n\r\n function error(err) {\r\n }\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n }\r\n\r\n }\r\n\r\n // onDrag(event) {\r\n // let index = -1;\r\n // index = event?.overlay?.title ? event?.overlay?.title.split(' ')[1] : -1;\r\n // if (index >= 1) {\r\n // this.jegeolocationsarray[index - 1].lat = event?.overlay?.position?.lat();\r\n // this.jegeolocationsarray[index - 1].lng = event?.overlay?.position?.lng();\r\n\r\n // this.removeOverlay();\r\n // this.addOverlay();\r\n // }\r\n // }\r\n\r\n onDrag(isXenLogin, event) {\r\n if(isXenLogin){\r\n let indexVal = this.getTableAndCoordinateVal(isXenLogin, event?.overlay?.title)\r\n let index = indexVal?.coordinateValue ? indexVal?.coordinateValue : 1;\r\n let tableNo = indexVal?.polygonIndex ? indexVal?.polygonIndex : 1;\r\n \r\n if (index >= 1) {\r\n this.xengeolocationsarray[tableNo - 1][index - 1].lat = event?.overlay?.position?.lat();\r\n this.xengeolocationsarray[tableNo - 1][index - 1].latitude = event?.overlay?.position?.lat();\r\n this.xengeolocationsarray[tableNo - 1][index - 1].lng = event?.overlay?.position?.lng();\r\n this.xengeolocationsarray[tableNo - 1][index - 1].longitude = event?.overlay?.position?.lng();\r\n \r\n this.xenRemoveOverlay();\r\n this.xenAddOverlay();\r\n // this.removeOverlay();\r\n // this.addOverlay();\r\n }\r\n\r\n }else {\r\n let indexVal = this.getTableAndCoordinateVal(isXenLogin, event?.overlay?.title) \r\n let index = indexVal?.coordinateValue ? indexVal?.coordinateValue : 1;\r\n let tableNo = indexVal?.polygonIndex ? indexVal?.polygonIndex : 1;\r\n \r\n if (index >= 1) {\r\n this.jegeolocationsarray[tableNo - 1][index - 1].lat = event?.overlay?.position?.lat();\r\n this.jegeolocationsarray[tableNo - 1][index - 1].latitude = event?.overlay?.position?.lat();\r\n this.jegeolocationsarray[tableNo - 1][index - 1].lng = event?.overlay?.position?.lng();\r\n this.jegeolocationsarray[tableNo - 1][index - 1].longitude = event?.overlay?.position?.lng();\r\n \r\n this.removeOverlay();\r\n this.addOverlay();\r\n }\r\n }\r\n \r\n }\r\n\r\n getTableAndCoordinateVal(isXenLogin, val) {\r\n let polygonIndex = null; // Default to null if not present\r\n let coordinateValue = null; // Default to null if not present\r\n\r\n // Match both patterns\r\n const polygonMatch = val.match(/Polygon\\s+(\\d+)/);\r\n const coordinateMatch = val.match(/Coordinate\\s+(\\d+)/);\r\n\r\n // Extract polygon index if it exists\r\n if (polygonMatch) {\r\n polygonIndex = parseInt(polygonMatch[1], 10);\r\n }\r\n\r\n // Extract coordinate value if it exists\r\n if (coordinateMatch) {\r\n coordinateValue = parseInt(coordinateMatch[1], 10);\r\n }\r\n\r\n return { polygonIndex, coordinateValue };\r\n }\r\n\r\n removeOverlay() {\r\n this.jeMapoverlays.pop().setMap(null);\r\n }\r\n\r\n xenRemoveOverlay() {\r\n this.xenMapoverlays.pop().setMap(null);\r\n }\r\n\r\n isSelfIntersecting(coordsArray) {\r\n for (let i = 0; i < coordsArray.length - 1; i++) {\r\n for (let j = i + 2; j < coordsArray.length; j++) {\r\n // Prevent checking consecutive edges or the last edge with the first one\r\n if (i === 0 && j === coordsArray.length - 1) continue;\r\n if (this.doLinesIntersect(coordsArray[i], coordsArray[i + 1], coordsArray[j], coordsArray[(j + 1) % coordsArray.length])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n doLinesIntersect(p1, q1, p2, q2) {\r\n // Helper function to calculate orientation of the points\r\n function orientation(p, q, r) {\r\n let val = (q.lat - p.lat) * (r.lng - q.lng) - (q.lng - p.lng) * (r.lat - q.lat);\r\n if (val === 0) return 0; // collinear\r\n return (val > 0) ? 1 : 2; // clock or counterclockwise\r\n }\r\n\r\n // Check the four orientations needed for the general and special cases\r\n let o1 = orientation(p1, q1, p2);\r\n let o2 = orientation(p1, q1, q2);\r\n let o3 = orientation(p2, q2, p1);\r\n let o4 = orientation(p2, q2, q1);\r\n\r\n // General case\r\n if (o1 !== o2 && o3 !== o4) return true;\r\n\r\n // Special cases\r\n // p1, q1, p2 are collinear and p2 lies on segment p1q1\r\n if (o1 === 0 && this.onSegment(p1, p2, q1)) return true;\r\n\r\n // p1, q1, q2 are collinear and q2 lies on segment p1q1\r\n if (o2 === 0 && this.onSegment(p1, q2, q1)) return true;\r\n\r\n // p2, q2, p1 are collinear and p1 lies on segment p2q2\r\n if (o3 === 0 && this.onSegment(p2, p1, q2)) return true;\r\n\r\n // p2, q2, q1 are collinear and q1 lies on segment p2q2\r\n if (o4 === 0 && this.onSegment(p2, q1, q2)) return true;\r\n\r\n return false;\r\n }\r\n\r\n onSegment(p, q, r) {\r\n return q.lng <= Math.max(p.lng, r.lng) && q.lng >= Math.min(p.lng, r.lng) &&\r\n q.lat <= Math.max(p.lat, r.lat) && q.lat >= Math.min(p.lat, r.lat);\r\n }\r\n\r\n // onDelect(i, xenlogin) {\r\n // if(xenlogin) {\r\n // this.xengeolocationsarray.splice(i, 1);\r\n // for (let index = 0; index < this.xengeolocationsarray.length; index++) {\r\n // this.xengeolocationsarray[index].CornerID = index + 1;\r\n // this.xengeolocationsarray[index].cornerID = index + 1;\r\n // }\r\n // if (this.xengeolocationsarray.length == 0) {\r\n // this.mapEnable = false;\r\n // } else {\r\n // this.xenMapoptions.center = this.xengeolocationsarray[0]\r\n // this.mapEnable = false;\r\n // this.mapEnable = true;\r\n // this.xenMapoverlays = []\r\n // this.xengeolocationsarray.forEach((row, index) => {\r\n // this.xenAddMarkers(row, index,)\r\n // });\r\n // this.xenAddOverlay()\r\n // }\r\n // }else {\r\n // this.jegeolocationsarray.splice(i, 1);\r\n // for (let index = 0; index < this.jegeolocationsarray.length; index++) {\r\n // this.jegeolocationsarray[index].CornerID = index + 1;\r\n // this.jegeolocationsarray[index].cornerID = index + 1;\r\n // }\r\n // if (this.jegeolocationsarray.length == 0) {\r\n // this.mapEnable = false;\r\n // } else {\r\n // this.jeMapoptions.center = this.jegeolocationsarray[0]\r\n // this.mapEnable = false;\r\n // this.mapEnable = true;\r\n // this.jeMapoverlays = []\r\n // this.jegeolocationsarray.forEach((row, index) => {\r\n // this.addMarkers(row, index)\r\n // });\r\n // this.addOverlay()\r\n // }\r\n // }\r\n // sessionStorage.setItem('miPhysicalAppJEGPSCoordinates', JSON.stringify(this.jegeolocationsarray));\r\n // sessionStorage.setItem('miPhysicalAppXENGPSCoordinates', JSON.stringify(this.xengeolocationsarray));\r\n // }\r\n\r\n onDeleteCoordinate(isXenLogin, i, tableNo) {\r\n if(isXenLogin){\r\n this.xengeolocationsarray[tableNo].splice(i, 1);\r\n for (let index = 0; index < this.xengeolocationsarray[tableNo].length; index++) {\r\n this.xengeolocationsarray[tableNo][index].CornerID = `Polygon ${tableNo+1} : Coordinate ${index + 1}` ;\r\n } \r\n \r\n if(this.xengeolocationsarray[tableNo].length > 0){\r\n this.onSave(isXenLogin, tableNo);\r\n }else{\r\n this.onSave(isXenLogin, 0);\r\n }\r\n }else{\r\n this.jegeolocationsarray[tableNo].splice(i, 1);\r\n for (let index = 0; index < this.jegeolocationsarray[tableNo].length; index++) {\r\n this.jegeolocationsarray[tableNo][index].CornerID = `Polygon ${tableNo+1} : Coordinate ${index + 1}` ;\r\n } \r\n \r\n if(this.jegeolocationsarray[tableNo].length > 0){\r\n this.onSave(isXenLogin, tableNo);\r\n }else{\r\n this.onSave(isXenLogin, 0);\r\n }\r\n } \r\n }\r\n\r\n onDeleteNewPolygon(isXenLogin, i){\r\n if(isXenLogin){\r\n if (i >= 0 && i < this.xengeolocationsarray.length) {\r\n this.xengeolocationsarray.splice(i, 1);\r\n \r\n // Renaming the remaining polygon corner IDs\r\n for (let j = 0; j < this.xengeolocationsarray.length; j++) {\r\n for (let k = 0; k < this.xengeolocationsarray[j].length; k++) {\r\n this.xengeolocationsarray[j][k].CornerID = `Polygon ${j + 1} : Coordinate ${k + 1}`;\r\n }\r\n }\r\n \r\n this.onSave(isXenLogin, 0);\r\n \r\n } else {\r\n console.error(\"Index out of bounds\");\r\n }\r\n }else{\r\n if (i >= 0 && i < this.jegeolocationsarray.length) {\r\n this.jegeolocationsarray.splice(i, 1);\r\n \r\n // Renaming the remaining polygon corner IDs\r\n for (let j = 0; j < this.jegeolocationsarray.length; j++) {\r\n for (let k = 0; k < this.jegeolocationsarray[j].length; k++) {\r\n this.jegeolocationsarray[j][k].CornerID = `Polygon ${j + 1} : Coordinate ${k + 1}`;\r\n }\r\n }\r\n \r\n this.onSave(isXenLogin, 0);\r\n \r\n } else {\r\n console.error(\"Index out of bounds\");\r\n }\r\n }\r\n \r\n }\r\n \r\n onStartNewPolygon(isXenLogin, index){\r\n if(isXenLogin){\r\n this.xengeolocationsarray.push([]);\r\n this.cdr.detectChanges();\r\n }else{\r\n this.jegeolocationsarray.push([]);\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n onSave(xenlogin, tableNo) {\r\n this.coordinateError = '';\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n if(xenlogin){\r\n this.xenMapoptions.center = this.xengeolocationsarray[tableNo][0]\r\n this.xenMapoverlays = []\r\n this.xengeolocationsarray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.xenAddMarkers(row, index, tableIndex)\r\n })\r\n });\r\n this.xenAddOverlay()\r\n } else {\r\n this.jeMapoptions.center = this.jegeolocationsarray[tableNo][0]\r\n this.jeMapoverlays = []\r\n this.jegeolocationsarray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.addMarkers(row, index, tableIndex)\r\n })\r\n });\r\n this.addOverlay()\r\n }\r\n\r\n\r\n sessionStorage.setItem('miPhysicalAppJEGPSCoordinates', JSON.stringify(this.jegeolocationsarray));\r\n sessionStorage.setItem('miPhysicalAppXENGPSCoordinates', JSON.stringify(this.xengeolocationsarray));\r\n\r\n // if(this.xenLogin && this.xengeolocationsarray && this.xengeolocationsarray > 3) {\r\n\r\n // this.verifyCoordinates(this.preEstimateCoordinates, this.xengeolocationsarray, true)\r\n // } else if(this.jeLogin && this.jegeolocationsarray && this.jegeolocationsarray.length > 0){\r\n // let jeArray: any = this.jegeolocationsarray;\r\n // const jeMergedArray = jeArray.flat();\r\n // let preEstimate: any = this.preEstimateCoordinates;\r\n // const preEstimateMerge = preEstimate.flat();\r\n\r\n // this.verifyCoordinates(preEstimateMerge, jeMergedArray, false)\r\n // // this.verifyCoordinates(this.preEstimateCoordinates, this.jegeolocationsarray, false)\r\n // }\r\n }\r\n\r\n verifyCoordinates(coordinates1, coordinates2, xenlogin) {\r\n let element1coordinatelat = 0\r\n let element1coordinatelng = 0\r\n let element2coordinatelat = 0\r\n let element2coordinatelng = 0\r\n for (let index = 0; index < coordinates1.length; index++) {\r\n element1coordinatelat = element1coordinatelat + coordinates1[index].latitude;\r\n element1coordinatelng = element1coordinatelng + coordinates1[index].longitude;\r\n }\r\n for (let index = 0; index < coordinates2.length; index++) {\r\n element2coordinatelat = element2coordinatelat + coordinates2[index].latitude;\r\n element2coordinatelng = element2coordinatelng + coordinates2[index].longitude;\r\n }\r\n const x1latitude = element1coordinatelat / coordinates1.length\r\n const y1logitude = element1coordinatelng / coordinates1.length\r\n const x2latitude = element2coordinatelat / coordinates2.length\r\n const y2logitude = element2coordinatelng / coordinates2.length\r\n let distance = this.distance(x1latitude, y1logitude, x2latitude, y2logitude)\r\n if(!this.preEstimateCoordinates || (this.preEstimateCoordinates && this.preEstimateCoordinates.length == 1 && this.preEstimateCoordinates?.[0]?.length == 0)) {\r\n sessionStorage.setItem('xencoordinatesVerified', JSON.stringify(true));\r\n sessionStorage.setItem('jecoordinatesVerified', JSON.stringify(true));\r\n return true\r\n } else if (distance > 70) {\r\n if (xenlogin) {\r\n sessionStorage.setItem('xencoordinatesVerified', JSON.stringify(true));\r\n } else {\r\n sessionStorage.setItem('jecoordinatesVerified', JSON.stringify(true));\r\n }\r\n return true\r\n }else{\r\n if (xenlogin) {\r\n sessionStorage.setItem('xencoordinatesVerified', JSON.stringify(false));\r\n } else {\r\n sessionStorage.setItem('jecoordinatesVerified', JSON.stringify(false));\r\n } return false\r\n }\r\n }\r\n\r\n\r\n distance(lat1, lon1, lat2, lon2) {\r\n const R = 6371e3; // metres\r\n const radlat1 = lat1 * Math.PI / 180; // radlat1, radlat2 in radians\r\n const radlat2 = lat2 * Math.PI / 180;\r\n const radlon1 = (lat2 - lat1) * Math.PI / 180;\r\n const radlon2 = (lon2 - lon1) * Math.PI / 180;\r\n const a = Math.sin(radlon1 / 2) * Math.sin(radlon1 / 2) +\r\n Math.cos(radlat1) * Math.cos(radlat2) *\r\n Math.sin(radlon2 / 2) * Math.sin(radlon2 / 2);\r\n const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\r\n\r\n const d = R * c; // in metres\r\n return d\r\n }\r\n\r\n setupGeoLocations(data){\r\n // data = {\r\n // ...data,\r\n // listGPSCoordinatesJE : [[]],\r\n // listGPSCoordinatesXEN : [[]],\r\n // }\r\n this.mapEnableJE = false;\r\n this.mapEnableXEN = false;\r\n this.jeMapoverlays = [];\r\n this.xenMapoverlays = [];\r\n this.preEstimateCoordinates = data.listGPSCoordinatesPreEst;\r\n this.jegeolocationsarray = data.listGPSCoordinatesJE;\r\n this.xengeolocationsarray = data.listGPSCoordinatesXEN;\r\n // this.preEstimationGeolocationsArray = data?.listGPSCoordinatesPreEst;\r\n\r\n\r\n this.preEstimateCoordinates = this.preEstimateCoordinates.map((array, index)=>{\r\n return array.map((data)=> ({\r\n CornerID : data.CornerID,\r\n latitude : data.Latitude,\r\n longitude : data.Longitude,\r\n lat : data.Latitude,\r\n lng : data.Longitude,\r\n }))\r\n })\r\n \r\n if (data.listGPSCoordinatesJE && data.listGPSCoordinatesJE.length > 0) {\r\n data.listGPSCoordinatesJE = data.listGPSCoordinatesJE.map((array, tableIndex)=> {\r\n return array.map((val, index)=>({\r\n latitude : val.Latitude ? val.Latitude : val.latitude,\r\n longitude : val.Longitude ? val.Longitude : val.longitude,\r\n lat : val.Latitude ? val.Latitude : val.latitude,\r\n lng : val.Longitude ? val.Longitude : val.longitude,\r\n CornerID : val.CornerID ? val.CornerID : val.cornerID,\r\n cornerID : val.CornerID ? val.CornerID : val.cornerID\r\n }))\r\n })\r\n\r\n // for (let index = 0; index < data.listGPSCoordinatesJE.length; index++) {\r\n // data.listGPSCoordinatesJE[index].latitude = data.listGPSCoordinatesJE[index].Latitude ? data.listGPSCoordinatesJE[index].Latitude : data.listGPSCoordinatesJE[index].latitude\r\n // data.listGPSCoordinatesJE[index].longitude = data.listGPSCoordinatesJE[index].Longitude ? data.listGPSCoordinatesJE[index].Longitude : data.listGPSCoordinatesJE[index].longitude\r\n // data.listGPSCoordinatesJE[index].lat = data.listGPSCoordinatesJE[index].latitude\r\n // data.listGPSCoordinatesJE[index].lng = data.listGPSCoordinatesJE[index].longitude\r\n // data.listGPSCoordinatesJE[index].cornerID = data.listGPSCoordinatesJE[index].CornerID ? data.listGPSCoordinatesJE[index].CornerID : data.listGPSCoordinatesJE[index].cornerID\r\n // }\r\n this.jegeolocationsarray = data.listGPSCoordinatesJE\r\n sessionStorage.setItem('miPhysicalAppJEGPSCoordinates', JSON.stringify(this.jegeolocationsarray));\r\n // this.verifyCoordinates(this.preEstimateCoordinates, this.jegeolocationsarray, false)\r\n }\r\n\r\n if (data.listGPSCoordinatesXEN && data.listGPSCoordinatesXEN.length > 0) {\r\n data.listGPSCoordinatesXEN = data.listGPSCoordinatesXEN.map((array, tableIndex)=> {\r\n return array.map((val, index)=>({\r\n latitude : val.Latitude ? val.Latitude : val.latitude,\r\n longitude : val.Longitude ? val.Longitude : val.longitude,\r\n lat : val.Latitude ? val.Latitude : val.latitude,\r\n lng : val.Longitude ? val.Longitude : val.longitude,\r\n CornerID : val.CornerID ? val.CornerID : val.cornerID,\r\n cornerID : val.CornerID ? val.CornerID : val.cornerID\r\n }))\r\n })\r\n\r\n // for (let index = 0; index < data.listGPSCoordinatesXEN.length; index++) {\r\n // data.listGPSCoordinatesXEN[index].latitude = data.listGPSCoordinatesXEN[index].Latitude? data.listGPSCoordinatesXEN[index].Latitude : data.listGPSCoordinatesXEN[index].latitude\r\n // data.listGPSCoordinatesXEN[index].longitude = data.listGPSCoordinatesXEN[index].Longitude? data.listGPSCoordinatesXEN[index].Longitude : data.listGPSCoordinatesXEN[index].longitude\r\n // data.listGPSCoordinatesXEN[index].lat = data.listGPSCoordinatesXEN[index].latitude\r\n // data.listGPSCoordinatesXEN[index].lng = data.listGPSCoordinatesXEN[index].longitude\r\n // data.listGPSCoordinatesXEN[index].cornerID = data.listGPSCoordinatesXEN[index].CornerID? data.listGPSCoordinatesXEN[index].CornerID : data.listGPSCoordinatesXEN[index].cornerID\r\n // }\r\n this.xengeolocationsarray = data.listGPSCoordinatesXEN;\r\n sessionStorage.setItem('miPhysicalAppXENGPSCoordinates', JSON.stringify(this.xengeolocationsarray));\r\n // this.verifyCoordinates(this.preEstimateCoordinates, this.xengeolocationsarray, true)\r\n }\r\n\r\n if(this.preEstimateCoordinates && this.preEstimateCoordinates.length > 0) {\r\n this.preEstimateMapoptions.center = this.preEstimateCoordinates[0][0]\r\n this.mapEnable = true;\r\n this.preEstimateCoordinates.forEach((array, i) => {\r\n array.forEach((row, index) => {\r\n this.preEstimationAddMarkers(row, index)\r\n })\r\n });\r\n this.preEstimationAddOverlay()\r\n }\r\n\r\n // if(this.xengeolocationsarray && this.xengeolocationsarray.length > 0) {\r\n // this.xenMapoptions.center = this.xengeolocationsarray[0]\r\n // this.mapEnable = true;\r\n // this.xengeolocationsarray.forEach((row, index) => {\r\n // this.xenAddMarkers(row)\r\n // });\r\n // this.xenAddOverlay()\r\n // }\r\n\r\n if(this.jegeolocationsarray && this.jegeolocationsarray?.[0].length > 0) {\r\n this.mapEnableJE = true;\r\n this.jeMapoptions.center = this.jegeolocationsarray[0][0];\r\n this.jeMapoverlays = [];\r\n this.jegeolocationsarray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.addMarkers(row, index, tableIndex)\r\n })\r\n });\r\n this.addOverlay()\r\n }\r\n\r\n if(this.xengeolocationsarray && this.xengeolocationsarray?.[0].length > 0){\r\n this.mapEnableXEN = true;\r\n this.xenMapoptions.center = this.xengeolocationsarray[0][0];\r\n this.xenMapoverlays = [];\r\n this.xengeolocationsarray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.xenAddMarkers(row, index, tableIndex)\r\n })\r\n });\r\n this.xenAddOverlay()\r\n }\r\n\r\n // if(this.jegeolocationsarray && this.jegeolocationsarray.length > 0) {\r\n // this.jeMapoptions.center = this.jegeolocationsarray[0]\r\n // this.mapEnable = true;\r\n // this.jegeolocationsarray.forEach((row, index) => {\r\n // this.addMarkers(row)\r\n // });\r\n // this.addOverlay()\r\n // }\r\n \r\n }\r\n\r\n getSurveyType(event){\r\n if(this.xenLogin && event == 1){\r\n this.basicDetailsForm.controls['cropType'].clearValidators();\r\n this.basicDetailsForm.controls['cropId'].clearValidators();\r\n this.basicDetailsForm.controls['cropType'].setValidators(Validators.required);\r\n this.basicDetailsForm.controls['cropId'].setValidators(Validators.required);\r\n\r\n this.refreshLocation = setInterval(() =>{\r\n this.onRefreshCurrentLocation(true);\r\n }, 5000);\r\n }else{\r\n if (this.refreshLocation) {\r\n clearTimeout(this.refreshLocation);\r\n }\r\n this.basicDetailsForm.controls['cropType'].clearValidators();\r\n this.basicDetailsForm.controls['cropId'].clearValidators();\r\n }\r\n this.basicDetailsForm.controls['cropType'].updateValueAndValidity();\r\n this.basicDetailsForm.controls['cropId'].updateValueAndValidity();\r\n\r\n this.selectedSurveyType = event\r\n sessionStorage.setItem('myPhysicalSurveyType', JSON.stringify(event));\r\n }\r\n\r\n ngOnDestroy() {\r\n // sessionStorage.removeItem('miPhysicalAppJEGPSCoordinates');\r\n // sessionStorage.setItem('miPhysicalApplicationData', JSON.stringify(data));\r\n if(this.physicalVerficationApplicationData?.MIArea != this.basicDetailsForm.controls.MIArea.value){\r\n sessionStorage.setItem('PVModifiedLandArea', JSON.stringify({ autoId: this.autoId, MIArea: this.basicDetailsForm.controls.MIArea.value}));\r\n let miPhysicalApplicationData = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n if(miPhysicalApplicationData){\r\n miPhysicalApplicationData.MIArea = this.basicDetailsForm.controls.MIArea.value;\r\n }\r\n sessionStorage.setItem('miPhysicalApplicationData', JSON.stringify(miPhysicalApplicationData));\r\n }\r\n\r\n let MI_PV_Data = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n if(MI_PV_Data){\r\n MI_PV_Data.CropTypeId_PV = this.basicDetailsForm.controls.cropType.value;\r\n MI_PV_Data.CropId_PV = this.basicDetailsForm.controls.cropId.value;\r\n }\r\n sessionStorage.setItem('miPhysicalApplicationData', JSON.stringify(MI_PV_Data));\r\n\r\n if (this.refreshLocation) {\r\n clearTimeout(this.refreshLocation);\r\n }\r\n }\r\n\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.cropTypeList = files;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropTypeName(event, ...args) {\r\n const data = this.cropTypeList.find((element) => element.data == event.value);\r\n if (data) {\r\n this.cropBasedNames = data.children;\r\n if(args.length > 0){\r\n this.basicDetailsForm.controls.cropId.setValue(args[0]);\r\n }\r\n } else {\r\n this.cropBasedNames = [];\r\n }\r\n }\r\n\r\n onSelectRPCase(event) {\r\n if (this.selectedRPType.length > 0) {\r\n sessionStorage.setItem('isRPCase', 'true');\r\n } else {\r\n sessionStorage.removeItem('isRPCase');\r\n }\r\n }\r\n\r\n getApplicationDetails(appId) {\r\n this.loader.start();\r\n this.isAppDetails2Loading = true;\r\n\r\n this._dashboardService.getApplicationByAppId(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp: any) => {\r\n if(!this.isAppDetails1Loading){\r\n this.loader.close();\r\n }\r\n this.isAppDetails2Loading = false;\r\n\r\n if (resp) {\r\n this.applicationDetails = resp;\r\n }else {\r\n this.applicationDetails = null;\r\n this.messageService.add({ \r\n severity: 'error', \r\n summary: 'Error Message', \r\n detail: `Data error! Application details not loaded` \r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.applicationDetails = null;\r\n \r\n if(!this.isAppDetails1Loading){\r\n this.loader.close();\r\n }\r\n this.isAppDetails2Loading = false;\r\n\r\n this.messageService.add({ \r\n severity: 'error', \r\n summary: 'Error Message', \r\n detail: `Data error! Physical Applications not loaded. ${err}` \r\n });\r\n }\r\n })\r\n }\r\n\r\n getExistingMIDetails(appId){\r\n this._dashboardService.getExistingMIDetails(appId).subscribe((res) =>{\r\n this.existingMIDetails = res;\r\n })\r\n }\r\n\r\n beforeCheckingLandStatus(val){\r\n this.selLandForOwnerdetails = val;\r\n this.displayLandOwnerDialog = true;\r\n }\r\n\r\n startLoadingAnimation(): void {\r\n this.interval = setInterval(() => {\r\n this.dotCount = (this.dotCount + 1) % (this.maxDots + 1);\r\n this.loadingText = `Fetching Owner Details from Land Revenue Department${'.'.repeat(this.dotCount)}`;\r\n }, 500); // Adjust the interval (in ms) to control the speed of the animation\r\n }\r\n\r\n stopLoadingAnimation(): void {\r\n if (this.interval) {\r\n clearInterval(this.interval);\r\n }\r\n }\r\n\r\n onCloseLandOwnerDialog(){\r\n this.displayLandOwnerDialog = false;\r\n this.stopLoadingAnimation();\r\n this.selLandForOwnerdetails = null;\r\n this.kewatNo = null;\r\n \r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = null;\r\n }\r\n\r\n submitKewatNo(){\r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = null;\r\n if(this.kewatNo){\r\n this.checkLandStatus(this.selLandForOwnerdetails);\r\n }\r\n }\r\n\r\n checkLandStatus(val){\r\n this.startLoadingAnimation();\r\n // this.displayLandOwnerDialog = true;\r\n let reqBody1 = {\r\n districtCode: val?.R_Dis_Code,\r\n tehsilCode: val?.R_Teh_Code,\r\n nvCode: val?.R_Rev_Code,\r\n khewat: this.kewatNo,\r\n format: \"json\",\r\n farmerId: val?.farmerId\r\n }\r\n\r\n // let reqBody1 = {\r\n // \"districtCode\": \"02\",\r\n // \"tehsilCode\": \"007\",\r\n // \"nvCode\": \"01931\",\r\n // \"khewat\": this.kewatNo,\r\n // \"format\": \"json\"\r\n // }\r\n\r\n // let reqBody2 = { \r\n // \"districtCode\": \"02\", \r\n // \"tehsilCode\": \"007\", \r\n // \"nvCode\": \"01931\", \r\n // \"format\": \"json\"\r\n // }\r\n\r\n // let reqBody2 = {\r\n // districtCode: val?.R_Dis_Code,\r\n // tehsilCode: val?.R_Teh_Code,\r\n // nvCode: val?.R_Rev_Code,\r\n // format: \"json\"\r\n // }\r\n\r\n this.getLandOwnerDetails(reqBody1);\r\n // this.getLandKhewatDetails(reqBody2);\r\n }\r\n\r\n getLandOwnerDetails(reqBody){\r\n // this.loader.start();\r\n this.isLandOwnerDetFetching = true;\r\n this.vendorService \r\n .getLandOwnersDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => { \r\n this.loader.close();\r\n this.stopLoadingAnimation();\r\n // this.isLandOwnerDetFetching = false;\r\n if (resp?.length > 0) {\r\n this.landOwnerDetails = resp;\r\n this.landOwnerDetailsErrorMsg = null;\r\n\r\n let reqBody1 = {\r\n \"districtCode\": reqBody.districtCode,\r\n \"tehsilCode\": reqBody.tehsilCode,\r\n \"nvCode\": reqBody?.nvCode,\r\n \"khewat\": reqBody?.khewat,\r\n \"format\": \"json\"\r\n }\r\n this.getLandGetAreaByKhewat(reqBody)\r\n this.getKhasraAreaByKhewatNVCode(reqBody1)\r\n\r\n }else{\r\n this.landOwnerDetails = [];\r\n this.landOwnerDetailsErrorMsg = `Someting went wrong. Please try again. ${resp}`;;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.stopLoadingAnimation();\r\n this.isLandOwnerDetFetching = false;\r\n this.showHiddenButton = false;\r\n this.landOwnerDetailsErrorMsg = `Someting went wrong. Please try again. ${err}`;\r\n this.landOwnerDetails = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getKhasraAreaByKhewatNVCode(reqBody) {\r\n // this.loader.start();\r\n this.vendorService\r\n .getKhasraAreaKhewatByNVCODE2Khewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n this.landDetailedInfo = JSON.parse(resp?.msg); \r\n } else {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request2complete = true;\r\n }\r\n });\r\n }\r\n\r\n getLandGetAreaByKhewat(reqBody) {\r\n // this.loader.start();\r\n this.vendorService\r\n .getLandGetAreaByKhewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request2complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n const khewatArea = JSON.parse(resp?.msg)[0]?.area;\r\n const regex = /(\\d+)\\s*Kanal\\s*(\\d+)\\s*Marla/;\r\n const values = khewatArea.match(regex);\r\n\r\n const karnal = values[0] ? parseInt(values[1], 10) : 0;\r\n const marla = values[2] ? parseInt(values[2], 10) : 0;\r\n\r\n this.landOwnerDetails = this.landOwnerDetails.map(val => ({\r\n ...val,\r\n khewat_area: khewatArea,\r\n valKanal: karnal,\r\n valMarla: marla,\r\n totalArea_InAcres: ((karnal * 20) + marla)/20*0.125,\r\n owner_hissa: ((karnal * 20) + marla)*((val?.Bhag).split('/').map(Number)[0]/(val?.Bhag).split('/').map(Number)[1])/20*0.125,\r\n }));\r\n } else {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n if(this.request1complete){\r\n // this.loader.close();\r\n this.isLandOwnerDetFetching = false;\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request1complete = true;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
{{'PERSONAL_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Name }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Father_name }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Mother_Name }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Gender }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.DOB | date:'mediumDate' }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Mobile }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Email_ID }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Aadhar_No }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Email_ID }}\r\n  \r\n

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Village_Code }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Block }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.District }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Caste_Code }}\r\n  \r\n

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Address }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.Pin_Code }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.PPP_ID }}\r\n  \r\n

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.FarmerPersonalData?.MFMBNo }}

\r\n
\r\n
\r\n \r\n

{{ applicationDetails?.AppType }}

\r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"land-details-container card my-2\">\r\n
\r\n
{{'LAND_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n {{'CHECK_OWNER_DETAILS_WITH_LAND_REVENUE_DEPARTMENT' | translate}}\r\n {{'MEMBER_SNO' | translate}}\r\n {{'OWNER_NAME' | translate}}\r\n {{'VILLAGE' | translate}}\r\n {{'KHEWAT' | translate}}\r\n {{'KHEWAT_AREA' | translate}}\r\n {{'KHEWAT_BHAG' | translate}}\r\n {{'OWNER_HISSA' | translate}}\r\n\r\n {{'MORABBA_NO' | translate}}\r\n {{'KILLA_NO' | translate}}\r\n\r\n {{'TOTAL_KANALS' | translate}}\r\n {{'TOTAL_MARLAS' | translate}}\r\n\r\n {{'APPLIED_KANALS' | translate}}\r\n {{'APPLIED_MARLAS' | translate}}\r\n {{'APPLIED_AREA' | translate}}\r\n\r\n {{'CROP_TYPE' | translate}}\r\n {{'YEAR' | translate}}\r\n\r\n {{'LAND_DOC' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {{ item?.memberID }}\r\n {{ item?.OwnerName }}\r\n {{ item?.Village }}\r\n {{ item?.khewat }}\r\n {{ item?.KhewatArea }}\r\n {{ item?.Bhag }}\r\n {{ item?.OwnerHissa }}\r\n\r\n {{ item?.morabbaNo }}\r\n {{ item?.killaNo }}\r\n\r\n {{ item?.TotalkanalinKhasra }}\r\n {{ item?.TotalmarlainKhasra }}\r\n\r\n {{ item?.kanal }}\r\n {{ item?.marla }} \r\n {{ item?.totalArea }}\r\n\r\n {{ item?.cropType }}\r\n {{ item?.Year }}\r\n \r\n
\r\n \r\n
\r\n
\r\n

{{'N/A' |\r\n translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"existing-details-container card my-2\">\r\n
\r\n
{{'EXISTING_MI_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n {{'PROGRAM_NAME' | translate}}\r\n {{'MORABBA_NO' | translate}}\r\n {{'KILLA_NO' | translate}}\r\n {{'TOTAL_AREA_IN_ACRE' | translate}}\r\n {{'IS_SUBSIDY_AVAIL' | translate}}\r\n {{'YEAR' | translate}}\r\n \r\n \r\n \r\n \r\n {{ item?.ProgrammeName }}\r\n {{ item?.Morabba_No }}\r\n {{ item?.Killa_No }}\r\n {{ item?.TotalArea }}\r\n {{ item?.Is_Subsidy_Avail }}\r\n {{ item?.Year_subsidy }}\r\n \r\n \r\n \r\n
\r\n\r\n
0\" class=\"onfarm-details-container card my-2\">\r\n
\r\n
{{'ON_FARMER_MI_COMPONENTS_AND_VENDOR_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n {{'LAND_DATA' | translate}}\r\n {{'VENDOR_NAME' | translate}}\r\n {{'TOTAL_AREA_IN_ACRE' | translate}}\r\n \r\n \r\n \r\n \r\n {{ item.programName }}\r\n {{ item.landData }}\r\n {{ item.miVendorName }}\r\n {{ item.totalArea }}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
{{'BASIC_DETAILS_OF_REQUEST'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_IS_REQ'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'AREA_IS_REQUIRED'| translate}}\r\n
\r\n
{{'AREA_MUST_GREATER_OR_EQUAL_TO_1'| translate}}\r\n
\r\n
{{'ACTUAL_AREA_SURVEYED_CANNOT_BE_GREATER_THAN_BILLED_AREA_SURVEYED'| translate}}{{ ' '+ landArea}}\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
{{'PRE_ESTIMATION_CAPTURED_GPS_COORDINATES' | translate}}
\r\n
0\" class=\"dashboardTable\">\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n 0\" #gmap\r\n [style]=\"{'height':'300px', 'margin-bottom': '1em'}\" [options]=\"preEstimateMapoptions\"\r\n [overlays]=\"preEstimationMapoverlays\">\r\n
\r\n
\r\n

0\" class=\"survey-area\">Survey Area: {{ preEstSurveyLandArea }} acre(s) :: Apply Area: {{ landArea }} acre(s)

\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n
{{'JE_CAPTURED_GPS_COORDINATES' | translate}}({{'FENCING' |\r\n translate}})
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}({{'FENCING' | translate}})
\r\n
\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n {{'ACTIONS'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n

1 && coordinateError\">{{coordinateError | translate}}

\r\n \r\n
\r\n
\r\n
\r\n

= 3\" class=\"survey-area\">Survey Area: {{ jeSurveyLandArea }} acre(s) :: Apply Area: {{ landArea }} acre(s)

\r\n

\r\n {{coordinateError | translate}}

\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
{{'XEN_CAPTURED_GPS_COORDINATES' | translate}}({{'FENCING' |\r\n translate}})
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}({{'FENCING' | translate}})
\r\n
\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n {{'ACTIONS'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n

1 && coordinateError\">{{coordinateError | translate}}

\r\n \r\n
\r\n
\r\n
\r\n

= 3\" class=\"survey-area\">Survey Area: {{ xenSurveyLandArea }} acre(s) :: Apply Area: {{ landArea }} acre(s)

\r\n

\r\n {{coordinateError | translate}}

\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n

{{ loadingText }}

\r\n
\r\n \r\n
0 && !isLandOwnerDetFetching\" class=\"p-fluid p-formgrid justify-content-center\">\r\n \r\n \r\n
\r\n \r\n
\r\n

{{\r\n 'Fetched Land Owner Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'OWNER_NAME'| translate}}\r\n {{'BHAG'| translate}}\r\n {{'KHEWAT_AREA'| translate}}\r\n {{'OWNER_HISSA_IN_ACRES'| translate}}\r\n {{'TOTAL_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'FARMER_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.Khewat}}\r\n {{product?.Owner_Name}}\r\n {{product?.Bhag}}\r\n {{product?.khewat_area}}\r\n {{product?.owner_hissa | number:'0.3-3'}}\r\n {{product?.TotalArea | number:'0.3-3'}}\r\n {{product?.TotalAreaFarmer | number:'0.3-3'}}\r\n {{product?.Year}}\r\n \r\n \r\n
\r\n\r\n
0\">\r\n \r\n \r\n
\r\n \r\n
\r\n

\r\n {{\r\n 'Fetched Land Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHATONI'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'MORABBA_NUMBER'| translate}}\r\n {{'KILLA_NO'| translate}}\r\n {{'KANALS'| translate}}\r\n {{'MARLAS'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.khatoni}}\r\n {{product?.khewat}}\r\n {{product?.must}}\r\n {{product?.killa}}\r\n {{product?.knl}}\r\n {{product?.mrl}}\r\n {{product?.period}}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
","import { first } from 'rxjs';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, AbstractControl } from '@angular/forms';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport saveAs from 'file-saver';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { NULL_EXPR } from '@angular/compiler/src/output/output_ast';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-finance',\r\n templateUrl: './finance.component.html',\r\n styleUrls: ['./finance.component.scss'],\r\n})\r\nexport class FinanceComponent implements OnInit {\r\n canEditFinanceDetails: boolean = false;\r\n financeCalculationsForm: FormGroup;\r\n isSubmitted = false;\r\n editIcon: string = 'pi pi-fw pi-pencil';\r\n saveIcon: string = 'pi pi-fw pi-check';\r\n showFinanceComponentDialog: boolean;\r\n selectedFinanceComponent: any;\r\n selectedRowIndex: number;\r\n latPosition: any;\r\n longPosition: any;\r\n MIArea: any;\r\n canEditMIData: boolean = false;\r\n editBilledData: boolean = false;\r\n proCalculatedData: any;\r\n public isProDataCalculated: boolean = false;\r\n public jeLogin = false;\r\n public xenLogin = false;\r\n public jeorxenLogin = false;\r\n public ddAssociate = false;\r\n public dmicada = false;\r\n public admin = false;\r\n public totalQuantityUsed: any;\r\n public inventoryDataForGrid: any;\r\n public inventoryRowFilteredData: any;\r\n public tableDataAfterModification: any = [];\r\n isSubmitEnable=false;\r\n userRole:any \r\n changeActualQuantity(application, event, rowIdex) {\r\n // if ((Number(event.target.value) > Number(application?.BilledQuantity))) {\r\n // return;\r\n // }\r\n // else {\r\n application.ActualQuantity = event.target.value;\r\n this.physicalVerficationBilledData[rowIdex] = application;\r\n this.physicalVerficationData.listDataForPhysicalVer =\r\n this.physicalVerficationBilledData;\r\n sessionStorage.setItem(\r\n 'miPhysicalApplicationData',\r\n JSON.stringify(this.physicalVerficationData)\r\n );\r\n this.calculateTotalCostAndFarmerShare();\r\n // }\r\n }\r\n\r\n toggleEditFinanceDetails() {\r\n if (this.canEditFinanceDetails) {\r\n let count = 1;\r\n let isValid = true;\r\n this.physicalVerficationBilledData.forEach((data) => {\r\n if (\r\n this.greaterThan(\r\n Number(data.ActualQuantity),\r\n Number(data.BilledQuantity)\r\n )\r\n ) {\r\n isValid = false;\r\n return;\r\n } else {\r\n count++;\r\n }\r\n });\r\n if (isValid) {\r\n this.canEditFinanceDetails = !this.canEditFinanceDetails;\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Data error! Actual Quantity cant be Greater than Billed Quantity. Invalid entry at place : ' +\r\n count,\r\n });\r\n }\r\n } else {\r\n this.canEditFinanceDetails = !this.canEditFinanceDetails;\r\n }\r\n }\r\n\r\n //Bank\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n items: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n autoId: any;\r\n appId:any;\r\n data:any;\r\n physicalVerficationBilledData: any;\r\n physicalVerficationData: any;\r\n physicallyVerifiedOptions = [];\r\n totalCostForVerification: any;\r\n geolocationsarray: any = [];\r\n\r\n userID: any;\r\n ipAddress: any = '000.000.000';\r\n\r\n oldSsScTopUpAmount: any;\r\n newSsScTopUpAmount: any;\r\n subSsScTopUpAmount: any;\r\n\r\n public viewWorkFlowAllStatus: boolean = false;\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n private jeService: JEService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private vendorService: VendorDashboardService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService\r\n ) {\r\n const tokenData = sessionStorage.getItem('token')\r\n ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')))\r\n : {};\r\n if (tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')) {\r\n this.jeLogin = true;\r\n this.jeorxenLogin = true;\r\n }\r\n if (tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')) {\r\n this.xenLogin = true;\r\n this.jeorxenLogin = true;\r\n }\r\n else if(tokenData && (tokenData.role == 'DD Associate')){\r\n this.ddAssociate = true;\r\n }\r\n else if(tokenData && (tokenData.role == 'DMICADA')){\r\n this.dmicada = true;\r\n }\r\n else if(tokenData && (tokenData.role == 'ADMIN')){\r\n this.admin = true;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n this.userRole =sessionStorage.getItem('userRole')\r\n if (sessionStorage.getItem(this.cryptoJsService.Encrypt('canEditMIData'))) {\r\n this.canEditMIData = this.cryptoJsService.DecryptData(\r\n sessionStorage.getItem(this.cryptoJsService.Encrypt('canEditMIData'))\r\n );\r\n }\r\n if (\r\n sessionStorage.getItem(this.cryptoJsService.Encrypt('editBilledData'))\r\n ) {\r\n this.editBilledData = Boolean(\r\n this.cryptoJsService.DecryptData(\r\n sessionStorage.getItem(this.cryptoJsService.Encrypt('editBilledData'))\r\n )\r\n );\r\n }\r\n\r\n this.getGPSCoordinates();\r\n //Physically verified options\r\n this.physicallyVerifiedOptions = [\r\n { name: 'yes', code: 'yes' },\r\n { name: 'no', code: 'no' },\r\n ];\r\n\r\n this.financeCalculationsForm = this._fb.group({\r\n physicallyVerified: ['', Validators.required],\r\n remarks: ['', Validators.required],\r\n totalEstimateAmount: ['', Validators.required],\r\n BoqDiscountRate: ['', Validators.required],\r\n transportationAmount: [0, Validators.required],\r\n totalBilledAmount: ['', Validators.required],\r\n billedTransportationAmount: ['', Validators.required],\r\n totalCostForPhysicalVerification: ['', Validators.required],\r\n totalCost: ['', Validators.required],\r\n maximumSubsidy: ['', Validators.required],\r\n farmerShare: ['', Validators.required],\r\n MIArea: ['', [Validators.required, Validators.min(1), (control: AbstractControl) => Validators.max(this.physicalVerficationData?.MIArea)(control)]],\r\n farmerInitialDeposit: ['', Validators.required],\r\n ChallanType: ['', Validators.required],\r\n SubsidyToFarmerAmount: ['', Validators.required],\r\n SubsidyToVendorAmount: ['', Validators.required],\r\n FarmerRefundAmount: ['', Validators.required],\r\n });\r\n\r\n this.route.queryParams.subscribe((params) => {\r\n this.autoId = this.cryptoJsService.DecryptData(params.autoId);\r\n this.appId = this.cryptoJsService.DecryptData(params.appId);\r\n this.data={autoId:this.autoId,appId:this.appId}\r\n\r\n if (this.autoId) {\r\n if ((sessionStorage.getItem('miPhysicalAppJEGPSCoordinates') &&\r\n JSON.parse(sessionStorage.getItem('miPhysicalAppJEGPSCoordinates')) &&\r\n JSON.parse(sessionStorage.getItem('miPhysicalAppJEGPSCoordinates')).length != 0 &&\r\n this.jeLogin) || !this.jeorxenLogin || this.xenLogin\r\n ) {\r\n if ((sessionStorage.getItem('jecoordinatesVerified') &&\r\n sessionStorage.getItem('jecoordinatesVerified') == 'true') ||\r\n !this.jeorxenLogin || this.xenLogin) \r\n {\r\n if ((sessionStorage.getItem('miPhysicalAppXENGPSCoordinates') &&\r\n JSON.parse(sessionStorage.getItem('miPhysicalAppXENGPSCoordinates')) &&\r\n JSON.parse(sessionStorage.getItem('miPhysicalAppXENGPSCoordinates')).length != 0 && this.xenLogin)\r\n || !this.jeorxenLogin || this.jeLogin || sessionStorage.getItem('myPhysicalSurveyType') != '1') \r\n {\r\n if ((sessionStorage.getItem('xencoordinatesVerified') && \r\n sessionStorage.getItem('xencoordinatesVerified') == 'true') ||\r\n !this.jeorxenLogin || this.jeLogin || sessionStorage.getItem('myPhysicalSurveyType') != '1') \r\n {\r\n const jegeolocationsarray = JSON.parse(sessionStorage.getItem('miPhysicalAppJEGPSCoordinates'));\r\n const xengeolocationsarray = JSON.parse(sessionStorage.getItem('miPhysicalAppXENGPSCoordinates'));\r\n if (this.jeLogin) {\r\n this.geolocationsarray = [...jegeolocationsarray];\r\n } else if (this.xenLogin) {\r\n this.geolocationsarray = [...xengeolocationsarray];\r\n }\r\n\r\n if (\r\n JSON.parse(\r\n sessionStorage.getItem('miPhysicalApplicationData')\r\n )?.AutoId == this.autoId\r\n ) {\r\n // let val = sessionStorage.getItem('miPhysicalApplicationData');\r\n // this.physicalVerficationData = JSON.parse(val);\r\n // this.populateAndCalculateData(JSON.parse(sessionStorage.getItem('miPhysicalApplicationData')));\r\n \r\n this.physicalVerficationData = JSON.parse(\r\n sessionStorage.getItem('miPhysicalApplicationData')\r\n );\r\n this.populateAndCalculateData(this.physicalVerficationData);\r\n if (!this.editBilledData) {\r\n this.proDataCalculation();\r\n // this.onFinanceCalculationFormSubmit();\r\n }\r\n } else {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(\r\n JSON.parse(sessionToken).authToken?.split('.')[1]\r\n );\r\n this.loader.start();\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification(\r\n this.autoId,\r\n JSON.parse(payload)?.sub\r\n )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data: any) => {\r\n this.loader.close();\r\n this.physicalVerficationData = data;\r\n sessionStorage.setItem(\r\n 'miPhysicalApplicationData',\r\n JSON.stringify(data)\r\n );\r\n this.populateAndCalculateData(data);\r\n if (!this.editBilledData) {\r\n this.proDataCalculation();\r\n // this.onFinanceCalculationFormSubmit();\r\n }\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Data error! Physical Applications not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n } else {\r\n this.loader.close();\r\n this.router.navigate(\r\n [this.router.url.split('/')[1], 'application'],\r\n {\r\n queryParams: { autoId: params.autoId, appId: params.appId },\r\n }\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Captured GPS Coordinates are Not Matching',\r\n });\r\n }\r\n } else {\r\n this.loader.close();\r\n this.router.navigate(\r\n [this.router.url.split('/')[1], 'application'],\r\n { queryParams: { autoId: params.autoId, appId: params.appId } }\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please provide atleast 4 GPS Coordinates',\r\n });\r\n }\r\n } else {\r\n this.loader.close();\r\n this.router.navigate(\r\n [this.router.url.split('/')[1], 'application'],\r\n { queryParams: { autoId: params.autoId, appId: params.appId } }\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Captured GPS Coordinates are Not Matching',\r\n });\r\n }\r\n } \r\n else {\r\n this.loader.close();\r\n this.router.navigate([this.router.url.split('/')[1], 'application'], {\r\n queryParams: { autoId: params.autoId, appId: params.appId },\r\n });\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please provide atleast 4 GPS Coordinates',\r\n });\r\n }\r\n } else {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! AutoID cant be empty',\r\n });\r\n return;\r\n }\r\n });\r\n }\r\n\r\n get financeCalculationFormControls() {\r\n return this.financeCalculationsForm.controls;\r\n }\r\n\r\n populateAndCalculateData(data) {\r\n this.physicalVerficationBilledData = data.listDataForPhysicalVer;\r\n //Populating the Params in Finance Calculation Form\r\n this.financeCalculationFormControls.totalEstimateAmount.setValue(\r\n data?.Estimated_Amount\r\n );\r\n this.financeCalculationFormControls.BoqDiscountRate.setValue(\r\n data?.BoqDiscountRate\r\n );\r\n this.financeCalculationFormControls.totalBilledAmount.setValue(\r\n data?.TotalBilledAmount\r\n );\r\n this.financeCalculationFormControls.billedTransportationAmount.setValue(\r\n data?.BilledTransportAmount\r\n );\r\n if(this.financeCalculationFormControls.MIArea.value != '' && (this.jeLogin || this.xenLogin)){\r\n // this.financeCalculationFormControls.MIArea.setValue(data?.MIArea);\r\n }else{\r\n this.financeCalculationFormControls.MIArea.setValue(data?.MIArea);\r\n }\r\n // this.financeCalculationFormControls.MIArea.setValue(data?.MIArea);\r\n this.financeCalculationFormControls.farmerInitialDeposit.setValue(\r\n data?.FarmerShare\r\n );\r\n this.financeCalculationFormControls.ChallanType.setValue(data?.ChallanType);\r\n this.financeCalculationFormControls.SubsidyToFarmerAmount.setValue(\r\n data?.SubsidyToFarmerAmount\r\n );\r\n this.financeCalculationFormControls.SubsidyToVendorAmount.setValue(\r\n data?.SubsidyToVendorAmount\r\n );\r\n this.financeCalculationFormControls.FarmerRefundAmount.setValue(\r\n data?.FarmerRefundAmount\r\n );\r\n this.calculateTotalCostAndFarmerShare();\r\n this.changeMiArea();\r\n }\r\n\r\n onFinanceCalculationFormGoBack() {\r\n if(sessionStorage.getItem('userRole')=='DD Associate'){\r\n this.route.queryParams.subscribe((params) => {\r\n if (params.autoId) {\r\n this.router.navigate(\r\n [this.router.url.split('/')[1], 'application', 'image-attachment'],\r\n { queryParams: { autoId: params.autoId, appId: params.appId } }\r\n );\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! AutoID cant be Empty',\r\n });\r\n }\r\n });\r\n }\r\n else{\r\n this.route.queryParams.subscribe((params) => {\r\n if (params.autoId) {\r\n this.router.navigate(\r\n [this.router.url.split('/')[1], 'application', 'basic'],\r\n { queryParams: { autoId: params.autoId, appId: params.appId } }\r\n );\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! AutoID cant be Empty',\r\n });\r\n }\r\n });\r\n }\r\n \r\n \r\n }\r\n\r\n editFinanceComponentDialog(component: any, rowIdex) {\r\n // component.inventory = component.inventory.map((val) => ({\r\n // ...val,\r\n // batchNumber_lotNo: val.batchNumber + '_' + val.lotNo,\r\n // quantityUsed: val.QuantityUsed\r\n // ? val.QuantityUsed\r\n // : val.quantityUsed\r\n // ? val.quantityUsed\r\n // : 0,\r\n // }));\r\n\r\n this.inventoryRowFilteredData = [];\r\n if (component?.inventory?.length > 0) {\r\n component?.inventory.forEach((val) => {\r\n if (val?.QuantityUsed != 0) {\r\n this.inventoryRowFilteredData.push(val);\r\n }\r\n });\r\n }\r\n\r\n this.submitted = false;\r\n this.selectedRowIndex = rowIdex;\r\n this.selectedFinanceComponent = { ...component };\r\n this.totalQuantityUsed = 0;\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n\r\n // if(this.totalQuantityUsed > 0){\r\n // this.saveFinanceComponent();\r\n // }\r\n\r\n this.showFinanceComponentDialog = true;\r\n }\r\n\r\n hideFinanceComponentDialog() {\r\n this.showFinanceComponentDialog = false;\r\n }\r\n\r\n saveFinanceComponent() {\r\n // if (this.selectedFinanceComponent?.inventory?.length > 0) {\r\n // this.totalQuantityUsed = 0;\r\n // this.inventoryRowFilteredData.forEach((val) => {\r\n // this.totalQuantityUsed += val.quantityUsed;\r\n // });\r\n\r\n // let inventorySum = 0;\r\n // this.selectedFinanceComponent['inventory'].forEach((val) => {\r\n // inventorySum += val.quantityUsed;\r\n // });\r\n\r\n // if (this.totalQuantityUsed != inventorySum) {\r\n\r\n // this.confirmationService.confirm({\r\n // message: `Total input qunatity: ${inventorySum}.
Total selected qunatity: ${this.totalQuantityUsed}.
\\bAre you sure you want to continue?
`,\r\n // accept: () => {\r\n // // this.inventoryDataForGrid['inventory'].forEach((val) => {\r\n // // if (!this.inventoryRowFilteredData.includes(val)) {\r\n // // val.quantityUsed = 0;\r\n // // }\r\n // // });\r\n // this.submitInventoryAndCal();\r\n // },\r\n // });\r\n // return;\r\n // }\r\n // else{\r\n // this.submitInventoryAndCal();\r\n // }\r\n // } else {\r\n this.submitted = true;\r\n if (this.selectedFinanceComponent.ActualQuantity < 0) {\r\n return;\r\n }\r\n if (\r\n Number(this.selectedFinanceComponent.ActualQuantity) >\r\n Number(this.selectedFinanceComponent.BilledQuantity)\r\n ) {\r\n return;\r\n } else {\r\n this.physicalVerficationBilledData[this.selectedRowIndex] =\r\n this.selectedFinanceComponent;\r\n this.physicalVerficationData.listDataForPhysicalVer =\r\n this.physicalVerficationBilledData;\r\n sessionStorage.setItem(\r\n 'miPhysicalApplicationData',\r\n JSON.stringify(this.physicalVerficationData)\r\n );\r\n this.calculateTotalCostAndFarmerShare();\r\n }\r\n this.showFinanceComponentDialog = false;\r\n // }\r\n this.showFinanceComponentDialog = false;\r\n }\r\n\r\n submitInventoryAndCal(){\r\n this.inventoryDataForGrid = [this.inventoryDataForGrid].map((val) => ({\r\n ...val,\r\n filteredInventory: this.inventoryRowFilteredData,\r\n selectedInventory: this.inventoryRowFilteredData.map((val) => ({\r\n batchNumber: val?.batchNumber,\r\n lotNo: val?.lotNo,\r\n quantityUsed: val?.quantityUsed,\r\n })),\r\n }));\r\n\r\n let index = this.inventoryDataForGrid[0]?.id\r\n ? this.inventoryDataForGrid[0]?.id\r\n : 0;\r\n if (index != null) {\r\n this.tableDataAfterModification[index] = this.inventoryDataForGrid[0];\r\n }\r\n this.physicalVerficationBilledData.forEach((e) => {\r\n if (\r\n e.inventory.length > 0 &&\r\n e.SizeId == this.selectedFinanceComponent.SizeId\r\n ) {\r\n e.ActualQuantity = this.totalQuantityUsed;\r\n e.selectedQuantity = [...this.inventoryDataForGrid];\r\n e.selectedInventory = [\r\n ...this.inventoryDataForGrid[0].selectedInventory,\r\n ];\r\n }\r\n });\r\n this.physicalVerficationData.listDataForPhysicalVer =\r\n this.physicalVerficationBilledData;\r\n sessionStorage.setItem(\r\n 'miPhysicalApplicationData',\r\n JSON.stringify(this.physicalVerficationData)\r\n );\r\n this.calculateTotalCostAndFarmerShare();\r\n\r\n this.showFinanceComponentDialog = false;\r\n }\r\n\r\n\r\n\r\n greaterThan(elem1, elem2) {\r\n return Number(elem1) > Number(elem2);\r\n }\r\n\r\n changeMiArea() {\r\n if (\r\n this.financeCalculationFormControls.MIArea.value >\r\n this.physicalVerficationData.MIArea\r\n ) {\r\n return;\r\n }\r\n if (\r\n this.physicalVerficationBilledData[0]?.ProgrammeName ==\r\n 'Mini Sprinkler' ||\r\n this.physicalVerficationBilledData[0]?.ProgrammeName == 'Drip Irrigation'\r\n ) {\r\n this.financeCalculationFormControls?.transportationAmount?.setValue(\r\n Math.round(Number(\r\n this.financeCalculationFormControls.MIArea.value\r\n ? this.financeCalculationFormControls.MIArea.value\r\n : 0\r\n ) * 2500)\r\n );\r\n } else {\r\n this.financeCalculationFormControls?.transportationAmount?.setValue(0);\r\n }\r\n this.physicalVerficationData.tempMIArea = this\r\n .financeCalculationFormControls.MIArea.value\r\n ? this.financeCalculationFormControls.MIArea.value\r\n : 0;\r\n this.physicalVerficationData.BilledTransportAmount =\r\n this.financeCalculationFormControls?.transportationAmount?.value;\r\n if(this.jeLogin || this.xenLogin){\r\n this.financeCalculationsForm.controls.totalCost.setValue(\r\n this.financeCalculationFormControls?.transportationAmount?.value +\r\n this.physicalVerficationData.tempTotalCost\r\n );\r\n }\r\n \r\n this.totalCostForVerification = this.physicalVerficationData.tempTotalCost;\r\n this.financeCalculationsForm.controls.farmerShare.setValue(\r\n Math.ceil(Number(this.financeCalculationsForm.controls.totalCost.value * 0.15))\r\n );\r\n\r\n this.financeCalculationsForm.controls.maximumSubsidy.setValue(\r\n Math.round(Number(this.financeCalculationsForm.controls.totalCost.value - this.financeCalculationsForm.controls.farmerShare.value))\r\n );\r\n \r\n sessionStorage.setItem(\r\n 'miPhysicalApplicationData',\r\n JSON.stringify(this.physicalVerficationData)\r\n );\r\n }\r\n\r\n calculateTotalCostAndFarmerShare() {\r\n let totalCost = 0;\r\n\r\n this.physicalVerficationBilledData.forEach((data) => {\r\n totalCost =\r\n totalCost +\r\n (data?.ActualQuantity\r\n ? Number(data?.ActualQuantity) * Number(data?.Price)\r\n : 0);\r\n });\r\n\r\n totalCost = totalCost-(totalCost*this.physicalVerficationData?.BoqDiscountRate/100);\r\n\r\n this.totalCostForVerification = totalCost;\r\n if (\r\n this.financeCalculationFormControls &&\r\n this.financeCalculationFormControls.transportationAmount &&\r\n this.financeCalculationFormControls.transportationAmount.value\r\n ) {\r\n totalCost =\r\n this.financeCalculationFormControls?.transportationAmount?.value +\r\n totalCost;\r\n }\r\n this.financeCalculationsForm.controls.totalCost.setValue(totalCost);\r\n this.physicalVerficationData.tempTotalCost = totalCost;\r\n sessionStorage.setItem(\r\n 'miPhysicalApplicationData',\r\n JSON.stringify(this.physicalVerficationData)\r\n );\r\n this.financeCalculationsForm.controls.farmerShare.setValue(\r\n Math.ceil(Number(totalCost * 0.15))\r\n );\r\n this.financeCalculationsForm.controls.maximumSubsidy.setValue(\r\n Math.round(Number(totalCost - this.financeCalculationsForm.controls.farmerShare.value))\r\n );\r\n }\r\n\r\n onFinanceCalculationFormSubmit() {\r\n if(this.physicalVerficationData?.listDataForPhysicalVer && this.physicalVerficationData?.listDataForPhysicalVer.length > 0){\r\n\r\n if(this.jeLogin && this.physicalVerficationData?.listDataForPhysicalVer.every(val => val.ActualQuantity == 0)){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n \"Please Add Component Quantity First\",\r\n });\r\n return;\r\n }\r\n }\r\n let components = [];\r\n let count = 1;\r\n let isValid = true;\r\n if(this.userRole=='DD Associate'){\r\n this.isSubmitEnable=true\r\n }\r\n else{\r\n this.isSubmitEnable=false\r\n }\r\n \r\n this.physicalVerficationBilledData.forEach((data) => {\r\n if (data?.selectedInventory) {\r\n data.inventory = data.selectedInventory;\r\n }\r\n // else if(data?.inventory.length > 0){\r\n // // data.inventory = data.selectedInventory;\r\n // }\r\n // else{\r\n // data.inventory = data.selectedInventory;\r\n // }\r\n // if( !data.inventory){\r\n // data.inventory=[]\r\n // }\r\n delete data.selectedInventory;\r\n delete data.selectedQuantity;\r\n if (Number(data.ActualQuantity) >= 0) {\r\n let body = {\r\n compId: data.CompId,\r\n catId: data.CatId,\r\n sizeId: data.SizeId,\r\n actualQuantity: data.ActualQuantity,\r\n autoIdPriceTable: data.AutoIdPriceTable,\r\n inventory: data.inventory\r\n ? data.inventory\r\n : data.selectedInventory\r\n ? data.selectedInventory\r\n : [],\r\n };\r\n // if(data?.inventory.length>0){\r\n // body.inventory=data.inventory;\r\n // }\r\n components.push(body);\r\n count++;\r\n } else {\r\n isValid = false;\r\n return;\r\n }\r\n });\r\n\r\n if (this.editBilledData) {\r\n if (isValid) {\r\n this.insertPhysicalVerification(components);\r\n } else {\r\n this.confirmationService.confirm({\r\n message:\r\n 'Data error! Actual Quantity cant be null. Invalid entry at place : ' +\r\n count,\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n this.insertPhysicalVerification(components);\r\n },\r\n });\r\n }\r\n } else {\r\n this.insertPhysicalVerification(components);\r\n }\r\n \r\n }\r\n\r\n proDataCalculation() {\r\n if(this.financeCalculationFormControls?.MIArea?.errors){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n \"Fill the value of 'Area Surveyed' properly\",\r\n });\r\n return;\r\n }\r\n if (\r\n this.greaterThan(\r\n this.financeCalculationFormControls.MIArea.value,\r\n this.physicalVerficationData.MIArea\r\n )\r\n ) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n \"Actual 'Area Surveyed' cannot be greater than Billed 'Area Surveyed'\",\r\n });\r\n return;\r\n }\r\n const tableDataToPush: any = [];\r\n let count = 1;\r\n let isValid = true;\r\n this.physicalVerficationBilledData.forEach((row) => {\r\n if (Number(row.ActualQuantity) > 0) {\r\n tableDataToPush.push({\r\n cat: JSON.stringify(row.CatId),\r\n component: row.component,\r\n size: row.size,\r\n quantity: row.ActualQuantity,\r\n price: row.Price,\r\n });\r\n count++;\r\n } else {\r\n tableDataToPush.push({\r\n cat: JSON.stringify(row.CatId),\r\n component: row.component,\r\n size: row.size,\r\n quantity: row.ActualQuantity,\r\n price: row.Price,\r\n });\r\n isValid = false;\r\n return;\r\n }\r\n });\r\n\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.physicalVerficationData?.ProgId,\r\n applicationId: this.physicalVerficationData?.AppID,\r\n vendorId: JSON.stringify(this.physicalVerficationData?.VendorCode),\r\n rowSpacing: this.physicalVerficationData?.RowSpacing,\r\n plantSpacing: this.physicalVerficationData?.PlantSpacing,\r\n // area: this.physicalVerficationData?.MIArea,\r\n area: this.financeCalculationFormControls.MIArea.value,\r\n };\r\n let reqBody = finalDataToPost;\r\n\r\n if (this.editBilledData) {\r\n if (isValid) {\r\n this.getMaxSubsidy(reqBody);\r\n } else {\r\n this.confirmationService.confirm({\r\n message:\r\n 'Data error! Actual Quantity cant be null. Invalid entry at place : ' +\r\n count,\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n this.getMaxSubsidy(reqBody);\r\n },\r\n });\r\n }\r\n } else {\r\n this.getMaxSubsidy(reqBody);\r\n }\r\n }\r\n stripText(event) {\r\n const seperator = '^([0-9])';\r\n const maskSeperator = new RegExp(seperator, 'g');\r\n let result = maskSeperator.test(event.key);\r\n return result;\r\n }\r\n getMaxSubsidy(reqBody) {\r\n // if (\r\n // JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.AppID ==\r\n // JSON.parse(sessionStorage.getItem('proDataCalculation'))?.AppID\r\n // ) {\r\n // this.proCalculatedData = JSON.parse(\r\n // sessionStorage.getItem('proDataCalculation')\r\n // );\r\n // this.isProDataCalculated = true;\r\n // } else {\r\n this.loader.start();\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.proCalculatedData = data;\r\n this.isProDataCalculated = true;\r\n this.proCalculatedData.AppID = this.physicalVerficationData.AppID;\r\n sessionStorage.setItem('proDataCalculation', JSON.stringify(this.proCalculatedData));\r\n\r\n let MIdata = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n\r\n // if(data?.maxSubsidy < this.financeCalculationsForm.controls.maximumSubsidy.value){\r\n // let val = Math.round(this.financeCalculationsForm.controls.maximumSubsidy.value - data?.maxSubsidy) + this.financeCalculationsForm.controls.farmerShare.value;\r\n\r\n // this.financeCalculationFormControls.maximumSubsidy.setValue(data?.maxSubsidy);\r\n // this.financeCalculationFormControls.farmerShare.setValue(val);\r\n // }\r\n \r\n if(!this.jeorxenLogin){\r\n this.populateAndCalculateData(MIdata);\r\n }\r\n\r\n // let isDDAssociatePending = sessionStorage.getItem('isMIPhysicalVerPending')== 'true' ? true : false;\r\n \r\n if(MIdata?.BilledTransportAmount != MIdata?.EstimatedTransportAmount && (this.jeorxenLogin || (this.ddAssociate && sessionStorage.getItem('isMIPhysicalVerPending')== 'true' ? true : false))){\r\n this.financeCalculationFormControls.totalCost.setValue(\r\n this.financeCalculationsForm.controls.totalBilledAmount.value + this.financeCalculationsForm.controls.billedTransportationAmount.value\r\n );\r\n this.calculateTotalCostAndFarmerShare();\r\n\r\n if(MIdata?.ChallanType == \"Farmer Share\"){\r\n this.financeCalculationFormControls.SubsidyToVendorAmount.setValue(\r\n this.financeCalculationsForm.controls.maximumSubsidy.value\r\n );\r\n }else{\r\n this.financeCalculationFormControls.SubsidyToFarmerAmount.setValue(\r\n this.financeCalculationsForm.controls.maximumSubsidy.value\r\n );\r\n }\r\n\r\n if(MIdata?.ChallanType == \"Full Payment\"){\r\n this.financeCalculationFormControls.FarmerRefundAmount.setValue(0);\r\n }else{\r\n this.financeCalculationFormControls.FarmerRefundAmount.setValue(\r\n Math.round(MIdata.FarmerShare - this.financeCalculationsForm.controls.farmerShare.value)\r\n );\r\n }\r\n\r\n // handle -ve value condition\r\n if(this.financeCalculationFormControls.FarmerRefundAmount.value < 0){\r\n this.financeCalculationFormControls.FarmerRefundAmount.setValue(0);\r\n }\r\n\r\n // this.financeCalculationFormControls.SubsidyToVendorAmount.setValue(\r\n // this.financeCalculationsForm.controls.maximumSubsidy.value\r\n // );\r\n\r\n \r\n if(MIdata?.ApplicantType == \"IsAtal\" || MIdata?.ApplicantType == \"7500\"){\r\n this.financeCalculationFormControls.FarmerRefundAmount.setValue(0);\r\n this.financeCalculationFormControls.SubsidyToFarmerAmount.setValue(0);\r\n }\r\n\r\n }\r\n\r\n if(!this.jeorxenLogin){\r\n this.viewSsScTopup();\r\n }\r\n },\r\n error: (err) => {\r\n let MIdata = JSON.parse(\r\n sessionStorage.getItem('miPhysicalApplicationData')\r\n );\r\n if(!this.jeorxenLogin){\r\n this.populateAndCalculateData(MIdata);\r\n }\r\n\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n // }\r\n }\r\n\r\n viewSsScTopup(){\r\n let reqBody = {\r\n appId: this.physicalVerficationData?.AppID,\r\n progId: this.physicalVerficationData?.ProgId,\r\n subsidyToFarmerAmount: this.financeCalculationFormControls?.SubsidyToFarmerAmount?.value,\r\n subsidyToVendorAmount: this.financeCalculationFormControls?.SubsidyToVendorAmount?.value,\r\n newSubsidyCalc: this.proCalculatedData.maxSubsidyNewCalc,\r\n subsidyAmt: this.proCalculatedData.maxSubsidy\r\n }\r\n\r\n this.getSsCsTopUpData(reqBody)\r\n }\r\n\r\n getSsCsTopUpData(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getCenterStateShareCalc(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) =>{\r\n this.loader.close();\r\n if(data[0].result){\r\n this.oldSsScTopUpAmount = null;\r\n this.newSsScTopUpAmount = null;\r\n this.subSsScTopUpAmount = null;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data[0].result,\r\n });\r\n }else{\r\n this.oldSsScTopUpAmount = data[0][0];\r\n this.newSsScTopUpAmount = data[1][0];\r\n this.subSsScTopUpAmount = data[2][0];\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.oldSsScTopUpAmount = null;\r\n this.newSsScTopUpAmount = null;\r\n this.subSsScTopUpAmount = null;\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n insertPhysicalVerification(compElements) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let body = [];\r\n let element = {\r\n appID: this.physicalVerficationData?.AppID,\r\n vendorRegId: this.physicalVerficationData?.VendorCode,\r\n progID: this.physicalVerficationData?.ProgId,\r\n estimatedAmount: parseFloat(\r\n this.physicalVerficationData?.Estimated_Amount\r\n ),\r\n totalBilledAmount: parseFloat(\r\n this.physicalVerficationData?.TotalBilledAmount\r\n ),\r\n // totalCostVerification: parseFloat(this.totalCostForVerification),\r\n totalCostVerification: parseFloat(this.financeCalculationFormControls?.totalCost?.value),\r\n billedTransportAmount: parseFloat(\r\n this.financeCalculationFormControls?.transportationAmount?.value\r\n ),\r\n maxSubsidyAmount: parseFloat(\r\n this.financeCalculationFormControls?.maximumSubsidy?.value\r\n ),\r\n farmerShareAmount: parseFloat(\r\n this.financeCalculationFormControls?.farmerShare?.value\r\n ),\r\n subsidyToFarmer_Amount: parseFloat(\r\n this.financeCalculationFormControls?.SubsidyToFarmerAmount?.value\r\n ),\r\n subsidyToVendor_Amount: parseFloat(\r\n this.financeCalculationFormControls?.SubsidyToVendorAmount?.value\r\n ),\r\n farmerRefund_Amount: parseFloat(\r\n this.financeCalculationFormControls?.FarmerRefundAmount?.value\r\n ),\r\n stateShare_Amount: 0,\r\n centerShare_Amount: 0,\r\n district: this.physicalVerficationData?.District,\r\n block: this.physicalVerficationData?.Block,\r\n village: this.physicalVerficationData?.Village,\r\n miArea: this.physicalVerficationData?.tempMIArea,\r\n lat: this.physicalVerficationData?.Lat\r\n ? this.physicalVerficationData?.Lat\r\n : this.latPosition,\r\n long: this.physicalVerficationData?.Long\r\n ? this.physicalVerficationData?.Long\r\n : this.longPosition,\r\n plantSpacing: this.physicalVerficationData?.PlantSpacing,\r\n rowSpacing: this.physicalVerficationData?.RowSpacing,\r\n cropID: this.physicalVerficationData?.CropId_PV == null ? this.physicalVerficationData?.CropId : this.physicalVerficationData?.CropId_PV,\r\n landId: this.physicalVerficationData?.LandIds,\r\n userId: JSON.parse(payload)?.sub,\r\n remarks: this.financeCalculationFormControls?.remarks?.value,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n componentDetail: compElements,\r\n ProData_MaxSubsidy: this.proCalculatedData.maxSubsidy,\r\n // listDataForPhysicalVer:this.physicalVerficationBilledData\r\n };\r\n if (this.jeorxenLogin) {\r\n element['insertSurveyGPSCoordiantes'] = this.geolocationsarray;\r\n element['surveyType'] = sessionStorage.getItem('myPhysicalSurveyType');\r\n }\r\n body.push(element);\r\n sessionStorage.setItem('miPhysicalAppReqBody', JSON.stringify(body));\r\n if (this.editBilledData) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Saved!',\r\n });\r\n }\r\n if(sessionStorage.getItem('userRole')!=='DD Associate'){\r\n setTimeout(() => {\r\n this.route.queryParams.subscribe((params) => {\r\n if (params.autoId) {\r\n this.router.navigate(\r\n [this.router.url.split('/')[1], 'application', 'attachment'],\r\n { queryParams: { autoId: params.autoId, appId: params.appId } }\r\n );\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! AutoID cant be Empty',\r\n });\r\n }\r\n });\r\n }, 1000);\r\n }\r\n \r\n\r\n // this.jeService.insertPhysicalVerification(body).pipe(first())\r\n // .subscribe({\r\n // next: (data: any) => {\r\n // this.messageService.add({ severity: 'success', summary: 'Success Message', detail: data });\r\n // setTimeout(() => {\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // if (params.autoId) {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'attachment'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n // }\r\n // }\r\n // );\r\n // }, 1000)\r\n // },\r\n // error: () => {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Physical Verification Application not Saved.' });\r\n // }\r\n // });\r\n }\r\n\r\n \r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n });\r\n }\r\n\r\n _getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n // reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onInventoryRowSelect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onInventoryRowUnselect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n\r\n if (val?.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n }\r\n\r\n onEditComplete(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n }\r\n\r\n submitInventoryDetails() {\r\n this.onCloseInventoryDialog();\r\n\r\n this.selectedFinanceComponent = [this.inventoryDataForGrid].map((val) => ({\r\n ...val,\r\n filteredInventory: this.inventoryRowFilteredData,\r\n selectedInventory: this.inventoryRowFilteredData.map((val) => ({\r\n batchNumber: val?.batchNumber,\r\n lotNo: val?.lotNo,\r\n quantityUsed: val?.quantityUsed,\r\n })),\r\n }));\r\n\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n\r\n let index = this.inventoryDataForGrid[0]?.id\r\n ? this.inventoryDataForGrid[0]?.id\r\n : 0;\r\n if (index != null) {\r\n this.tableDataAfterModification[index] = this.inventoryDataForGrid[0];\r\n }\r\n\r\n }\r\n onCloseInventoryDialog() {\r\n // this.isOpenforEditing = false;\r\n this.showFinanceComponentDialog = false;\r\n // this.inventoryDataForGrid = null;\r\n }\r\n\r\n componentDetailsRowcolor(row) {\r\n if (row?.IsInventoryMandatory) {\r\n if (row?.inventory.length == 0) {\r\n return '#ff8080';\r\n } else {\r\n return '#f3cf8c';\r\n }\r\n } else if (row?.ActualQuantity) {\r\n return '#e6ffe6';\r\n } else {\r\n return '#ffffff';\r\n }\r\n }\r\n\r\n componentDetailsRowcolorMobile(row){\r\n if (row?.IsInventoryMandatory) {\r\n if (row?.inventory.length == 0) {\r\n return '#ff8080';\r\n } else {\r\n return '#f3cf8c';\r\n }\r\n } else if (row?.ActualQuantity) {\r\n return '#e6ffe6';\r\n } else {\r\n return '#eaeae1';\r\n }\r\n }\r\n\r\n workFlowAllStatus(){\r\n this.viewWorkFlowAllStatus = true;\r\n }\r\n}\r\n","\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{'FINANCE_DETAILS_OF_REQUEST'| translate}}
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item?.ProgrammeName}}\r\n
{{'COMPONENT_ID'| translate}}\r\n {{item?.CompId}}\r\n
{{'CAT_ID'| translate}}\r\n {{item?.CatId}}\r\n
{{'SIZE_ID'| translate}}\r\n {{item?.SizeId}}\r\n
{{'COMPONENT_NAME'| translate}}\r\n {{item?.component}}\r\n
{{'SIZE'| translate}}\r\n {{item?.size}}\r\n
{{'PRICE'| translate}}\r\n {{item?.Price}}\r\n
{{'ESTIMATED_QUANTITY'| translate}}\r\n {{item?.EstimatedQuantity}}\r\n
{{'BILLED_QUANTITY'| translate}}\r\n {{item?.BilledQuantity}}\r\n
{{'ACTUAL_QUANTITY'| translate}}\r\n \r\n
\r\n {{'ACTUAL_QUANTITY_CANNOT_BE_MORE_THAN_BILLED_QUANTITY'| translate}}\r\n
{{'TOTAL_AMOUNT'| translate}}\r\n {{item?.ActualQuantity ? (item?.ActualQuantity * item?.Price) : 0}}\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n \r\n
\r\n \r\n
{{'FINANCE_DETAILS_OF_REQUEST'| translate}}
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_BILLED_COMPONENT_DETAILS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT_ID'| translate}}\r\n \r\n \r\n \r\n {{'CAT_ID'| translate}}\r\n \r\n \r\n \r\n {{'SIZE_ID'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n {{'PRICE'| translate}}\r\n \r\n \r\n \r\n {{'ESTIMATED_QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'BILLED_QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'ACTUAL_QUANTITY'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.ProgrammeName}}\r\n {{product?.CompId}}\r\n {{product?.CatId}}\r\n {{product?.SizeId}}\r\n {{product?.component}}\r\n {{product?.size}}\r\n {{product?.Price}}\r\n {{product?.EstimatedQuantity}}\r\n {{product?.BilledQuantity}}\r\n {{product?.ActualQuantity}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{physicalVerficationBilledData ? physicalVerficationBilledData.length :\r\n 0 }} {{'COMPONENT_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_ESTIMATED_COST_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_ESTIMATED_COST_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'AREA_SURVEYED_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n {{'AREA_MUST_GREATER_OR_EQUAL_TO_1'| translate}}\r\n
\r\n
\r\n {{'ACTUAL_AREA_SURVEYED_CANNOT_BE_GREATER_THAN_BILLED_AREA_SURVEYED'| translate}}{{' '+ physicalVerficationData?.MIArea}}\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'TRANSPORTATION_AMOUNT/OTHER_ACCESSORIES_&_FITTING_CHARGES_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_BILLED_AMOUNT_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BILLED_TRANSPORTATION_AMOUNT_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_COST_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MAXIMUM_SUBSIDY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_SHARE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'AMOUNT_DEPOSIT_BY_FARMER_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'CHALLAN_TYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{'VIEW'| translate}}\r\n \r\n
\r\n {{'NULL'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{'VIEW'| translate}}\r\n \r\n
\r\n {{'NULL'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

{{ 'Recommended Calculation:-' }}

\r\n
\r\n \r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n

{{ 'State Guidelines' }}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{ 'Centre Guidelines' }}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n

{{ 'State Guidelines' }}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n
\r\n \r\n
\r\n \r\n

\r\n
\r\n \r\n
\r\n \r\n

\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n

{{ 'Center Guidelines' }}

\r\n
\r\n \r\n
\r\n \r\n

\r\n
\r\n \r\n
\r\n \r\n

\r\n
\r\n \r\n
\r\n \r\n

\r\n
\r\n
\r\n

Note: Calculation of Centre Share, State Share and State Topup is as Under:
\r\n              Farmer Category: Big 60% CS AND 40% SS of (Recommended Unit Cost x 0.45) & Topup = (Recommended Unit Cost x 0.40).
\r\n              Farmer Category: Other 60% CS AND 40% SS of (Recommended Unit Cost x 0.55) & Topup = (Recommended Unit Cost x 0.30).

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n {{'PROGRAMME_NAME_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'COMPONENT_ID_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'CATEGORY_ID_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'SIZE_ID_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'COMPONENT_NAME_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'SIZE_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'PRICE_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'ESTIMATED_QUANTITY_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'BILLED_QUANTITY_IS_REQUIRED'| translate}}.\r\n
\r\n \r\n
\r\n \r\n \r\n {{'ACTUAL_QUANTITY_IS_REQUIRED'| translate}}.\r\n {{'ACTUAL_QUANTITY_SHOULD_BE_LESS_THAN_BILLED_QUANTITY'| translate}}.\r\n Actual\r\n {{'QUANTITY_SHOULD_BE_GREATER_THAN_0'| translate}}\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'BATCH_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'LOT_NO'| translate}}\r\n \r\n \r\n \r\n {{'REMAINING_QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'QUANTITY_USED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.batchNumber}}\r\n {{product.lotNo}}\r\n {{product.remainingQuantity}}\r\n \r\n \r\n \r\n product.remainingQuantity }\" />\r\n
\r\n {{'Must not be negative'| translate}}\r\n
\r\n
product.remainingQuantity\">\r\n {{'Qunatity must not be greater than Remaining Quantity'| translate}} \r\n
\r\n
\r\n \r\n {{ product.quantityUsed }}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{selectedFinanceComponent?.inventory ? selectedFinanceComponent?.inventory?.length : 0 }}\r\n {{'INVENTORY'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_QUANTITY_USED'| translate}} {{ totalQuantityUsed }}
\r\n
selectedFinanceComponent.BilledQuantity\">\r\n

{{'TOTAL_SELECTED_QUANTITY_USED_MUST_NOT_BE_GREATER_THAN_BILLED_QUANTITY'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n","import { filter } from 'rxjs/operators';\r\nimport { FarmersDetailsService } from './../../../services/farmers-details.service';\r\nimport { Component, EventEmitter, OnInit, Output, OnDestroy ,Input} from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first } from 'rxjs';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { JsonPipe } from '@angular/common';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-image-attachments',\r\n templateUrl: './image-attachments.component.html',\r\n styleUrls: ['./image-attachments.component.scss']\r\n})\r\nexport class ImageAttachmentsComponent implements OnInit {\r\n\r\n documentList: any = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n appId: any;\r\n listImagePathJE: any;\r\n listImagePathXEN: any;\r\n miPhysicalApplicationData: any;\r\n showListImageJE: boolean = true;\r\n showListImageXEN: boolean = true;\r\n activeIndex: number = 0;\r\n displayCustomJE: boolean;\r\n displayCustomXEN: boolean;\r\n displayCustom: boolean;\r\n images = [];\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n constructor( private messageService: MessageService, private route: ActivatedRoute, private router: Router, private cryptoJsService: CryptoJsService, private deptDashBoardService: DepartmentDashboardService,private loader: AppLoaderService, private activityRecordService: ActivityRecordService) { }\r\n\r\n ngOnInit(): void {\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = this.cryptoJsService.DecryptData(params.autoId);\r\n this.appId = this.cryptoJsService.DecryptData(params.appId);\r\n if (this.appId) {\r\n if (JSON.parse(sessionStorage.getItem('documentList'))?.appId == this.appId) {\r\n this.documentList = JSON.parse(sessionStorage.getItem('documentList'))?.documentList;\r\n }\r\n // if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))?.length)) {\r\n // if ((JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'))[0]?.appID) == this.appId) {\r\n // this.miPhysicalAppReqBody = JSON.parse(sessionStorage.getItem('miPhysicalAppReqBody'));\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n // setTimeout(() => {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // return;\r\n // }, 1000);\r\n // }\r\n\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Please Save Finace Data to continue!' });\r\n // setTimeout(() => {\r\n // this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n // return;\r\n // }, 1000);\r\n // }\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be empty' });\r\n return;\r\n }\r\n }\r\n );\r\n this.miPhysicalApplicationData = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'));\r\n console.log(\"miPhysicalApplicationData\", this.miPhysicalApplicationData);\r\n \r\n\r\n if(this.miPhysicalApplicationData?.listDataForPhysicalVer){ \r\n for (let index = 0; index < this.miPhysicalApplicationData?.listDataForPhysicalVer.length; index++) {\r\n if(this.miPhysicalApplicationData.listDataForPhysicalVer[index].inventory!=null && this.miPhysicalApplicationData.listDataForPhysicalVer[index].inventory.length>0){\r\n delete this.miPhysicalApplicationData.listDataForPhysicalVer[index].selectedQuantity;\r\n delete this.miPhysicalApplicationData.listDataForPhysicalVer[index].selectedInventory;\r\n }\r\n } \r\n }\r\n if(sessionStorage.getItem('isJE')){\r\n this.showListImageJE = false;\r\n this.showListImageXEN = false;\r\n this.documentList = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathJE;\r\n }\r\n else if(sessionStorage.getItem('isXEN')){\r\n this.showListImageXEN = false;\r\n this.listImagePathJE = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathJE\r\n this.documentList = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathXEN;\r\n }\r\n else{\r\n this.listImagePathJE = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathJE;\r\n this.listImagePathXEN = JSON.parse(sessionStorage.getItem('miPhysicalApplicationData'))?.listImagePathXEN;\r\n }\r\n\r\n }\r\n onImageFormSubmit(){\r\n this.images = this.documentList;\r\n this.route.queryParams\r\n .subscribe(params => {\r\n if (params.autoId) {\r\n this.router.navigate([this.router.url.split('/')[1], 'application', 'finance'], { queryParams: { autoId: params.autoId, appId: params.appId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n );\r\n }\r\n onImageFormGoBack(){\r\n this.route.queryParams.subscribe((params) => {\r\n if (params.autoId) {\r\n this.router.navigate(\r\n [this.router.url.split('/')[1], 'application', 'basic'],\r\n { queryParams: { autoId: params.autoId, appId: params.appId } }\r\n );\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! AutoID cant be Empty',\r\n });\r\n }\r\n });\r\n }\r\n imageClick(index: number, type) {\r\n this.activeIndex = index;\r\n if(type == \"JE\"){\r\n this.displayCustomJE = true;\r\n }\r\n else if(type == \"XEN\"){\r\n this.displayCustomXEN = true;\r\n }\r\n else if(type == \"PA\"){\r\n this.displayCustom = true;\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-je-application',\r\n templateUrl: './je-application.component.html',\r\n styleUrls: ['./je-application.component.scss']\r\n})\r\nexport class JeApplicationComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, private cryptoJsService: CryptoJsService, private router: Router) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n userRole:any\r\n activeItem: any;\r\n\r\n ngOnInit() {\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.userRole =sessionStorage.getItem('userRole')\r\n if( this.userRole=='DD Associate'){\r\n this.items = [\r\n { label: 'Basic', icon: 'pi pi-fw pi-home', routerLink: `/${parentRoute}/application/basic`, queryParams: { autoId: this.autoId , appId : this.appId } },\r\n { label: 'Attachment', icon: 'pi pi-fw pi-calendar', routerLink: `/${parentRoute}/application/image-attachment`, queryParams: { autoId: this.autoId , appId : this.appId } },\r\n { label: 'Survey Detail', icon: 'pi pi-fw pi-calendar', routerLink: `/${parentRoute}/application/finance`, queryParams: { autoId: this.autoId , appId : this.appId } },\r\n // { label: 'Submit', icon: 'pi pi-fw pi-pencil', routerLink: `/${parentRoute}/application/attachment`, queryParams: { autoId: this.autoId , appId : this.appId } },\r\n ];\r\n }\r\n else{\r\n this.items = [\r\n { label: 'Basic', icon: 'pi pi-fw pi-home', routerLink: `/${parentRoute}/application/basic`, queryParams: { autoId: this.autoId , appId : this.appId } },\r\n { label: 'Survey Detail', icon: 'pi pi-fw pi-calendar', routerLink: `/${parentRoute}/application/finance`, queryParams: { autoId: this.autoId , appId : this.appId } },\r\n { label: 'Attachment', icon: 'pi pi-fw pi-pencil', routerLink: `/${parentRoute}/application/attachment`, queryParams: { autoId: this.autoId , appId : this.appId } },\r\n ];\r\n }\r\n }\r\n );\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-je',\r\n templateUrl: './je.component.html',\r\n styleUrls: ['./je.component.scss']\r\n})\r\nexport class JeComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'primeng/table';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\n// import { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-mi-physical-verfication-completed',\r\n templateUrl: './mi-physical-verfication-completed.component.html',\r\n styleUrls: ['./mi-physical-verfication-completed.component.scss']\r\n})\r\nexport class MiPhysicalVerficationCompletedComponent implements OnInit {\r\n\r\n @ViewChild('dt', { static: true }) public miVerificationTable: Table;\r\n\r\n canEditFinanceDetails: boolean = false;\r\n basicDetailsForm: FormGroup;\r\n isSubmitted = false;\r\n editIcon: string = 'pi pi-fw pi-pencil';\r\n saveIcon: string = 'pi pi-fw pi-check';\r\n physicalVerficationApplications: any = [];\r\n mobilePhysicalVerficationApplicationsData: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n toggleEditFinanceDetails() {\r\n this.canEditFinanceDetails = !this.canEditFinanceDetails;\r\n if (!this.canEditFinanceDetails) {\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Finance Details Modified' });\r\n }\r\n }\r\n selectedApplications: any[];\r\n submitted: boolean;\r\n items: MenuItem[];\r\n appVerificationItems: MenuItem[];\r\n public userID: any;\r\n public jeLogin: boolean = false;\r\n public xenLogin: boolean = false;\r\n public ddAssociateLogin: boolean = false;\r\n public dimicadaLogin: boolean = false;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private cryptoJsService: CryptoJsService,\r\n private confirmationService: ConfirmationService, \r\n private jeService: JEService, \r\n private router: Router, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n sessionStorage.setItem('isMIPhysicalVerPending', 'false');\r\n // this.miVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.physicalVerficationApplications, \"Physical_Verification_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.physicalVerficationApplications, \"Physical_Verification_List\");\r\n }\r\n },\r\n ];\r\n\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n // console.log('token.role', tokenData?.role)\r\n if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && tokenData.role == 'DMICADA'){\r\n this.dimicadaLogin = true\r\n }\r\n else if(tokenData && tokenData.role == 'DD Associate'){\r\n this.ddAssociateLogin = true\r\n }\r\n \r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.miVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n loadData(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem(\"MIPhysicalVerificationApproved\") != 'null' && (sessionStorage.getItem(\"MIPhysicalVerificationApproved\") && \r\n JSON.parse(window.sessionStorage.getItem('MIPhysicalVerificationApproved'))[0]?.FinYear == this.selectedYear)) {\r\n this.physicalVerficationApplications = JSON.parse(\r\n window.sessionStorage.getItem('MIPhysicalVerificationApproved')\r\n );\r\n this.mobilePhysicalVerficationApplicationsData = JSON.parse(\r\n window.sessionStorage.getItem('MIPhysicalVerificationApproved')\r\n ).filter(val => val.FinYear==window.sessionStorage.getItem('financialYear'));\r\n\r\n // this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Pending)', '', new Date(), 'Success');\r\n\r\n }else{\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.jeService.getApplicationsForPhysicalVerification(JSON.parse(payload)?.sub, 'Approved', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification (Approved)', '', new Date(), 'Success');\r\n this.loading = false;\r\n this.physicalVerficationApplications = data;\r\n // this.mobilePhysicalVerficationApplicationsData = data;\r\n this.mobilePhysicalVerficationApplicationsData = this.physicalVerficationApplications.filter(val => val.FinYear==this.selectedYear);\r\n \r\n \r\n this.physicalVerficationApplications.forEach(e=>{\r\n if(e.RegDate) {\r\n e.RegDate_sort = new Date(e.RegDate);\r\n e.registerationDate_filter = e.RegDate_sort.toString().substring(4, 24)\r\n }\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n\r\n if (this.physicalVerficationApplications?.length > 0) {\r\n sessionStorage.setItem(\r\n 'MIPhysicalVerificationApproved',\r\n JSON.stringify(this.physicalVerficationApplications)\r\n );\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.physicalVerficationApplications = [];\r\n this.mobilePhysicalVerficationApplicationsData = [];\r\n this.loading = false;\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification (Approved)', '', new Date(), err);\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n \r\n this.subscriptions.push(sub);\r\n }\r\n \r\n }\r\n\r\n selectPhysicalVerAppln(application: any) {\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Start', application?.AppID, new Date(), 'Success');\r\n if (application.AutoId) {\r\n let encryptedAutoId = this.cryptoJsService.Encrypt(application.AutoId.toString());\r\n let encryptedAppId = this.cryptoJsService.Encrypt(application.AppID.toString());\r\n this.router.navigate([this.router.url.split('/')[1], 'application'], { queryParams: { autoId: encryptedAutoId, appId: encryptedAppId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n // if (application.AppID) {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.AppID)]));\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // if(application.AppID){\r\n // this.loader.start();\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.AppID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.AppID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n if (application?.AppID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application?.AppID)]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n deletePhysicalVerAppln(application: any) {\r\n\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppID', header: 'App ID' },\r\n { field: 'RegDate', header: 'RegDate' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'District', header: 'District' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Targetdays', header: 'Target_Days' },\r\n { field: 'PendingCompletedDays', header: 'Pending_Days' },\r\n { field: 'VendorName', header: 'Vendor' },\r\n { field: 'Scheme', header: 'Scheme' },\r\n { field: 'AutoId', header: 'Auto Id' },\r\n { field: 'PhyVerificationStatus', header: 'PhyVerificationStatus' },\r\n { field: 'Status_Ar', header: 'Current Status' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App ID\": d.AppID,\r\n \"Reg_Date\": d.RegDate,\r\n \"Block\": d.Block,\r\n \"Village\": d.Village,\r\n \"District\": d.District,\r\n \"Farmer Name\": d.FarmerName,\r\n \"Caste\": d.Caste_Description,\r\n \"Programme Name\": d.ProgrammeName,\r\n \"Status\": d.Status,\r\n \"Target_Days\": d.Targetdays,\r\n \"Pending_Days\": d.PendingCompletedDays,\r\n \"Vendor\": d.VendorName,\r\n \"Scheme\": d.Scheme,\r\n \"Auto Id\": d.AutoId,\r\n \"PhyVerificationStatus\": d.PhyVerificationStatus,\r\n \"Current Status\": d.Status_Ar\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n refreshTable() {\r\n sessionStorage.removeItem('MIPhysicalVerificationApproved');\r\n // this.miVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n }\r\n rowBackgroundColor(product){\r\n if(product.PendingCompletedDays<=-2 && product.Status_Ar==\"P\"){\r\n //red color\r\n return \"#ff8080\"\r\n }\r\n else if(product.PendingCompletedDays==-1 && product.Status_Ar==\"P\"){\r\n //orange color\r\n return \"#ffc966\"\r\n }\r\n else if(product.PendingCompletedDays>=-1 && (product.Status_Ar==\"C\"||product.Status_Ar==\"A\")){\r\n //green color\r\n return \"#99e699\"\r\n }\r\n else if(product.PendingCompletedDays<=-2 && (product.Status_Ar==\"C\"||product.Status_Ar==\"A\")){\r\n //light red color\r\n return \"#ffb3b3\"\r\n }\r\n else {\r\n return \"#ffff\"\r\n }\r\n }\r\n\r\n mobileSearch(value) {\r\n this.mobilePhysicalVerficationApplicationsData = this.physicalVerficationApplications.filter((data:any)=>{\r\n if(data.AppID.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.RegDate.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.FarmerName.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.Village.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.VendorName.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.Scheme.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.AutoId.toString().toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data\r\n }\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}\r\n {{item.AppID}}\r\n
{{'DATE_OF_SURVEY'| translate}}\r\n {{item.RegDate_sort | date:'mediumDate'}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.FarmerName}}\r\n
{{'CASTE'| translate}}\r\n {{item.Caste_Description}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.Village}}\r\n
{{'VENDOR_NAME'| translate}}\r\n {{item.VendorName}}\r\n
{{'APPLICANT_TYPE'| translate}}\r\n {{item.ApplicantType}}\r\n
{{'USER_TYPE'| translate}}\r\n {{item.UserType}}\r\n
{{'ASSIGNED_DATE'| translate}}\r\n {{item.AssignedDate}}\r\n
{{'ACTION_DATE'| translate}}\r\n {{item.ActionDate}}\r\n
{{'SCHEME'| translate}}\r\n {{item.Scheme}}\r\n
{{'AUTOID'| translate}}\r\n {{item.AutoId}}\r\n
{{'CHALLAN_TYPE'| translate}}\r\n {{item.ChallanType}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.FinYear}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
{{'MI_PHYSICAL_VERIFICATION_APPLICATIONS'| translate}}
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MANAGE_APPLICATIONS' | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n {{'APP_ID' | translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_SURVEY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME' | translate}}\r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME' | translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME' | translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS_AR'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'DA_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'DMICADA_REMARKS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.AppID}}\r\n {{product?.RegDate_sort | date:'mediumDate' }}\r\n {{product?.FarmerName}}\r\n {{product?.Caste_Description}}\r\n {{product?.Village}}\r\n {{product?.VendorName}}\r\n {{product?.ApplicantType}}\r\n {{product?.UserType}}\r\n {{product?.ChallanType }}\r\n {{product?.Scheme}}\r\n {{product?.ProgrammeName}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product?.Targetdays}}\r\n {{product?.PendingCompletedDays}}\r\n {{product?.Status_Ar}}\r\n {{product?.Status}}\r\n {{product?.DARemarks}}\r\n {{product?.DMICADARemarks}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate }} {{physicalVerficationApplications ?\r\n physicalVerficationApplications.length : 0 }} {{'DETAILS_ADDED' | translate}}.\r\n
\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'primeng/table';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\n// import { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-mi-physical-verification-current',\r\n templateUrl: './mi-physical-verification-current.component.html',\r\n styleUrls: ['./mi-physical-verification-current.component.scss']\r\n})\r\nexport class MiPhysicalVerificationCurrentComponent implements OnInit {\r\n\r\n @ViewChild('dt', { static: true }) public miVerificationTable: Table;\r\n\r\n canEditFinanceDetails: boolean = false;\r\n basicDetailsForm: FormGroup;\r\n isSubmitted = false;\r\n editIcon: string = 'pi pi-fw pi-pencil';\r\n saveIcon: string = 'pi pi-fw pi-check';\r\n physicalVerficationApplications: any = [];\r\n mobilePhysicalVerficationApplicationsData: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n toggleEditFinanceDetails() {\r\n this.canEditFinanceDetails = !this.canEditFinanceDetails;\r\n if (!this.canEditFinanceDetails) {\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Finance Details Modified' });\r\n }\r\n }\r\n selectedApplications: any[];\r\n submitted: boolean;\r\n items: MenuItem[];\r\n appVerificationItems: MenuItem[];\r\n public userID: any;\r\n public jeLogin: boolean = false;\r\n public xenLogin: boolean = false;\r\n public ddAssociateLogin: boolean = false;\r\n public dimicadaLogin: boolean = false;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private cryptoJsService: CryptoJsService,\r\n private confirmationService: ConfirmationService, \r\n private jeService: JEService, \r\n private router: Router, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n sessionStorage.setItem('isMIPhysicalVerPending', 'false');\r\n // this.miVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.physicalVerficationApplications, \"Physical_Verification_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.physicalVerficationApplications, \"Physical_Verification_List\");\r\n }\r\n },\r\n ];\r\n\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n // console.log('token.role', tokenData?.role)\r\n if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && tokenData.role == 'DMICADA'){\r\n this.dimicadaLogin = true\r\n }\r\n else if(tokenData && tokenData.role == 'DD Associate'){\r\n this.ddAssociateLogin = true\r\n }\r\n\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.miVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n loadData(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem(\"MIPhysicalVerificationCurrent\") != 'null' && (sessionStorage.getItem(\"MIPhysicalVerificationCurrent\") && \r\n JSON.parse(window.sessionStorage.getItem('MIPhysicalVerificationCurrent'))[0]?.FinYear == this.selectedYear)) {\r\n this.physicalVerficationApplications = JSON.parse(\r\n window.sessionStorage.getItem('MIPhysicalVerificationCurrent')\r\n );\r\n this.mobilePhysicalVerficationApplicationsData = JSON.parse(\r\n window.sessionStorage.getItem('MIPhysicalVerificationCurrent')\r\n ).filter(val => val.FinYear==window.sessionStorage.getItem('financialYear'));\r\n // this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Pending)', '', new Date(), 'Success');\r\n\r\n }else{\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loader.start(); \r\n this.loading = true;\r\n let sub = this.jeService.getApplicationsForPhysicalVerification(JSON.parse(payload)?.sub, 'Current', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification (Current)', '', new Date(), 'Success');\r\n this.loading = false;\r\n this.physicalVerficationApplications = data;\r\n // this.mobilePhysicalVerficationApplicationsData = data;\r\n this.mobilePhysicalVerficationApplicationsData = this.physicalVerficationApplications.filter(val => val.FinYear==this.selectedYear);\r\n \r\n this.physicalVerficationApplications.forEach(e=>{\r\n if(e.RegDate) {\r\n e.RegDate_sort=new Date(e.RegDate);\r\n e.registerationDate_filter = e.RegDate_sort.toString().substring(4, 24);\r\n }\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n\r\n if (this.physicalVerficationApplications?.length > 0) {\r\n sessionStorage.setItem(\r\n 'MIPhysicalVerificationCurrent',\r\n JSON.stringify(this.physicalVerficationApplications)\r\n );\r\n }\r\n \r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.physicalVerficationApplications = [];\r\n this.mobilePhysicalVerficationApplicationsData = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification (Current)', '', new Date(), err);\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n \r\n this.subscriptions.push(sub);\r\n }\r\n \r\n }\r\n\r\n selectPhysicalVerAppln(application: any) {\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Start', application?.AppID, new Date(), 'Success');\r\n if (application.AutoId) {\r\n sessionStorage.setItem('MISelectedAppType', 'current');\r\n let encryptedAutoId = this.cryptoJsService.Encrypt(application.AutoId.toString());\r\n let encryptedAppId = this.cryptoJsService.Encrypt(application.AppID.toString());\r\n this.router.navigate([this.router.url.split('/')[1], 'application'], { queryParams: { autoId: encryptedAutoId, appId: encryptedAppId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n // if (application.AppID) {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.AppID)]));\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // if(application.AppID){\r\n // this.loader.start();\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.AppID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.AppID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n if (application?.AppID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application?.AppID)]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n deletePhysicalVerAppln(application: any) {\r\n\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppID', header: 'App ID' },\r\n { field: 'RegDate', header: 'RegDate' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'District', header: 'District' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Targetdays', header: 'Target_Days' },\r\n { field: 'PendingCompletedDays', header: 'Pending_Days' },\r\n { field: 'VendorName', header: 'Vendor' },\r\n { field: 'Scheme', header: 'Scheme' },\r\n { field: 'AutoId', header: 'Auto Id' },\r\n { field: 'PhyVerificationStatus', header: 'PhyVerificationStatus' },\r\n { field: 'Status_Ar', header: 'Current Status' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App ID\": d.AppID,\r\n \"Reg_Date\": d.RegDate,\r\n \"Block\": d.Block,\r\n \"Village\": d.Village,\r\n \"District\": d.District,\r\n \"Farmer Name\": d.FarmerName,\r\n \"Caste\": d.Caste_Description,\r\n \"Programme Name\": d.ProgrammeName,\r\n \"Status\": d.Status,\r\n \"Target_Days\": d.Targetdays,\r\n \"Pending_Days\": d.PendingCompletedDays,\r\n \"Vendor\": d.VendorName,\r\n \"Scheme\": d.Scheme,\r\n \"Auto Id\": d.AutoId,\r\n \"PhyVerificationStatus\": d.PhyVerificationStatus,\r\n \"Current Status\": d.Status_Ar\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n refreshTable() {\r\n sessionStorage.removeItem('MIPhysicalVerificationCurrent');\r\n // this.miVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n }\r\n rowBackgroundColor(product){\r\n if(product.PendingCompletedDays<=-2 && product.Status_Ar==\"P\"){\r\n //red color\r\n return \"#ff8080\"\r\n }\r\n else if(product.PendingCompletedDays==-1 && product.Status_Ar==\"P\"){\r\n //orange color\r\n return \"#ffc966\"\r\n }\r\n else if(product.PendingCompletedDays>=-1 && (product.Status_Ar==\"C\"||product.Status_Ar==\"A\")){\r\n //green color\r\n return \"#99e699\"\r\n }\r\n else if(product.PendingCompletedDays<=-2 && (product.Status_Ar==\"C\"||product.Status_Ar==\"A\")){\r\n //light red color\r\n return \"#ffb3b3\"\r\n }\r\n else {\r\n return \"#ffff\"\r\n }\r\n }\r\n\r\n mobileSearch(value) {\r\n this.mobilePhysicalVerficationApplicationsData = this.physicalVerficationApplications.filter((data:any)=>{\r\n if(data.AppID.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.RegDate.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.FarmerName.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.Village.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.VendorName.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.Scheme.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.AutoId.toString().toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data\r\n }\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}\r\n {{item.AppID}}\r\n
{{'DATE_OF_SURVEY'| translate}}\r\n {{item.RegDate_sort | date:'mediumDate'}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.FarmerName}}\r\n
{{'CASTE'| translate}}\r\n {{item.Caste_Description}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.Village}}\r\n
{{'VENDOR_NAME'| translate}}\r\n {{item.VendorName}}\r\n
{{'APPLICANT_TYPE'| translate}}\r\n {{item.ApplicantType}}\r\n
{{'USER_TYPE'| translate}}\r\n {{item.UserType}}\r\n
{{'ASSIGNED_DATE'| translate}}\r\n {{item.AssignedDate}}\r\n
{{'ACTION_DATE'| translate}}\r\n {{item.ActionDate}}\r\n
{{'SCHEME'| translate}}\r\n {{item.Scheme}}\r\n
{{'AUTOID'| translate}}\r\n {{item.AutoId}}\r\n
{{'CHALLAN_TYPE'| translate}}\r\n {{item.ChallanType}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.FinYear}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
{{'MI_PHYSICAL_VERIFICATION_APPLICATIONS'| translate}}
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MANAGE_APPLICATIONS' | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n\r\n {{'APP_ID' | translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_SURVEY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME' | translate}}\r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME' | translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME' | translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS_AR'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'DA_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'DMICADA_REMARKS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.AppID}}\r\n {{product?.RegDate_sort | date:'mediumDate' }}\r\n {{product?.FarmerName}}\r\n {{product?.Caste_Description}}\r\n {{product?.Village}}\r\n {{product?.VendorName}}\r\n {{product?.ApplicantType}}\r\n {{product?.UserType}}\r\n {{product?.ChallanType }}\r\n {{product?.Scheme}}\r\n {{product?.ProgrammeName}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product?.Targetdays}}\r\n {{product?.PendingCompletedDays}}\r\n {{product?.Status_Ar}}\r\n {{product?.Status}}\r\n {{product?.DARemarks}}\r\n {{product?.DMICADARemarks}}\r\n \r\n \r\n \r\n {{product.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate }} {{physicalVerficationApplications ?\r\n physicalVerficationApplications.length : 0 }} {{'DETAILS_ADDED' | translate}}.\r\n
\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'primeng/table';\r\nimport { MenuItem, MessageService, ConfirmationService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\n// import { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-mi-physical-verification-pending',\r\n templateUrl: './mi-physical-verification-pending.component.html',\r\n styleUrls: ['./mi-physical-verification-pending.component.scss']\r\n})\r\nexport class MiPhysicalVerificationPendingComponent implements OnInit {\r\n\r\n @ViewChild('dt', { static: true }) public miVerificationTable: Table;\r\n\r\n canEditFinanceDetails: boolean = false;\r\n basicDetailsForm: FormGroup;\r\n isSubmitted = false;\r\n editIcon: string = 'pi pi-fw pi-pencil';\r\n saveIcon: string = 'pi pi-fw pi-check';\r\n physicalVerficationApplications: any = [];\r\n mobilePhysicalVerficationApplicationsData: any = [];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n toggleEditFinanceDetails() {\r\n this.canEditFinanceDetails = !this.canEditFinanceDetails;\r\n if (!this.canEditFinanceDetails) {\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Finance Details Modified' });\r\n }\r\n }\r\n selectedApplications: any[];\r\n submitted: boolean;\r\n items: MenuItem[];\r\n appVerificationItems: MenuItem[];\r\n public userID: any;\r\n public jeLogin: boolean = false;\r\n public xenLogin: boolean = false;\r\n public ddAssociateLogin: boolean = false;\r\n public dimicadaLogin: boolean = false;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private cryptoJsService: CryptoJsService,\r\n private confirmationService: ConfirmationService, \r\n private jeService: JEService, \r\n private router: Router, \r\n private dashboard: DashboardService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n sessionStorage.setItem('isMIPhysicalVerPending', 'true');\r\n \r\n // this.miVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.physicalVerficationApplications, \"Physical_Verification_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.physicalVerficationApplications, \"Physical_Verification_List\");\r\n }\r\n },\r\n ];\r\n\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n // console.log('token.role', tokenData?.role)\r\n if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && tokenData.role == 'DMICADA'){\r\n this.dimicadaLogin = true\r\n }\r\n else if(tokenData && tokenData.role == 'DD Associate'){\r\n this.ddAssociateLogin = true\r\n }\r\n \r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n }\r\n \r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.miVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n loadData(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (sessionStorage.getItem(\"MIPhysicalVerificationPending\") != 'null' && (sessionStorage.getItem(\"MIPhysicalVerificationPending\") && \r\n JSON.parse(window.sessionStorage.getItem('MIPhysicalVerificationPending'))[0]?.FinYear == this.selectedYear)) {\r\n this.physicalVerficationApplications = JSON.parse(\r\n window.sessionStorage.getItem('MIPhysicalVerificationPending'));\r\n \r\n this.mobilePhysicalVerficationApplicationsData = JSON.parse(\r\n window.sessionStorage.getItem('MIPhysicalVerificationPending')\r\n ).filter(val => val.FinYear==window.sessionStorage.getItem('financialYear'));\r\n // this.activityRecordService.activityRecord(this.userID, 'Farmer Applications For Approval (Pending)', '', new Date(), 'Success');\r\n\r\n }else{\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.jeService.getApplicationsForPhysicalVerification(JSON.parse(payload)?.sub, 'Pending', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.physicalVerficationApplications = data;\r\n // this.mobilePhysicalVerficationApplicationsData = data;\r\n this.mobilePhysicalVerficationApplicationsData = this.physicalVerficationApplications.filter(val => val.FinYear==this.selectedYear);\r\n \r\n \r\n this.physicalVerficationApplications.forEach(e=>{\r\n if(e.RegDate) {\r\n e.RegDate_sort=new Date(e.RegDate);\r\n e.registerationDate_filter = e.RegDate_sort.toString().substring(4, 24);\r\n }\r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n })\r\n \r\n if (this.physicalVerficationApplications?.length > 0) {\r\n sessionStorage.setItem(\r\n 'MIPhysicalVerificationPending',\r\n JSON.stringify(this.physicalVerficationApplications)\r\n );\r\n }\r\n \r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification (Pending)', '', new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.physicalVerficationApplications = [];\r\n this.mobilePhysicalVerficationApplicationsData = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification (Pending)', '', new Date(), err);\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n \r\n this.subscriptions.push(sub);\r\n }\r\n \r\n }\r\n\r\n selectPhysicalVerAppln(application: any) {\r\n this.activityRecordService.activityRecord(this.userID, 'MI Physical Verification Action Start', application?.AppID, new Date(), 'Success');\r\n if (application.AutoId) {\r\n sessionStorage.setItem('MISelectedAppType', 'pending');\r\n let encryptedAutoId = this.cryptoJsService.Encrypt(application.AutoId.toString());\r\n let encryptedAppId = this.cryptoJsService.Encrypt(application.AppID.toString());\r\n this.router.navigate([this.router.url.split('/')[1], 'application'], { queryParams: { autoId: encryptedAutoId, appId: encryptedAppId } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n // if (application.AppID) {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.AppID)]));\r\n // window.open(link, '_blank');\r\n // } else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n // if(application.AppID){\r\n // this.loader.start();\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.AppID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.AppID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n if (application?.AppID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application?.AppID)]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n deletePhysicalVerAppln(application: any) {\r\n\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppID', header: 'App ID' },\r\n { field: 'RegDate', header: 'RegDate' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'District', header: 'District' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'Caste_Description', header: 'Caste' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Targetdays', header: 'Target_Days' },\r\n { field: 'PendingCompletedDays', header: 'Pending_Days' },\r\n { field: 'VendorName', header: 'Vendor' },\r\n { field: 'Scheme', header: 'Scheme' },\r\n { field: 'AutoId', header: 'Auto Id' },\r\n { field: 'PhyVerificationStatus', header: 'PhyVerificationStatus' },\r\n { field: 'Status_Ar', header: 'Current Status' }\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App ID\": d.AppID,\r\n \"Reg_Date\": d.RegDate,\r\n \"Block\": d.Block,\r\n \"Village\": d.Village,\r\n \"District\": d.District,\r\n \"Farmer Name\": d.FarmerName,\r\n \"Caste\": d.Caste_Description,\r\n \"Programme Name\": d.ProgrammeName,\r\n \"Status\": d.Status,\r\n \"Target_Days\": d.Targetdays,\r\n \"Pending_Days\": d.PendingCompletedDays,\r\n \"Vendor\": d.VendorName,\r\n \"Scheme\": d.Scheme,\r\n \"Auto Id\": d.AutoId,\r\n \"PhyVerificationStatus\": d.PhyVerificationStatus,\r\n \"Current Status\": d.Status_Ar\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n refreshTable() {\r\n sessionStorage.removeItem('MIPhysicalVerificationPending');\r\n // this.miVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n }\r\n rowBackgroundColor(product){\r\n if(product.PendingCompletedDays<=-2 && product.Status_Ar==\"P\"){\r\n //red color\r\n return \"#ff8080\"\r\n }\r\n else if(product.PendingCompletedDays==-1 && product.Status_Ar==\"P\"){\r\n //orange color\r\n return \"#ffc966\"\r\n }\r\n else if(product.PendingCompletedDays>=-1 && (product.Status_Ar==\"C\"||product.Status_Ar==\"A\")){\r\n //green color\r\n return \"#99e699\"\r\n }\r\n else if(product.PendingCompletedDays<=-2 && (product.Status_Ar==\"C\"||product.Status_Ar==\"A\")){\r\n //light red color\r\n return \"#ffb3b3\"\r\n }\r\n else {\r\n return \"#ffff\"\r\n }\r\n }\r\n\r\n mobileSearch(value) {\r\n this.mobilePhysicalVerficationApplicationsData = this.physicalVerficationApplications.filter((data:any)=>{\r\n if(data.AppID.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.RegDate.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.FarmerName.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.Village.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.VendorName.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.Scheme.toString().toLowerCase().includes(value.toLowerCase())\r\n || data.AutoId.toString().toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data\r\n }\r\n })\r\n }\r\n\r\n}\r\n","\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}\r\n {{item.AppID}}\r\n
{{'DATE_OF_SURVEY'| translate}}\r\n {{item.RegDate_sort | date:'mediumDate'}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.FarmerName}}\r\n
{{'CASTE'| translate}}\r\n {{item.Caste_Description}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.Village}}\r\n
{{'VENDOR_NAME'| translate}}\r\n {{item.VendorName}}\r\n
{{'APPLICANT_TYPE'| translate}}\r\n {{item.ApplicantType}}\r\n
{{'USER_TYPE'| translate}}\r\n {{item.UserType}}\r\n
{{'ASSIGNED_DATE'| translate}}\r\n {{item.AssignedDate}}\r\n
{{'SCHEME'| translate}}\r\n {{item.Scheme}}\r\n
{{'AUTOID'| translate}}\r\n {{item.AutoId}}\r\n
{{'CHALLAN_TYPE'| translate}}\r\n {{item.ChallanType}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.FinYear}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
{{'MI_PHYSICAL_VERIFICATION_APPLICATIONS'| translate}}
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MANAGE_APPLICATIONS' | translate }}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n\r\n {{'APP_ID' | translate}}\r\n \r\n \r\n \r\n {{'DATE_OF_SURVEY' | translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME' | translate}}\r\n \r\n \r\n \r\n {{'CASTE' | translate}}\r\n \r\n \r\n \r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n {{'VENDOR_NAME' | translate}}\r\n \r\n \r\n \r\n {{'APPLICANT_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'CHALLAN_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'SCHEME' | translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME' | translate}}\r\n \r\n \r\n \r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_DAYS' | translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS_AR'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'DA_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'DMICADA_REMARKS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.AppID}}\r\n {{product?.RegDate_sort | date:'mediumDate' }}\r\n {{product?.FarmerName}}\r\n {{product?.Caste_Description}}\r\n {{product?.Village}}\r\n {{product?.VendorName}}\r\n {{product?.ApplicantType}}\r\n {{product?.UserType}}\r\n {{product?.ChallanType }}\r\n {{product?.Scheme}}\r\n {{product?.ProgrammeName}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product?.Targetdays}}\r\n {{product?.PendingCompletedDays}}\r\n {{product?.Status_Ar}}\r\n {{product?.Status}}\r\n {{product?.DARemarks}}\r\n {{product?.DMICADARemarks}}\r\n \r\n \r\n {{product.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate }} {{physicalVerficationApplications ?\r\n physicalVerficationApplications.length : 0 }} {{'DETAILS_ADDED' | translate}}.\r\n
\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-mi-physical-verifications',\r\n templateUrl: './mi-physical-verifications.component.html',\r\n styleUrls: ['./mi-physical-verifications.component.scss']\r\n})\r\nexport class MiPhysicalVerificationsComponent implements OnInit {\r\n\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n // this.autoId = params.autoId;\r\n // this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/physical-verification/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/physical-verification/current`},\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/physical-verification/approved` }, \r\n ];\r\n }\r\n );\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\n\r\n@Component({\r\n selector: 'app-mi-source-location',\r\n templateUrl: './mi-source-location.component.html',\r\n styleUrls: ['./mi-source-location.component.scss'],\r\n})\r\nexport class MiSourceLocationComponent implements OnInit {\r\n public userId: any;\r\n public vendorRegId: any;\r\n public displaySourceLocationDialog: boolean = false;\r\n public rowData: any;\r\n public latPosition: any;\r\n public longPosition: any;\r\n public micada1Data: any;\r\n \r\n\r\n options: any;\r\n // overlays: any[];\r\n overlays: google.maps.Marker[] = [];\r\n showMap: boolean = false;\r\n showgeoLocation: boolean = false;\r\n\r\n selectedStatus: any;\r\n remarks: String;\r\n items: any[];\r\n\r\n constructor(\r\n private jeService: JEService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 7,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE\r\n };\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n\r\n let actionId = 18; // Do not Change, it is fixed for Farmer Application Verifications\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n this.selectedStatus = this.items[0]?.status;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.loader.start();\r\n this.jeService\r\n .getMICADA1data(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n console.log('Response Data', data);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.micada1Data = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onRowSelect(row) {\r\n console.log('row', row);\r\n this.rowData = row;\r\n this.displaySourceLocationDialog = true;\r\n }\r\n\r\n onCloseDialog() {\r\n this.displaySourceLocationDialog = false;\r\n this.rowData = [];\r\n this.showgeoLocation = false;\r\n this.showMap = false;\r\n this.remarks = null;\r\n }\r\n\r\n submitFinalData() {\r\n let coordinates = this.latPosition + ', ' + this.longPosition;\r\n let reqBody = {\r\n app_id: this.rowData?.app_id,\r\n programmename: this.rowData?.programmename,\r\n name: this.rowData?.name,\r\n father_name: this.rowData?.father_name,\r\n mother_Name: this.rowData?.mother_Name,\r\n distict: this.rowData?.distict,\r\n block: this.rowData?.block,\r\n village: this.rowData?.village,\r\n gpsCoordinate: coordinates,\r\n remarks: this.remarks,\r\n userId: this.userId\r\n };\r\n\r\n this.loader.start();\r\n this.jeService\r\n .insertMISurveyCoordinates(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Submit Approval',\r\n this.rowData?.app_id,\r\n new Date(),\r\n this.selectedStatus.status\r\n );\r\n let resp = JSON.stringify(data);\r\n if (data == \"Data saved.\") {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n this.loadData();\r\n this.onCloseDialog();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n }\r\n },\r\n });\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n this.showgeoLocation = true;\r\n this.options = {\r\n center: { lat: pos.lat, lng: pos.lng },\r\n zoom: 12,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE\r\n };\r\n this.addOverlay(pos.lat, pos.lng);\r\n console.log(this.latPosition, this.longPosition);\r\n });\r\n }\r\n\r\n _getPosition(): Promise {\r\n this.loader.start();\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n this.loader.close();\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n this.loader.close();\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n addOverlay(latitide: any, longitude: any) {\r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: latitide, lng: longitude },\r\n title: 'Current Location',\r\n })\r\n );\r\n this.showMap = true;\r\n }\r\n\r\n captureLocation(){\r\n this.getGPSCoordinates();\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}\r\n {{item.app_id}}\r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.programmename}}\r\n
{{'NAME'| translate}}\r\n {{item.name}}\r\n
{{'FATHER_NAME'| translate}}\r\n {{item.father_name}}\r\n
{{'MOTHER_NAME'| translate}}\r\n {{item.mother_Name}}\r\n
{{'DISTICT'| translate}}\r\n {{item.distict}}\r\n
{{'BLOCK'| translate}}\r\n {{item.block}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.village}}\r\n
{{'GPS_COORDINATES'| translate}}\r\n {{item.gpsCoordinate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'MI_PHYSICAL_LOCATION'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'NAME'| translate}}\r\n \r\n \r\n \r\n {{'FATHER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'MOTHER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'GPS_COORDINATES'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n {{product.app_id}}\r\n {{product.programmename}}\r\n {{product.name}}\r\n {{product.father_name}}\r\n {{product.mother_Name}}\r\n {{product.distict}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.gpsCoordinate}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{micada1Data ? micada1Data.length : 0 }}\r\n {{'VER_APP_ADDED'|\r\n translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { VendorRegistrationsComponent } from 'src/app/components/vendor-registrations/vendor-registrations.component'\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Location } from '@angular/common';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { first } from 'rxjs';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-data',\r\n templateUrl: './vendor-data.component.html',\r\n styleUrls: ['./vendor-data.component.scss'],\r\n providers: [VendorRegistrationsComponent]\r\n})\r\nexport class VendorDataComponent implements OnInit {\r\n vendorDetails: any;\r\n vendorFormData:any;\r\n VendorTableData:any;\r\n vendorAttachmentData:any;\r\n basicDetailsForm: FormGroup;\r\n public tableHeaderName = 'Completed Apps';\r\n miCompletedReport: MenuItem[];\r\n imageError: string = 'Document Not Found.';\r\n // @Input() mobilenumberEmitInput: any;\r\n\r\n public emailId: any;\r\n public deptRemarks: any;\r\n public statusList: any = [];\r\n public selectedStatus: any;\r\n\r\n public objectionTypes: any = [];\r\n public selectedobjections: any = [];\r\n\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService,\r\n private jeService: JEService, \r\n private veReg: VendorRegistrationsComponent, \r\n private location: Location,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private personalDetalSer: FarmersDetailsService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n // setTimeout(() => {\r\n // this.statusList = [\r\n // {\r\n // name: 'Approve',\r\n // id: 1\r\n // },\r\n // {\r\n // name: 'Reject',\r\n // id: 0\r\n // }\r\n // ]\r\n // }, 200)\r\n\r\n this.getStatusList();\r\n \r\n this.route.queryParams.subscribe(params => {\r\n //const encryptedMobile = params['Mobile'];\r\n const encryptedMobile = params['email'];\r\n if (encryptedMobile) {\r\n this.emailId = this.cryptoJsService.DecryptData(encryptedMobile);\r\n this.getVendorFullDetailsByEmail(this.emailId);\r\n }else{\r\n setTimeout(()=> this.onClickBack(), 1300);\r\n }\r\n });\r\n\r\n this.getObjectionTypeList();\r\n }\r\n\r\n getStatusList() {\r\n this.loader.start();\r\n this.personalDetalSer\r\n .getVendorRegStatusMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.statusList = data;\r\n\r\n } else {\r\n this.statusList = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Objection Types list not loaded. ${data}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.statusList = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Error! ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getObjectionTypeList() {\r\n this.loader.start();\r\n this.personalDetalSer\r\n .getVendorRegDocTypeMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.objectionTypes = data;\r\n\r\n } else {\r\n this.objectionTypes = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Objection Types list not loaded. ${data}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.objectionTypes = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Error! ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getVendorFullDetailsByEmail(emailId: string) {\r\n this.jeService.getVendorFullDetailsByEmail(emailId).subscribe({\r\n next: (data) => {\r\n this.vendorDetails = data;\r\n this.vendorFormData = data.personalDetails.$values[0];\r\n this.VendorTableData = data.componentDetails.$values;\r\n this.vendorAttachmentData = data.attachmentDetails.$values;\r\n // Handle your form display logic here\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n setTimeout(()=> this.onClickBack(), 1300);\r\n }\r\n });\r\n }\r\n removeAttachment(index: number) {\r\n if (confirm('Are you sure you want to remove this attachment?')) {\r\n this.vendorAttachmentData.splice(index, 1);\r\n }\r\n }\r\n\r\n onSubmit(){\r\n if(this.selectedStatus == null || this.deptRemarks == null || this.deptRemarks == ''){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Status & Enter Remark',\r\n });\r\n return;\r\n }else if(this.selectedStatus == null && this.selectedobjections.length == 0){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Objection Type',\r\n });\r\n return;\r\n }\r\n else{\r\n let reqBody = {\r\n \"approved\": this.selectedStatus,\r\n \"remarks\": this.deptRemarks,\r\n \"email_ID\": this.emailId,\r\n \"objDocIds\": this.selectedobjections.map(item => item.Id).join(\",\")\r\n }\r\n\r\n this.submitStaus(reqBody);\r\n }\r\n }\r\n\r\n submitStaus(reqBody) {\r\n this.loader.start();\r\n this.jeService\r\n .submitVendorApprovalStatus(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if(res == \"Details Updated\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: `${res}`,\r\n });\r\n setTimeout(()=> this.onClickBack(), 1300);\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `${res}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onClickBack() {\r\n this.location.back();\r\n }\r\n\r\n onStatusChange(event){\r\n console.log(event)\r\n console.log(this.selectedStatus)\r\n }\r\n}","\r\n
\r\n
\r\n
\r\n
\r\n {{ \"BASIC_INFORMATION\" | translate }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{ \"ATTACHMENT_DETAILS\" | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{ 'View Doc' | translate }}\r\n

\r\n\r\n
\r\n
\r\n

\r\n {{ imageError }}\r\n

\r\n
\r\n\r\n\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n {{ \"Component Details\" | translate }}\r\n \r\n
\r\n\r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n {{'Vendor Name'| translate}}\r\n {{'Component Category'| translate}}\r\n {{'Component Name'| translate}}\r\n {{'Component Size'| translate}}\r\n \r\n {{'CML Sr No'| translate}}\r\n {{'CML Validity'| translate}}\r\n {{'CML Certificate'| translate}}\r\n \r\n {{'Mobile'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n \r\n {{consolidateData?.VendorName}}\r\n {{consolidateData?.Component_Cat}}\r\n {{consolidateData?.Component}}\r\n {{consolidateData?.Component_Size}}\r\n \r\n {{consolidateData?.CML_SrNo }}\r\n {{consolidateData?.CML_Validity | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{consolidateData?.Mobile}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-view-farmer-application',\r\n templateUrl: './view-farmer-application.component.html',\r\n styleUrls: ['./view-farmer-application.component.scss']\r\n})\r\nexport class ViewFarmerApplicationComponent implements OnInit {\r\n\r\n userID: any;\r\n appId: any;\r\n \r\n constructor(\r\n private route: ActivatedRoute,\r\n private activityRecordService: ActivityRecordService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.appId = this.cryptoJsService.DecryptData(this.route.snapshot.paramMap.get('appId'));\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(this.userID, 'View Farmer Application', this.appId, new Date(), 'Success');\r\n }\r\n\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-head-off-executives',\r\n templateUrl: './head-off-executives.component.html',\r\n styleUrls: ['./head-off-executives.component.scss']\r\n})\r\nexport class HeadOffExecutivesComponent implements OnInit {\r\n\r\n public officesList: any = [];\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.officesList = [\r\n {\r\n \"sNo\": 1,\r\n \"officeName\": \"Dr. Satbir Singh Kadian\",\r\n \"designation\": \"Administrator\",\r\n \"contact_landLine\": \"0172-2566408, 2571031, \\n FAX-0172-2562275\",\r\n \"email_address\": \"admr.cadapkl@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 2,\r\n \"officeName\": \"Sh. S.D.Sharma\",\r\n \"designation\": \"Chief Engineer\",\r\n \"contact_landLine\": \"0172-2565984\",\r\n \"email_address\": \"chiefengineercada@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 3,\r\n \"officeName\": \"Sh. Parshant, HCS\",\r\n \"designation\": \"Officer on Special Duty\",\r\n \"contact_landLine\": \"0172-2567034\",\r\n \"email_address\": \"osdcadapkl@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 4,\r\n \"officeName\": \"Sh. Dhoop Singh\",\r\n \"designation\": \"Director Micro -Irrigation \",\r\n \"contact_landLine\": \"0172-2990399\",\r\n \"email_address\": \"dmicada2021@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 5,\r\n \"officeName\": \"Sh. Rajesh Yadav\",\r\n \"designation\": \"Joint Director (Stat.)\",\r\n \"contact_landLine\": \"0172-2564317\",\r\n \"email_address\": \"jds.cadaharyana@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 6,\r\n \"officeName\": \"Sh. Sanjeev Jain\",\r\n \"designation\": \"Chief Accounts Officer\",\r\n \"contact_landLine\": \"0172-2567032\",\r\n \"email_address\": \"cada.acctt@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 7,\r\n \"officeName\": \"Vacant\",\r\n \"designation\": \"Executive Engineer (Works)\",\r\n \"contact_landLine\": \"0172-2573422\",\r\n \"email_address\": \"xenworkscada@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 8,\r\n \"officeName\": \"Sh. Rajesh Kumar\",\r\n \"designation\": \"Deputy Director \",\r\n \"contact_landLine\": \"0172-2564317\"\r\n },\r\n {\r\n \"sNo\": 9,\r\n \"officeName\": \"Sh. Diwan Chand\",\r\n \"designation\": \"Secretary\\/Administrator\",\r\n \"contact_landLine\": \"0172-2566408, 2571031\",\r\n \"email_address\": \"psadmrcada@gamil.com\"\r\n },\r\n {\r\n \"sNo\": 10,\r\n \"officeName\": \"Sh. Hanuman Jha\",\r\n \"designation\": \"Computer Programmer\",\r\n \"contact_landLine\": 7696096743,\r\n \"email_address\": \"computerprogrammercada@gmail.com\"\r\n },\r\n ];\r\n }\r\n\r\n}\r\n\r\n","
{{ 'INCUMBENCY_HEAD_OFF_OFFICERS' | translate }}
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'OFFICER_NAME'| translate}}\r\n {{'DESIGNATION'| translate}}\r\n {{'CONTACT_NO(LANDLINE)'| translate}}\r\n {{'EMAIL_ADDRESS'| translate}}\r\n \r\n \r\n \r\n \r\n {{ product.sNo }}\r\n {{ product.officeName }}\r\n {{ product.designation }}\r\n {{ product.contact_landLine }}\r\n {{ product.email_address }}\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-key-executives',\r\n templateUrl: './key-executives.component.html',\r\n styleUrls: ['./key-executives.component.scss']\r\n})\r\nexport class KeyExecutivesComponent implements OnInit {\r\n\r\n public officesList: any = [];\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.officesList = [\r\n {\r\n \"sNo\": 1,\r\n \"officeName\": \"Sh. Sanjay Rahar\",\r\n \"designation\": \"SE, Rohtak\",\r\n \"contact_landLine\": \"01262-256006\",\r\n \"contact_mobile\": 9416322922,\r\n \"email_address\": \"serohtakcad1@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 2,\r\n \"officeName\": \"Sh. Dhoop Singh\",\r\n \"designation\": \"SE, Hisar\",\r\n \"contact_landLine\": \"01662-227369\",\r\n \"contact_mobile\": 9416256246,\r\n \"email_address\": \"secadhisar01@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 3,\r\n \"officeName\": \"Sh. Kamal Kant\",\r\n \"designation\": \"SE, Karnal\",\r\n \"contact_landLine\": \"01746-222028\",\r\n \"contact_mobile\": 9416369365,\r\n \"email_address\": \"sekaithalcad@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 4,\r\n \"officeName\": \"Sh. Navdeep Rathore\",\r\n \"designation\": \"SE, MEQC Panchkula\",\r\n \"contact_landLine\": \"0172-2583175\",\r\n \"contact_mobile\": 9467282039,\r\n \"email_address\": \"semeqcpkl@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 5,\r\n \"officeName\": \"Sh. Deepak\",\r\n \"designation\": \"Executive Engineer, Monitoring, Evaluation & Quality Control, Panchkula\",\r\n \"contact_landLine\": \"0172-2583175\",\r\n \"contact_mobile\": 9813415012,\r\n \"email_address\": \"xenmeqcpkl@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 6,\r\n \"officeName\": \"Sh. Anshul Kadiyan\",\r\n \"designation\": \"XEN, Rohtak\",\r\n \"contact_landLine\": \"01262-254552\",\r\n \"contact_mobile\": 9650044885,\r\n \"email_address\": \"xenrohtakcad@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 7,\r\n \"officeName\": \"Sh. Manish Kumar Ahlawat\",\r\n \"designation\": \"XEN, Jhajjar\",\r\n \"contact_landLine\": \"01251-257076\",\r\n \"contact_mobile\": 9306392480,\r\n \"email_address\": \"xenjhajjarcad1@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 8,\r\n \"officeName\": \"Sh. Attinder Pal\",\r\n \"designation\": \"XEN, Jind\",\r\n \"contact_landLine\": \"01681-227072\",\r\n \"contact_mobile\": 9991129289,\r\n \"email_address\": \"xenjindcad1@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 9,\r\n \"officeName\": \"Sh. Vikas Sheravat (CDC)\",\r\n \"designation\": \"XEN, Rewari\",\r\n \"contact_landLine\": \"01274-260404\",\r\n \"contact_mobile\": 8059001709,\r\n \"email_address\": \"xenrewaricad1@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 10,\r\n \"officeName\": \"Sh. Sonit Rahee\",\r\n \"designation\": \"XEN, Mahendagarh\",\r\n \"contact_mobile\": 8053659947,\r\n \"email_address\": \"xencadelectmgarh@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 11,\r\n \"officeName\": \"Sh. Kuljeet Singh\",\r\n \"designation\": \"XEN, Faridabad\",\r\n \"contact_landLine\": \"0129-2972202\",\r\n \"contact_mobile\": 7838800054,\r\n \"email_address\": \"xenmicadafbd@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 12,\r\n \"officeName\": \"Sh. Navdeep Sangwan\",\r\n \"designation\": \"XEN, Hisar\",\r\n \"contact_landLine\": \"01662-235425\",\r\n \"contact_mobile\": 9461500007,\r\n \"email_address\": \"xenhisarcad1@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 13,\r\n \"officeName\": \"Sh. Munish Deshwal\",\r\n \"designation\": \"XEN, Bhiwani\",\r\n \"contact_landLine\": \"01664-244273\",\r\n \"contact_mobile\": 9802223366,\r\n \"email_address\": \"xenmicadbwn@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 14,\r\n \"officeName\": \"Sh. Sanjeev Kumar\",\r\n \"designation\": \"XEN, Fatehabad\",\r\n \"contact_landLine\": \"01667-227125\",\r\n \"contact_mobile\": 9215041185,\r\n \"email_address\": \"xenfatehbadcad1@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 15,\r\n \"officeName\": \"Sh. Amit Nain\",\r\n \"designation\": \"XEN, Sirsa\",\r\n \"contact_landLine\": \"01666-244129\",\r\n \"contact_mobile\": 9781899554,\r\n \"email_address\": \"xensirsacad@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 16,\r\n \"officeName\": \"Sh. Yogesh\",\r\n \"designation\": \"XEN, Kaithal\",\r\n \"contact_landLine\": \"01746-224337\",\r\n \"contact_mobile\": 7015750722,\r\n \"email_address\": \"xenkaithalcad@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 17,\r\n \"officeName\": \"Sh. Haridev Kamboj\",\r\n \"designation\": \"XEN, Karnal\",\r\n \"contact_landLine\": \"0184-2271054\",\r\n \"contact_mobile\": 9896104499,\r\n \"email_address\": \"xenkarnalcad@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 18,\r\n \"officeName\": \"Sh. Suraj Parkash Saini\",\r\n \"designation\": \"XEN, Kurukshetra\",\r\n \"contact_landLine\": \"01744-238740\",\r\n \"contact_mobile\": 9034414140,\r\n \"email_address\": \"xenkurukshetracad@gmail.com\"\r\n },\r\n {\r\n \"sNo\": 19,\r\n \"officeName\": \"Sh. Sandeep Kumar\",\r\n \"designation\": \"XEN, Panipat\",\r\n \"contact_landLine\": \"0180-2650805\",\r\n \"contact_mobile\": 9671590144,\r\n \"email_address\": \"xencadpanipat@gmail.com\"\r\n }\r\n ];\r\n }\r\n\r\n}\r\n","
{{ 'INCUMBENCY_FIELD_OFFICERS' | translate }}
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'OFFICER_NAME'| translate}}\r\n {{'DESIGNATION'| translate}}\r\n {{'CONTACT_NO(LANDLINE)'| translate}}\r\n {{'CONTACT_NO(MOBILE)'| translate}}\r\n {{'EMAIL_ADDRESS'| translate}}\r\n \r\n \r\n \r\n \r\n {{ product.sNo }}\r\n {{ product.officeName }}\r\n {{ product.designation }}\r\n {{ product.contact_landLine }}\r\n {{ product.contact_mobile }}\r\n {{ product.email_address }}\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n lastUpdated: Date;\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.lastUpdated = new Date('01/13/2024') //04 Jan 2024;\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n

{{ \"CONTACT_US\" | translate }}

\r\n
\r\n
\r\n
\r\n \r\n {{'BAYS_39_40_SECTOR_4_PANCHKULA'| translate}}\r\n
\r\n
\r\n \r\n 0172–2562275\r\n
\r\n
\r\n \r\n {{'EMAIL'| translate}}: cmda@hry.nic.in\r\n
\r\n\r\n
\r\n {{'LAST_UPDATED_ON'| translate}} {{ lastUpdated | date:'mediumDate'\r\n }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss']\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n\r\n leaders: any;\r\n selectedLang: any;\r\n\r\n @Output() valueChanged: EventEmitter = new EventEmitter();\r\n\r\n constructor(\r\n private translateService: TranslateService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n if (localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang.code)\r\n }\r\n }\r\n\r\n \r\n\r\n languageChange(event) {\r\n this.valueChanged.emit(this.selectedLang);\r\n\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n

{{'MICADA_HEADING'| translate}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {{ \"FOLLOW_US\" | translate }}\r\n \r\n \"Facebook\"\r\n \r\n \r\n \"X\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-landing',\r\n templateUrl: './landing.component.html',\r\n styleUrls: ['./landing.component.scss'],\r\n})\r\nexport class LandingComponent implements OnInit {\r\n @ViewChild('photoGallery', { static: true }) photoGallery!: ElementRef;\r\n @ViewChild('videoGallery', { static: true }) videoGallery!: ElementRef;\r\n\r\n @ViewChild('targetSection1') targetSection1: ElementRef;\r\n @ViewChild('targetSection2') targetSection2: ElementRef;\r\n @ViewChild('targetSection3') targetSection3: ElementRef;\r\n @ViewChild('targetSection4') targetSection4: ElementRef;\r\n @ViewChild('targetSection5') targetSection5: ElementRef;\r\n\r\n selectedLang: any;\r\n bannerScrollerImages: any = [];\r\n\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Cotton Crop with Drip Irrigation System.jpg',\r\n description: 'Cotton Crop with Drip Irrigation System'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Wheat with mini sprinklers in Budak, Hisar, 08.03.24.JPG',\r\n description: 'Wheat with mini sprinklers in Budak, Hisar, 08.03.24'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Chickpea roots with nitrogen fixing nodules (RHS) with drip and flooded (LHS), Budak, Hisar, 08.03.24.JPG',\r\n description: 'Chickpea roots with nitrogen fixing nodules (RHS) with drip and flooded (LHS), Budak, Hisar, 08.03.24'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Citrus intercropped with drip irrigated mustard, Arya Nagar, Hisar, 18.01.2024.JPG',\r\n description: 'Citrus intercropped with drip irrigated mustard, Arya Nagar, Hisar, 18.01.2024'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Drip irrigated wheat after cotton harvest in Mangali Suratiya, Hisar, 12.1.24.JPG',\r\n description: 'Drip irrigated wheat after cotton harvest in Mangali Suratiya, Hisar, 12.1.24'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Drip irrigated wheat in 8 acre in Mangali Suratiya, Hisar, 12.1.2024.JPG',\r\n description: 'Drip irrigated wheat in 8 acre in Mangali Suratiya, Hisar, 12.1.2024'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Harvesting Paired row drip irrigated mustard after cotton in Budak village, Hisar, 20.03.24.JPG',\r\n description: 'Harvesting Paired row drip irrigated mustard after cotton in Budak village, Hisar, 20.03.24'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Less root rot in drip irrigated over flood irrigated mustard, Aryanagar, Hisar, 26.02.2024.JPG',\r\n description: 'Less root rot in drip irrigated over flood irrigated mustard, Aryanagar, Hisar, 26.02.2024'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Mustard after cotton with paired row sowing (120 cm driplies) in Budak, Hisar, 08.03.2024.JPG',\r\n description: 'Mustard after cotton with paired row sowing (120 cm driplies) in Budak, Hisar, 08.03.2024'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Tomato with drip and poly mulch in the field of Dr. Harish Gupta, Balsamand, Hisar, 8.3.2024.jpg',\r\n description: 'Tomato with drip and poly mulch in the field of Dr. Harish Gupta, Balsamand, Hisar, 8.3.2024'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Chickpea after cotton using 120 cm driplines with paired row sowing, Budak, Hisar, 08.03.2024.jpg',\r\n description: 'Chickpea after cotton using 120 cm driplines with paired row sowing, Budak, Hisar, 08.03.2024'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Paired row drip irrigated mustard after cotton harvest towards maturity in Budak village, Hisar, 20.03.24.JPG',\r\n description: 'Paired row drip irrigated mustard after cotton harvest towards maturity in Budak village, Hisar, 20.03.24'\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/images/Mini sprinkler irrigated wheat field, Khairampur, Hisar, 07.03.24.JPG',\r\n description: 'Mini sprinkler irrigated wheat field, Khairampur, Hisar, 07.03.24'\r\n },\r\n ];\r\n\r\n videos = [\r\n {\r\n url: '../../../assets/home/videos/Vertical Drainage Success Story - Jhajjar.mp4',\r\n description: 'Vertical Drainage Success Story - Jhajjar'\r\n },\r\n {\r\n url: '../../../assets/home/videos/DHOLI MINOR.mp4',\r\n description: 'DHOLI MINOR'\r\n },\r\n {\r\n url: '../../../assets/home/videos/District Karnal MI SCHEME_.mp4',\r\n description: 'District Karnal MI SCHEME'\r\n },\r\n {\r\n url: '../../../assets/home/videos/Drip irrigated wheat in the field of Devi Lal Godara, Mangali Suratiya, Hisar, 12.01.24.MOV',\r\n description: 'Drip irrigated wheat in the field of Devi Lal Godara, Mangali Suratiya, Hisar, 12.01.24'\r\n },\r\n {\r\n url: '../../../assets/home/videos/Everything you need to know about MICADA- A complete overview.mp4',\r\n description: 'Everything you need to know about MICADA- A complete overview'\r\n },\r\n {\r\n url: '../../../assets/home/videos/Jhajjar Video 2024-12-03 at 4.57.45 PM.mp4',\r\n description: 'Jhajjar Video 2024-12-03 at 4.57.45 PM'\r\n },\r\n {\r\n url: '../../../assets/home/videos/Maximizing Sugarcane Yield- The powe of Micro Irrigation in fields.mp4',\r\n description: 'Maximizing Sugarcane Yield- The powe of Micro Irrigation in fields'\r\n },\r\n {\r\n url: '../../../assets/home/videos/MI Infrastructure at RD 11000-L Deewana Disty.mp4',\r\n description: 'MI Infrastructure at RD 11000-L Deewana Disty'\r\n },\r\n {\r\n url: '../../../assets/home/videos/RD- 14365L BHANDOR DISTY.mp4',\r\n description: 'RD- 14365L BHANDOR DISTY'\r\n },\r\n {\r\n url: '../../../assets/home/videos/Rinku Kumar from Yamunanagar- Real results with MI.mp4',\r\n description: 'Rinku Kumar from Yamunanagar- Real results with MI'\r\n },\r\n {\r\n url: '../../../assets/home/videos/District Karnal MI SCHEME.mp4',\r\n description: 'District Karnal MI SCHEME'\r\n },\r\n {\r\n url: '../../../assets/home/videos/MI at 81000-R Sudkan Disty Kaithal.mp4',\r\n description: 'MI at 81000-R Sudkan Disty Kaithal'\r\n },\r\n ]\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n leaders: any;\r\n displayImages: boolean = false;\r\n activeIndex: any;\r\n\r\n private photoScrollInterval: any;\r\n private videoScrollInterval: any;\r\n\r\n menuLoginItems: any[] = [];\r\n\r\n selectedImageFilter: any;\r\n selectedVideoFilter: any;\r\n galleryFilterList: any = [];\r\n\r\n items: MenuItem[] | undefined;\r\n\r\n constructor(\r\n private translateService: TranslateService,\r\n public authService: AuthenticationService,\r\n public router: Router,\r\n private translate: TranslateService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.getInitialTokenNew();\r\n this.loadMenuItems();\r\n this.loadLeadersName();\r\n this.loadBannerImages();\r\n\r\n // this.menuLoginItems = [\r\n // {\r\n // label: 'Apply for Overflow-Pond Water Based Application',\r\n // command: () => window.open('/phone-login', '_blank')\r\n // },\r\n // {\r\n // label: 'Apply for Canal Water Based Application',\r\n // command: () => window.open('/phone-login', '_blank')\r\n // },\r\n // {\r\n // label: 'Apply for Tube-well Water Based Application',\r\n // command: () => window.open('/phone-login', '_blank')\r\n // }\r\n // ];\r\n\r\n\r\n this.loadFilterVal();\r\n if (localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang.code)\r\n }\r\n\r\n if (window.sessionStorage.getItem('autoLoggedOut') && window.sessionStorage.getItem('autoLoggedOut') == '1') {\r\n this.getInitialToken();\r\n }\r\n\r\n this.startAutoScroll('photo');\r\n this.startAutoScroll('video');\r\n\r\n this.translate.onLangChange.subscribe(() => {\r\n this.loadMenuItems();\r\n this.loadLeadersName();\r\n this.loadBannerImages();\r\n });\r\n }\r\n\r\n getInitialTokenNew(){\r\n this.authService\r\n .getInitialToken()\r\n .pipe(first())\r\n .subscribe({\r\n next: (response) => {\r\n if (response){\r\n sessionStorage.setItem(\"token\", response.data)\r\n }\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: `Next level user not found. ${err}`,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n loadMenuItems() {\r\n this.items = [\r\n {\r\n label: this.translate.instant('HOME'),\r\n icon: 'pi pi-home',\r\n command: () => this.onClickHeader('home')\r\n },\r\n {\r\n label: this.translate.instant('ABOUT_US'),\r\n // icon: 'pi pi-star',\r\n items: [\r\n {\r\n label: this.translate.instant('ABOUT_US'),\r\n icon: 'pi pi-star',\r\n command: () => this.onClickHeader('aboutUs')\r\n },\r\n {\r\n label: this.translate.instant('SUCCESS_STORIES'),\r\n icon: 'pi pi-slack',\r\n command: () => this.router.navigate(['/success-stories'])\r\n },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('CADMIS'),\r\n icon: 'pi pi-external-link',\r\n command: () => window.open('https://wms.micada.haryana.gov.in/', '_blank')\r\n },\r\n {\r\n label: this.translate.instant('RTI'),\r\n icon: 'pi pi-star',\r\n command: () => this.onClickHeader('rti')\r\n },\r\n // {\r\n // label: this.translate.instant('PROGRESS_CHART'),\r\n // icon: 'pi pi-star',\r\n // command: () => this.onClickHeader('progressChart')\r\n // },\r\n {\r\n label: this.translate.instant('ORGANISATION'),\r\n icon: 'pi pi-sparkles',\r\n items: [\r\n {\r\n label: this.translate.instant('HEAD_OFF_EXECUTIVES'),\r\n icon: 'pi pi-th-large',\r\n command: () => this.onClickHeader('headOffExecutives')\r\n },\r\n {\r\n label: this.translate.instant('FIELD_EXECUTIVES'),\r\n icon: 'pi pi-slack',\r\n command: () => this.onClickHeader('fieldExecutives')\r\n },\r\n {\r\n label: this.translate.instant('OFFICE_ORDERS'),\r\n icon: 'pi pi-file',\r\n command: () => this.onClickHeader('officeOrders')\r\n },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('MI_SCHEME'),\r\n icon: 'pi pi-star',\r\n command: () => this.onClickHeader('newTarget')\r\n },\r\n {\r\n label: this.translate.instant('PHOTO_VIDEO_GALLERY'),\r\n icon: 'pi pi-server',\r\n items: [\r\n {\r\n label: this.translate.instant('PHOTO_GALLERY'),\r\n icon: 'pi pi-images',\r\n // command: () => this.onClickHeader('imageVideoGal')\r\n command: () => this.router.navigate(['/photo-gallery'])\r\n },\r\n {\r\n label: this.translate.instant('VIDEO_GALLERY'),\r\n icon: 'pi pi-video',\r\n command: () => this.router.navigate(['/video-gallery'])\r\n }\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('FAQs'),\r\n icon: 'pi pi-question-circle',\r\n items: [\r\n {\r\n label: this.translate.instant('FAQ_L1'),\r\n icon: 'pi pi-link',\r\n command: () => window.open('https://micadaharyana.nic.in/FAQ1.pdf', '_blank')\r\n },\r\n {\r\n label: this.translate.instant('FAQ_L2'),\r\n icon: 'pi pi-link',\r\n command: () => window.open('https://micadaharyana.nic.in/FAQ2.pdf', '_blank')\r\n },\r\n {\r\n label: this.translate.instant('FAQ_L3'),\r\n icon: 'pi pi-link',\r\n command: () => window.open('https://micadaharyana.nic.in/FAQ3.pdf', '_blank')\r\n }\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('LOGIN'),\r\n icon: 'pi pi-sign-in',\r\n items: [\r\n {\r\n label: this.translate.instant('OFFICER_LOGIN'),\r\n icon: 'pi pi-users',\r\n command: () => this.onClickLogin('login')\r\n },\r\n {\r\n label: this.translate.instant('VENDOR_LOGIN'),\r\n icon: 'pi pi-users',\r\n command: () => this.onClickLogin('login')\r\n },\r\n ...(environment.staging\r\n ? [\r\n {\r\n label: this.translate.instant('NEW_REGISTRATION'),\r\n icon: 'pi pi-users',\r\n command: () => this.onClickLogin('vendor-registration')\r\n }\r\n ]\r\n : [])\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('CONTACT_US'),\r\n icon: 'pi pi-envelope',\r\n command: () => this.onClickHeader('contactUs')\r\n },\r\n ];\r\n }\r\n\r\n loadBannerImages() {\r\n this.bannerScrollerImages = [\r\n {\r\n previewImageSrc: '../../../assets/home/resize/Drip irrigated wheat in 8 acre in Mangali Suratiya, Hisar, 12.1.2024.jpg',\r\n description: this.translate.instant('DRIP_IRR_WHEAT_IN_8ACR'),\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/resize/Wheat with mini sprinklers in Budak, Hisar, 08.03.24.jpg',\r\n description: this.translate.instant('WHEAT_WITH_MIN_SPRINKLERS'),\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/resize/Tomato with drip and poly mulch in the field of Dr. Harish Gupta, Balsamand, Hisar, 8.3.2024.jpg',\r\n description: this.translate.instant('TOMATO_WITH_DRIP&POLY_MULCH'),\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/resize/Harvesting Paired row drip irrigated mustard after cotton in Budak village, Hisar, 20.03.24.jpg',\r\n description: this.translate.instant('HARVERSTING_PAIRED_ROW_DRIP'),\r\n },\r\n // {\r\n // previewImageSrc: '../../../assets/home/resize/Chickpea roots with nitrogen fixing nodules (RHS) with drip and flooded (LHS), Budak, Hisar, 08.03.24.jpg',\r\n // description: this.translate.instant('CHICKPEA_ROOTS_WITH_NITROGEN'),\r\n // },\r\n // {\r\n // previewImageSrc: '../../../assets/home/resize/Drip irrigated wheat after cotton harvest in Mangali Suratiya, Hisar, 12.1.24.jpg',\r\n // description: this.translate.instant('DRIP_IRR_WHEAR_AFTER_COTTON'),\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/resize/Citrus intercropped with drip irrigated mustard, Arya Nagar, Hisar, 18.01.2024.jpg',\r\n description: this.translate.instant('CITRUS_INTERCROPPED_WITH_DRIP_IRR'),\r\n },\r\n // {\r\n // previewImageSrc: '../../../assets/home/resize/Less root rot in drip irrigated over flood irrigated mustard, Aryanagar, Hisar, 26.02.2024.jpg',\r\n // description: this.translate.instant('LESS_ROOT_IN_DRIP_IRR'),\r\n // },\r\n // {\r\n // previewImageSrc: '../../../assets/home/resize/Mustard after cotton with paired row sowing (120 cm driplies) in Budak, Hisar, 08.03.2024.jpg',\r\n // description: this.translate.instant('MUSTARD_AFTER_COTTON_WITH_PAIRED'),\r\n // },\r\n // {\r\n // previewImageSrc: '../../../assets/home/resize/Paired row drip irrigated mustard after cotton harvest towards maturity in Budak village, Hisar, 20.03.24.jpg',\r\n // description: this.translate.instant('PAIRED_ROW_DRIP_IRR_MUSTARD'),\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/resize/Mini sprinkler irrigated wheat field, Khairampur, Hisar, 07.03.24.jpg',\r\n description: this.translate.instant('MINI_SPRINKLER_IRR_WHEAT_FIELD'),\r\n },\r\n // {\r\n // previewImageSrc: '../../../assets/home/resize/Cotton Crop with Drip Irrigation System.jpg',\r\n // description: this.translate.instant('COTTON_CROP_WITH_DRIP_IRR'),\r\n // },\r\n ]\r\n }\r\n\r\n loadLeadersName() {\r\n this.leaders = [\r\n {\r\n name: this.translate.instant('IRRIGATION_MIN_NAME'),\r\n title: this.translate.instant('IRRIGATION_MIN'),\r\n location: this.translate.instant('HARYANA'),\r\n image: '../../../assets/activitiesImages/ir_min.jpeg',\r\n },\r\n {\r\n name: this.translate.instant('ADD_CHIEF_SEC_NAME'),\r\n title: this.translate.instant('ADD_CHIEF_SEC'),\r\n location: this.translate.instant('I&WRD_HARYANA'),\r\n image: '../../../assets/activitiesImages/chief_sec.jpg',\r\n },\r\n {\r\n name: this.translate.instant('ADMINISTRATOR_NAME'),\r\n title: this.translate.instant('ADMINISTRATOR'),\r\n location: this.translate.instant('MICADA_HARYANA'),\r\n image: 'assets/activitiesImages/admin.jpg',\r\n },\r\n ];\r\n }\r\n\r\n onClickLogin(val) {\r\n if (val == 'noc') {\r\n\r\n if (environment.staging) {\r\n this.router.navigate(['/tubewell-connection-login']);\r\n } else if (environment.production) {\r\n window.open('/tubewell-connection-login', '_blank')\r\n }\r\n } else if (val == 'farmer-stp') {\r\n sessionStorage.setItem('loginWS', 'STP');\r\n\r\n if (environment.staging) {\r\n this.router.navigate(['/phone-login']);\r\n } else if (environment.production) {\r\n window.open('/phone-login', '_blank')\r\n }\r\n } else if (val == 'farmer-overflow-pond' || val == 'farmer-canal' || val == 'farmer-tubewell') {\r\n\r\n if (environment.staging) {\r\n this.router.navigate(['/phone-login']);\r\n } else if (environment.production) {\r\n window.open('/phone-login', '_blank')\r\n }\r\n } else if (val == 'vendor-registration') {\r\n this.router.navigate(['/vendor-registration-login']);\r\n } else {\r\n if (environment.staging) {\r\n this.router.navigate(['/login']);\r\n } else if (environment.production) {\r\n window.open('/login', '_blank')\r\n }\r\n }\r\n }\r\n\r\n loadFilterVal() {\r\n setTimeout(() => {\r\n this.galleryFilterList = [\r\n {\r\n label: 'Canal Based MI Pilot Projects',\r\n value: ''\r\n },\r\n {\r\n label: 'Canal Based Community MI Projects',\r\n value: ''\r\n },\r\n {\r\n label: 'Canal Based OFPs MI Projects',\r\n value: ''\r\n },\r\n {\r\n label: 'Canal Based OFPs MI Projects',\r\n value: ''\r\n },\r\n {\r\n label: 'Rice Crop with MI',\r\n value: ''\r\n },\r\n {\r\n label: 'Potato Crop with MI',\r\n value: ''\r\n },\r\n {\r\n label: 'Sugarcane with MI',\r\n value: ''\r\n },\r\n ];\r\n })\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code);\r\n }\r\n\r\n onChildValueChanged(value) {\r\n // this.translate.onLangChange.subscribe(() => {\r\n // this.loadMenuItems();\r\n // this.loadLeadersName();\r\n // });\r\n }\r\n\r\n imageClick(index: number) {\r\n this.activeIndex = index;\r\n this.displayImages = true;\r\n }\r\n\r\n getInitialToken() {\r\n this.authService.getInitialToken().subscribe((response: any) => {\r\n if (response) {\r\n sessionStorage.setItem(\"token\", response.data)\r\n window.sessionStorage.setItem('autoLoggedOut', '0');\r\n }\r\n });\r\n }\r\n\r\n startAutoScroll(type: 'photo' | 'video') {\r\n const gallery = type === 'photo' ? this.photoGallery.nativeElement : this.videoGallery.nativeElement;\r\n const scrollSpeed = 1.5; // Adjust for smoothness\r\n\r\n const scrollFn = () => {\r\n if (gallery.scrollTop + gallery.offsetHeight >= gallery.scrollHeight) {\r\n gallery.scrollTop = 0; // Reset to the top\r\n } else {\r\n gallery.scrollTop += scrollSpeed; // Increment scroll\r\n }\r\n };\r\n\r\n if (type === 'photo') {\r\n this.photoScrollInterval = setInterval(scrollFn, 50);\r\n } else {\r\n this.videoScrollInterval = setInterval(scrollFn, 50);\r\n }\r\n }\r\n\r\n pauseScroll(type: 'photo' | 'video') {\r\n if (type === 'photo') {\r\n clearInterval(this.photoScrollInterval);\r\n } else {\r\n clearInterval(this.videoScrollInterval);\r\n }\r\n }\r\n\r\n resumeScroll(type: 'photo' | 'video') {\r\n this.startAutoScroll(type);\r\n }\r\n\r\n ngOnDestroy() {\r\n clearInterval(this.photoScrollInterval);\r\n clearInterval(this.videoScrollInterval);\r\n }\r\n\r\n public showHome: boolean = true;\r\n public showActivities: boolean = false;\r\n public showOfficeOrders: boolean = false;\r\n public showStatistics: boolean = false;\r\n public showRti: boolean = false;\r\n public showNewInitiatives: boolean = false;\r\n public showOrgSetup: boolean = false;\r\n public showBenDetails: boolean = false;\r\n public showAchievements: boolean = false;\r\n public showMicroIrrigation: boolean = false;\r\n public showAnnualPlan: boolean = false;\r\n public showEvaluationStudy: boolean = false;\r\n public showNewTarget: boolean = false;\r\n public showProject: boolean = false;\r\n public showFieldExecutives: boolean = false;\r\n public showHeadOffExecutives: boolean = false;\r\n\r\n onClickHeader(val) {\r\n if (val == 'home' || val == 'aboutUs' || val == 'contactUs' || val == 'imageVideoGal') {\r\n this.showHome = true;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection(val);\r\n } else if (val == 'activities') {\r\n this.showHome = false;\r\n this.showActivities = true;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'officeOrders') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = true;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'statistics') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = true;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'rti') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = true;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'newInitiatives') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = true;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'orgSetup') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = true;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'beneDetails') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = true;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'achievements') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = true;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'microIrrigation') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = true;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'annualPlan') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = true;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'evaluationStudy') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = true;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'newTarget') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = true;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'project') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = true;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n } else if (val == 'fieldExecutives') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = true;\r\n this.showHeadOffExecutives = false;\r\n this.callTargetSection('2');\r\n }else if (val == 'headOffExecutives') {\r\n this.showHome = false;\r\n this.showActivities = false;\r\n this.showOfficeOrders = false;\r\n this.showStatistics = false;\r\n this.showRti = false;\r\n this.showNewInitiatives = false;\r\n this.showOrgSetup = false;\r\n this.showBenDetails = false;\r\n this.showAchievements = false;\r\n this.showMicroIrrigation = false;\r\n this.showAnnualPlan = false;\r\n this.showEvaluationStudy = false;\r\n this.showNewTarget = false;\r\n this.showProject = false;\r\n this.showFieldExecutives = false;\r\n this.showHeadOffExecutives = true;\r\n this.callTargetSection('2');\r\n }\r\n }\r\n\r\n callTargetSection(val) {\r\n if (val == 'home') {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth'\r\n });\r\n } else if (val == 'aboutUs') {\r\n window.scrollTo({\r\n top: 600,\r\n behavior: 'smooth'\r\n });\r\n } else if (val == 'imageVideoGal') {\r\n window.scrollTo({\r\n top: 850,\r\n behavior: 'smooth'\r\n });\r\n } else if (val == 'contactUs') {\r\n // window.scrollTo({\r\n // top: 2000,\r\n // behavior: 'smooth'\r\n // });\r\n setTimeout(() => this.targetSection5.nativeElement.scrollIntoView({\r\n block: \"start\",\r\n behavior: \"smooth\"\r\n }), 400)\r\n } else {\r\n // setTimeout( () => this.targetSection2.nativeElement.scrollIntoView({\r\n // block: \"end\",\r\n // behavior: \"smooth\"\r\n // }), 400)\r\n window.scrollTo({\r\n top: 600,\r\n behavior: 'smooth'\r\n });\r\n }\r\n }\r\n\r\n onSelectFilter() {\r\n }\r\n\r\n onPhotoGalleryClick() {\r\n this.router.navigate(['/photo-gallery']);\r\n }\r\n\r\n onVideosClick() {\r\n this.router.navigate(['/video-gallery']);\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ 'FARMER_CORNER' | translate }}

\r\n
\r\n \r\n
\r\n \r\n

{{ 'MARQUEE_TEXT_LANDING_PAGE' | translate }}

\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \"Leader\r\n
\r\n \r\n
\r\n
\r\n
{{ person.name }}
\r\n

{{ person.title }}

\r\n

{{ person.location }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n

\"NewNew Vendor Registration will be open soon

\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n

{{ item.description }}

\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

\"NewNew Vendor Registration will be open soon

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \"Leader\r\n
\r\n\r\n
\r\n
\r\n
{{ person.name }}
\r\n

{{ person.title }}

\r\n

{{ person.location }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
    \r\n
    {{'WELCOME_TO_MICADA'| translate}}
    \r\n\r\n

    {{'ABOUT_CADA'| translate}}

    \r\n\r\n

    \r\n \r\n

    \r\n {{'ABOUT_CADA_DETAILS'| translate}}
    \r\n
    \r\n {{'POINT_1'| translate}}
    \r\n {{'POINT_2'| translate}}
    \r\n {{'POINT_3'| translate}}
    \r\n {{'POINT_4'| translate}}
    \r\n {{'POINT_5'| translate}}
    \r\n


    \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
    \r\n\r\n
  • {{'NEWS_AND_EVENTS'|\r\n translate}}
  • \r\n \r\n
  • {{'FARMER_ONLINE_APPLICATION_FOR_MI'| translate}}
    \r\n

    {{'FARMER_ONLINE_APPLICATION_HAS_BEEN_INAUGURATED'| translate}}

    \r\n
  • \r\n
  • {{'CADA_ADMINISTRATOR'| translate}}
    \r\n

    {{'DR_SATBIR_SINGH_KADIAN_EIC'| translate}}

    \r\n
  • \r\n\r\n
  • {{'CADA_CHIEF_ENGINEER'| translate}}
    \r\n {{'SH_SURESH_YADAV'| translate}}
  • \r\n\r\n
  • \r\n
  • \r\n
    \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ item.description }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ video.description }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n \r\n {{ item.description }}\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Location } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-success-stories',\r\n templateUrl: './success-stories.component.html',\r\n styleUrls: ['./success-stories.component.scss']\r\n})\r\nexport class SuccessStoriesComponent implements OnInit {\r\n\r\n selectedLang: any;\r\n\r\n constructor(\r\n private translateService: TranslateService,\r\n private location: Location\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth'\r\n });\r\n\r\n // if (localStorage.getItem('lang')) {\r\n // this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n // this.translateService.use(this.selectedLang.code)\r\n // }\r\n }\r\n\r\n onChildValueChanged(value){\r\n // console.log(value)\r\n // if (value?.code == 'en') {\r\n // // this.lanTranslate('en')\r\n // } else if (value?.code == 'hd') {\r\n // // this.lanTranslate('hd')\r\n // }\r\n }\r\n\r\n goBack(): void {\r\n this.location.back();\r\n }\r\n\r\n}\r\n\r\n","\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{ 'SUCCESS_STORIES' | translate }}

\r\n
\r\n
\r\n
\r\n

Available soon!

\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'home-footer',\r\n templateUrl: './home-footer.component.html',\r\n styleUrls: ['./home-footer.component.scss']\r\n})\r\nexport class HomeFooterComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'home-header',\r\n templateUrl: './home-header.component.html',\r\n styleUrls: ['./home-header.component.scss']\r\n})\r\nexport class HomeHeaderComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \"\"\r\n \r\n\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem } from 'primeng/api';\r\n\r\n@Component({\r\n selector: 'app-home-nav',\r\n templateUrl: './home-nav.component.html',\r\n styleUrls: ['./home-nav.component.scss']\r\n})\r\nexport class HomeNavComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n\r\n items: MenuItem[];\r\n\r\n ngOnInit() {\r\n this.items = [\r\n {label: 'New', icon: 'pi pi-fw pi-plus'},\r\n {label: 'Open', icon: 'pi pi-fw pi-download'},\r\n {label: 'Undo', icon: 'pi pi-fw pi-refresh'}\r\n ];\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-home-page-layout',\r\n templateUrl: './home-page-layout.component.html',\r\n styleUrls: ['./home-page-layout.component.scss']\r\n})\r\nexport class HomePageLayoutComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'inner-footer',\r\n templateUrl: './inner-footer.component.html',\r\n styleUrls: ['./inner-footer.component.scss']\r\n})\r\nexport class InnerFooterComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'inner-header',\r\n templateUrl: './inner-header.component.html',\r\n styleUrls: ['./inner-header.component.scss']\r\n})\r\nexport class InnerHeaderComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \"\"\r\n \r\n \r\n
\r\n
\r\n
\r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { InnerPageLayoutComponent } from '../inner-page-layout/inner-page-layout.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-menu',\r\n template: `\r\n
\r\n
    \r\n
  • \r\n
    {{item.label}}
    \r\n
      \r\n
    • \r\n
    \r\n
  • \r\n
\r\n
\r\n `\r\n})\r\nexport class AppMenuComponent implements OnInit {\r\n\r\n model: any[];\r\n\r\n constructor(\r\n public appMain: InnerPageLayoutComponent, \r\n private router: Router, \r\n public translate: TranslateService,\r\n public cryptoJsService: CryptoJsService\r\n ) {\r\n this.translate.onLangChange.subscribe((event: any) => {\r\n this.prepareMenu()\r\n\r\n })\r\n }\r\n async ngOnInit() { \r\n this.prepareMenu()\r\n // sessionStorage.setItem(\"isFarmerLogin\", '1');\r\n }\r\n async prepareMenu(){\r\n await this.translate.get('dummyTranslation').toPromise().then();\r\n let AtalbhujalRole: any = sessionStorage.getItem('isAtalBhujal');\r\n\r\n const encData = sessionStorage.getItem('dataF') ? JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF'))) : null;\r\n const farmerConfData = encData ? new Map(encData) : new Map();\r\n let isFarmerLogin = farmerConfData.get('isFarmerLogin') ? farmerConfData.get('isFarmerLogin') : '';\r\n\r\n let FarmerRole: any = isFarmerLogin;\r\n let VendorRole:any=sessionStorage.getItem('isVendorLogin');\r\n let deptUserId: any = sessionStorage.getItem('deptUserID') ? sessionStorage.getItem('deptUserID').toUpperCase() : '';\r\n let userRole: any = sessionStorage.getItem('userRole') ? sessionStorage.getItem('userRole').toUpperCase() : '';\r\n let loginUserName: any = sessionStorage.getItem('loginUserName');\r\n if (AtalbhujalRole == \"1\" && FarmerRole != \"1\") {\r\n this.model = [\r\n {\r\n label: 'Home',\r\n items: [\r\n { label: 'Dashboard', icon: 'pi pi-fw pi-home', routerLink: ['/dashboard'] },\r\n ]\r\n }\r\n ];\r\n } else if (this.router.url.startsWith('/department')) {\r\n if (deptUserId == 'D.A-1'||deptUserId == 'D.A-2'||deptUserId == 'D.A-3'||deptUserId == 'D.A-4'||deptUserId == 'D.A-5'||deptUserId == 'D.A-6'||deptUserId == 'D.A-7'||deptUserId == 'D.A-8') {\r\n this.model = [\r\n {\r\n label: this.translate.instant('APPLICATION_&_ESTIMATE_APPROVAL'),\r\n items: [\r\n // { label: 'Dashboard', icon: 'pi pi-fw pi-id-card', routerLink: ['/department'] },\r\n { label: this.translate.instant(\"FARMER_APPLICATIONS_FOR_APPROVAL\"), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/farmer-applications'] },\r\n { label: this.translate.instant('Vendor_MI_ESTIMATES_FOR_APPROVAL_MI'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/vendor-mi-applications'] },\r\n // { label: 'Print Farmer Bank Challan', icon: 'pi pi-fw pi-id-card', routerLink: ['/department/print-farmer-bank-challan']},\r\n // { label: 'Approve Farmer Bank Challan', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/department/approve-farmer-bank-challan']},\r\n // { label: this.translate.instant('UPDATE_MI_COMPONENT_CML_VALIDITY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/update-mi-component-cml-validity'] },\r\n // {label: 'Bank Details', icon: 'pi pi-fw pi-check-square', routerLink: ['/bank-details']},\r\n // {label: 'Farmers Land Details', icon: 'pi pi-fw pi-bookmark', routerLink: ['/farmer-land-detail']},\r\n // {label: 'On-Farm MI', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/on-farm-mi']}\r\n ],\r\n },\r\n // {\r\n // label: this.translate.instant('PHYSICAL_VERIFICATION'),\r\n // items: [\r\n // { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/physical-verification'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage1'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage2'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage3'] },\r\n \r\n // ]\r\n // },\r\n // {\r\n // label : 'Change Request',\r\n // items: [\r\n // { label: 'Farmer Applications For Change Request', icon: 'pi pi-fw pi-id-card', routerLink: ['/department/change-request'] },\r\n // ]\r\n // },\r\n {\r\n label: this.translate.instant('REPORT'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_ABSTRACT_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report-summary'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('HELPDESK'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/helpdesk'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n { label: this.translate.instant('APP_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/app-verification'] },\r\n { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/estimation'] },\r\n { label: this.translate.instant('VENDOR_ESTIMATION_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/estimation-verification'] },\r\n { label: this.translate.instant('CHALLAN_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/challan'] },\r\n { label: this.translate.instant('BILL_OF_QUANTITY_SUBMISSION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/boq'] },\r\n { label: this.translate.instant('APP_PHYSCICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/physical-verification'] },\r\n { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/fsv'] },\r\n { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stv'] },\r\n { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stf'] },\r\n { label: this.translate.instant('RETURN_OF_EXCESS_FARMER_SHARE_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/rtf'] },\r\n { label: this.translate.instant('MI_VERIFICATION_SUBSIDY_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/mi-verification-subsidy-report'] },\r\n { label: this.translate.instant('TANK_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/tank-abstract-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage1-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage2-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage3-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage1-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage2-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage3-subsidy-report'] },\r\n { label: this.translate.instant('CANAL_AND_TUBE_WELL_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/canal-and-tube-well-based-report'] },\r\n { label: this.translate.instant('7500_DEMO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/7500-demo'] },\r\n { label: this.translate.instant('ATAL_BHUJAL_USER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/atal-bhujal-user'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('MICADA_1.0_DATA'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_LOCATION'), icon: 'pi pi-fw pi-bookmark', routerLink: ['mi-physical-location']}\r\n ]\r\n }\r\n ];\r\n\r\n if(deptUserId == 'D.A-6'){\r\n this.model.splice(2, 0, {\r\n label: this.translate.instant('PMKSY'),\r\n items: [\r\n { label: this.translate.instant('PMKSY'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/department/physical-fin-target'] }, \r\n ]\r\n },\r\n {\r\n label: this.translate.instant('Krishi Mapper'),\r\n items: [\r\n { label: this.translate.instant('Krishi Mapper'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/department/krishi-mapper'] }, \r\n ]\r\n },\r\n )\r\n }\r\n\r\n if(deptUserId == 'D.A-1' || deptUserId == 'D.A-2' || deptUserId == 'D.A-3' || deptUserId == 'D.A-4' || deptUserId == 'D.A-5' || deptUserId == 'D.A-6' || deptUserId == 'D.A-7' || deptUserId == 'D.A-8'){\r\n this.model.splice(1, 0, {\r\n label: this.translate.instant('PHYSICAL_VERIFICATION_OF_MI'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/physical-verification'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage1'] },\r\n // { label: this.translate.instant('TANK_STAGE1_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage1'] },\r\n // { label: this.translate.instant('TANK_STAGE2_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage2'] },\r\n // { label: this.translate.instant('TANK_STAGE3_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage3'] },\r\n \r\n ]\r\n })\r\n }\r\n // else if(deptUserId == 'D.A-9'){\r\n // this.model.splice(1, 0, {\r\n // label: this.translate.instant('PHYSICAL_VERIFICATION'),\r\n // items: [\r\n // { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/physical-verification'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage1'] },\r\n // // { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage2'] },\r\n // // { label: this.translate.instant('TANK_STAGE3_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage3'] },\r\n \r\n // ]\r\n // })\r\n // }\r\n else{\r\n this.model.splice(1, 0, {\r\n label: this.translate.instant('PHYSICAL_VERIFICATION_OF_MI'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/physical-verification'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage1'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage2'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tank-stage3'] },\r\n \r\n ]\r\n })\r\n }\r\n } else if(deptUserId == 'D.A-9') {\r\n // if (userRole == \"DD\") {\r\n this.model = [\r\n {\r\n label: this.translate.instant('PHYSICAL_VERIFICATION'),\r\n items: [\r\n { label: this.translate.instant('TANK_STAGE1_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage1'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('REPORT'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_ABSTRACT_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report-summary'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('HELPDESK'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/helpdesk'] },\r\n ],\r\n },\r\n ]\r\n // }\r\n } else if(deptUserId == 'D.A-10') {\r\n this.model = [\r\n {\r\n label: this.translate.instant('Change Request'),\r\n items: [\r\n { label: this.translate.instant('UNHIDE_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/unhide-application'] },\r\n { label: this.translate.instant('CHANGE_VENDOR/PROGRAMME'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/department/change-details'] },\r\n ]\r\n }\r\n ]\r\n } else {\r\n if (userRole != \"ADVISOR\"){\r\n this.model = [\r\n {\r\n label: this.translate.instant('APPLICATION_&_ESTIMATE_APPROVAL'),\r\n items: [\r\n // { label: 'Dashboard', icon: 'pi pi-fw pi-id-card', routerLink: ['/department'] },\r\n { label: this.translate.instant(\"FARMER_APPLICATIONS_FOR_APPROVAL\"), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/farmer-applications'] },\r\n { label: this.translate.instant('Vendor_MI_ESTIMATES_FOR_APPROVAL_MI'), icon: 'pi pi-fw pi-check-square', routerLink: ['/department/vendor-mi-applications'] },\r\n { label: this.translate.instant('UPDATE_MI_COMPONENT_CML_VALIDITY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/update-mi-component-cml-validity'] },\r\n // { label: 'Print Farmer Bank Challan', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/department/print-farmer-bank-challan']},\r\n // { label: 'Approve Farmer Bank Challan', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/department/approve-farmer-bank-challan']},\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('PHYSICAL_VERIFICATION_OF_MI_&_TANK'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/physical-verification'] },\r\n { label: this.translate.instant('TANK_STAGE1_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage1'] },\r\n { label: this.translate.instant('TANK_STAGE2_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage2'] },\r\n { label: this.translate.instant('TANK_STAGE3_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage3'] }, \r\n ]\r\n },\r\n // {\r\n // label : 'Change Request',\r\n // items: [\r\n // { label: 'Farmer Applications For Change Request', icon: 'pi pi-fw pi-id-card', routerLink: ['/department/change-request'] },\r\n // ]\r\n // },\r\n // {\r\n // label: this.translate.instant('REPORT'),\r\n // items: [\r\n // { label: this.translate.instant('APPLICATION_ABSTRACT_REPORT'), icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/department/report-summary'] },\r\n // ],\r\n // },\r\n {\r\n label: this.translate.instant('CHECK_FARMER_APPLICATION'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/helpdesk'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('CM_DASHBOARD'),\r\n items: [\r\n { label:this.translate.instant('YEAR_WISE_PROGRESS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/year-wise-progress'] },\r\n { label:this.translate.instant('MI_AREA_COVERED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/mi-area-covered'] },\r\n { label:this.translate.instant('REAL_TIME_DATA_OF_PDMC_SCHEME'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/realtime-data-pdmc-scheme'] }\r\n ],\r\n }\r\n ];\r\n }\r\n }\r\n // if (userRole == \"DD Associate\") {\r\n // this.model.push(\r\n // {\r\n // label: 'Helpdesk',\r\n // items: [\r\n // { label: 'Application Status', icon: 'pi pi-fw pi-id-card', target: '_blank', routerLink: ['/helpdesk/home'] },\r\n // ]\r\n // }\r\n // )\r\n // }\r\n if (userRole == \"DMICADA\") {\r\n this.model.splice(3, 1);\r\n // this.model.splice(5, 1);\r\n this.model.splice(0, 2, {\r\n \r\n label: this.translate.instant('APPLICATION_,_ESTIMATE_&_PV_APPROVAL'),\r\n items: [\r\n // { label: 'Dashboard', icon: 'pi pi-fw pi-id-card', routerLink: ['/department'] },\r\n { label: this.translate.instant(\"FARMER_APPLICATIONS_FOR_APPROVAL\"), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/farmer-applications'] },\r\n { label: this.translate.instant('Vendor_MI_ESTIMATES_FOR_APPROVAL_MI'), icon: 'pi pi-fw pi-check-square', routerLink: ['/department/vendor-mi-applications'] },\r\n { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/physical-verification'] },\r\n { label: this.translate.instant('UPDATE_MI_COMPONENT_CML_VALIDITY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/update-mi-component-cml-validity'] },\r\n // { label: 'Print Farmer Bank Challan', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/department/print-farmer-bank-challan']},\r\n // { label: 'Approve Farmer Bank Challan', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/department/approve-farmer-bank-challan']},\r\n ]\r\n // label: this.translate.instant('PHYSICAL_VERIFICATION_OF_MI'),\r\n // items: [\r\n // { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/physical-verification'] },\r\n // // { label: this.translate.instant('TANK_STAGE1_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage1'] },\r\n // // { label: this.translate.instant('TANK_STAGE2_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage2'] },\r\n // // { label: this.translate.instant('TANK_STAGE3_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/tank-stage3'] }, \r\n // // { label: this.translate.instant('MAPS_FIELD_SURVEY_MAP_VIEW'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/maps'] },\r\n // ]\r\n })\r\n this.model.push(\r\n {\r\n label: this.translate.instant('FARMER_SHARE_LOT'),\r\n items: [\r\n { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/department/farmer-share-to-vendor'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('SUBSIDY_LOT'),\r\n items: [\r\n { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/department/subsidy-to-farmer'] },\r\n { label: this.translate.instant('SUBSIDY_TO_FARMER(ABY)'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/department/subsidy-to-farmer-aby'] },\r\n { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/department/subsidy-to-vendor'] },\r\n { label: this.translate.instant('SUBSIDY_TO_VENDOR(ABY)'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/department/subsidy-to-vendor-aby'] },\r\n { label: this.translate.instant('REFUND_TO_FARMER'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/department/refund-to-farmer'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tankstage-1'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tankstage-2'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/pond/tankstage-3'] },\r\n { label: this.translate.instant('VIEW_ALL_SUBSIDY_LOT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/all-subsidy-lot'] },\r\n { label: this.translate.instant('FAILED_MI_PAYMENT_AT_CAO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/failed-mi-payment'] },\r\n // { label: this.translate.instant('FAILED_POND_PAYMENT_AT_CAO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/failed-pond-payment'] },\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('MAPS'),\r\n // items: [\r\n // { label: this.translate.instant('FIELD_SURVEY_MAP_VIEW'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/maps'] },\r\n // ]\r\n // },\r\n // {\r\n // label: this.translate.instant('DASHBOARDS'),\r\n // items: [\r\n // { label: this.translate.instant('MICADA_GEOGRAPHY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/dashboard/micada_geography']},\r\n // { label: this.translate.instant('VENDOR_METRICS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/dashboard/vendor_metrics']},\r\n // { label: this.translate.instant('APPLICATION_VERIFICATION_SINGLE_VIEW'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/dashboard/app_verification']},\r\n // ]\r\n // },\r\n {\r\n label: this.translate.instant('DASHBOARDS_AND_REPORTS'),\r\n items: [\r\n // { label: this.translate.instant('TIME_LINE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/timeline'] },\r\n { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/consolidated-report-new'] },\r\n // { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/consolidated-report'] },\r\n // // { label: this.translate.instant('POND_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/pond-consolidated-report'] },\r\n // { label: this.translate.instant('APP_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/app-verification'] },\r\n // { label: this.translate.instant('VENDOR_PRE_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/pre-estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATION_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/estimation-verification'] },\r\n // { label: this.translate.instant('CHALLAN_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/challan'] },\r\n // { label: this.translate.instant('BILL_OF_QUANTITY_SUBMISSION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/boq'] },\r\n // { label: this.translate.instant('APP_PHYSCICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/physical-verification'] },\r\n // { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/fsv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stf'] },\r\n // { label: this.translate.instant('RETURN_OF_EXCESS_FARMER_SHARE_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/rtf'] },\r\n // { label: this.translate.instant('MI_VERIFICATION_SUBSIDY_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/mi-verification-subsidy-report'] },\r\n // { label: this.translate.instant('VENDOR_MI_AREA'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/vendor-mi-area-report'] },\r\n // { label: this.translate.instant('TANK_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/tank-abstract-report'] },\r\n // // { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage1-report'] },\r\n // // { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage2-report'] },\r\n // // { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage3-report'] },\r\n // // { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage1-subsidy-report'] },\r\n // // { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage2-subsidy-report'] },\r\n // // { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage3-subsidy-report'] },\r\n // { label: this.translate.instant('CANAL_AND_TUBE_WELL_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/canal-and-tube-well-based-report'] },\r\n // { label: this.translate.instant('CHALLAN_RECONCILIATION_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/chalan-reconciliation-day-report'] },\r\n // { label: this.translate.instant('7500_DEMO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/7500-demo'] },\r\n // { label: this.translate.instant('ATAL_BHUJAL_USER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/atal-bhujal-user'] },\r\n { label: this.translate.instant('DA_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/da-report'] },\r\n // { label: this.translate.instant('INVENTORY_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/inventory-report'] },\r\n { label:this.translate.instant('MI_AREA_COVERED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/mi-area-covered'] },\r\n { label: this.translate.instant('MAPS_FIELD_SURVEY_MAP_VIEW'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/maps'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('MICADA_1.0_DATA'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_LOCATION'), icon: 'pi pi-fw pi-bookmark', routerLink: ['mi-physical-location']}\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('TARGET'),\r\n items: [\r\n { label: this.translate.instant('CANAL_OUTLET_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/canal'] },\r\n { label: this.translate.instant('STP_OUTLET_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/stp'] },\r\n { label: this.translate.instant('CROP_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/crop-master'] },\r\n { label: this.translate.instant('OVERFLOW_POND_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/overflow-pond'] },\r\n { label: this.translate.instant('MI_POND_TARGET'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/mi-pond-target'] },\r\n ],\r\n },\r\n )\r\n }\r\n if (userRole == \"ADVISOR\"){\r\n this.model=[\r\n // {\r\n // label: this.translate.instant('DASHBOARDS'),\r\n // items: [\r\n // { label: this.translate.instant('MICADA_GEOGRAPHY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/dashboard/micada_geography']},\r\n // { label: this.translate.instant('VENDOR_METRICS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/dashboard/vendor_metrics']},\r\n // { label: this.translate.instant('APPLICATION_VERIFICATION_SINGLE_VIEW'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/dashboard/app_verification']},\r\n // ]\r\n // },\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n // { label: this.translate.instant('TIME_LINE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/timeline'] },\r\n { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/consolidated-report'] },\r\n // { label: this.translate.instant('POND_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/pond-consolidated-report'] },\r\n // { label: this.translate.instant('APP_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/app-verification'] },\r\n // { label: this.translate.instant('VENDOR_PRE_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/pre-estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATION_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/estimation-verification'] },\r\n // { label: this.translate.instant('CHALLAN_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/challan'] },\r\n // { label: this.translate.instant('BILL_OF_QUANTITY_SUBMISSION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/boq'] },\r\n // { label: this.translate.instant('APP_PHYSCICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/physical-verification'] },\r\n // { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/fsv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stf'] },\r\n // { label: this.translate.instant('RETURN_OF_EXCESS_FARMER_SHARE_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/rtf'] },\r\n // { label: this.translate.instant('MI_VERIFICATION_SUBSIDY_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/mi-verification-subsidy-report'] },\r\n // { label: this.translate.instant('VENDOR_MI_AREA'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/vendor-mi-area-report'] },\r\n // { label: this.translate.instant('TANK_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/tank-abstract-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage1-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage2-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage3-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage1-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage2-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/stage3-subsidy-report'] },\r\n // { label: this.translate.instant('CANAL_AND_TUBE_WELL_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/canal-and-tube-well-based-report'] },\r\n // { label: this.translate.instant('CHALLAN_RECONCILIATION_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/chalan-reconciliation-day-report'] },\r\n // { label: this.translate.instant('7500_DEMO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/7500-demo'] },\r\n // { label: this.translate.instant('ATAL_BHUJAL_USER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/atal-bhujal-user'] },\r\n // // { label: this.translate.instant('SUBSIDY_WISE_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/report/subsidy-wise-report'] },\r\n { label:this.translate.instant('MI_AREA_COVERED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/mi-area-covered'] },\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('CM DASHBOARD'),\r\n // items: [\r\n // { label:this.translate.instant('YEAR_WISE_PROGRESS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/year-wise-progress'] },\r\n // { label:this.translate.instant('REAL_TIME_DATA_OF_PDMC_SCHEME'), icon: 'pi pi-fw pi-id-card', routerLink: ['/department/realtime-data-pdmc-scheme'] }\r\n // ],\r\n // }\r\n ]\r\n \r\n }\r\n }\r\n else if (this.router.url.startsWith('/vendor')) {\r\n this.model = [\r\n // {\r\n // label: 'Vendor',\r\n // items: [\r\n // { label: 'Dashboard', icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor'] },\r\n // // {label: 'Bank Details', icon: 'pi pi-fw pi-check-square', routerLink: ['/bank-details']},\r\n // // {label: 'Farmers Land Details', icon: 'pi pi-fw pi-bookmark', routerLink: ['/farmer-land-detail']},\r\n // // {label: 'On-Farm MI', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/on-farm-mi']}\r\n // ]\r\n // }\r\n {\r\n label: this.translate.instant('HOME'),\r\n items: [\r\n // { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/dashboard/dashoard-report-new'] },\r\n { label: this.translate.instant('PRE_ESTIMATE_SURVEY_APPLICATION'), icon: 'pi pi-fw pi-book', routerLink: ['/vendor/pre-estimate-survey'] },\r\n // { label: this.translate.instant('7500_Applications'), icon: 'pi pi-fw pi-home', routerLink: ['/vendor/dashboard'] },\r\n { label: this.translate.instant('FARMER_APPLICATION_HEADER'), icon: 'pi pi-fw pi-home',routerLink: ['/vendor/vendor-farmer-application'] },\r\n { label: this.translate.instant('ALL_FARMER_APPLICATIONS'), icon: 'pi pi-fw pi-book',routerLink: ['/vendor/vendor-all-applications'] },\r\n // {label: 'Pond Progress Intimation',icon: 'pi pi-fw pi-book', routerLink: ['/pond-progress-intimation']}\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('APPLIACTION'),\r\n items: [\r\n { label: this.translate.instant('MI_ESTIMATION_HEADER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/vendor-application'] },\r\n { label: this.translate.instant('MI_BOQ_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/vendor-BOQ'] },\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('PURCHASE_AND_GST_CERTIFICATE'),\r\n // items: [\r\n // { label: this.translate.instant('MI_COMPONENT_INVETORY_DETAILS'), icon: 'pi pi-fw pi-check-square', routerLink: ['/vendor/mi-component-inventory-details']},\r\n // { label: this.translate.instant('UPLOAD_GST_DETAILS'), icon: 'pi pi-fw pi-check-square', routerLink: ['/vendor/upload-gst-details']}\r\n // ]\r\n // },\r\n \r\n // {\r\n // label: this.translate.instant('PRE_ESTIMATE_SURVEY'),\r\n // items: [\r\n // { label: this.translate.instant('PRE_ESTIMATE_SURVEY_APPLICATION'), icon: 'pi pi-fw pi-book', routerLink: ['/vendor/pre-estimate-survey'] }\r\n // ]\r\n // },\r\n {\r\n label: this.translate.instant('CHALLAN'),\r\n items: [\r\n { label: this.translate.instant('FARMER_FULL_PAYMENT_INTIMATION_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/vendor-FullPaymentChallanDetails'] },\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('HELPDESK'),\r\n // items: [\r\n // // { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/helpdesk'] },\r\n // { label: this.translate.instant('BENEFICIARY_DETAILES'), icon:'pi pi-fw pi-id-card', routerLink: ['/vendor/benificiary'] },\r\n // ],\r\n // },\r\n ...(environment.staging\r\n ? [\r\n {\r\n label: this.translate.instant('GRIEVANCE'),\r\n items: [\r\n { label: this.translate.instant('GRIEVANCE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/grievance'] },\r\n ]\r\n },\r\n ]\r\n : []),\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/report/estimation'] },\r\n \r\n { label: this.translate.instant('VENDOE_MI_AREA'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/report/vendor-mi-area-report'] },\r\n {label: this.translate.instant('CHALLAN_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/report/challan-report-by-vendor'] },\r\n // {label: this.translate.instant('VENDOR_SUBSIDY_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/vendor/report/vendor-subsidy-details'] }\r\n \r\n ]\r\n }\r\n ];\r\n } \r\n else if (this.router.url.startsWith('/je')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('JE'),\r\n items: [\r\n // { label: 'Tank Stage Verification', icon: 'pi pi-fw pi-id-card', routerLink: ['/je'] },\r\n { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/je/physical-verification'] },\r\n { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['tank-stage1'] },\r\n { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['tank-stage2'] },\r\n // { label: 'Tank Stage-3 Survey', icon: 'pi pi-fw pi-id-card', routerLink: ['je/tank-stage3'] },\r\n // {label: 'Bank Details', icon: 'pi pi-fw pi-check-square', routerLink: ['/bank-details']},\r\n // {label: 'Farmers Land Details', icon: 'pi pi-fw pi-bookmark', routerLink: ['/farmer-land-detail']},\r\n // {label: 'On-Farm MI', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/on-farm-mi']}\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('EPC'),\r\n items: [\r\n { label: this.translate.instant('EPC Work PV'), icon: 'pi pi-fw pi-check-square', routerLink: ['/je/epc/work-pv'] }\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('UHBVN/ DHBVN NOC'),\r\n items: [\r\n { label: this.translate.instant('Request Letter For NOC'), icon: 'pi pi-fw pi-check-square', routerLink: ['/je/uhbvn/uploaded-noc-survey'] },\r\n { label: this.translate.instant('Farmer Request For NOC'), icon: 'pi pi-fw pi-check-square', routerLink: ['/je/uhbvn/farmer-request-noc'] },\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('CHECK_FARMER_APPLICATION'),\r\n // items: [\r\n // { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/je/helpdesk'] },\r\n // ],\r\n // },\r\n {\r\n label: this.translate.instant('MICADA_1.0_DATA'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_LOCATION'), icon: 'pi pi-fw pi-bookmark', routerLink: ['mi-source-location']}\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('ACTION'),\r\n // items: [\r\n // { label: this.translate.instant('ASSIGNMENT_PLAN'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/je/assignment-plan']}\r\n // ]\r\n // }\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/cje')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('CJE'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cje/physical-verification'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['je/tank-stage1'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['je/tank-stage2'] },\r\n ]\r\n }\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/helpdesk')) {\r\n // this.model = [\r\n // {\r\n // label: 'Helpdesk',\r\n // items: [\r\n // { label: 'Application Status', icon: 'pi pi-fw pi-id-card', routerLink: ['/helpdesk/home'] },\r\n // ]\r\n // }\r\n // ];\r\n this.model = [\r\n {\r\n label: this.translate.instant('HELPDESK'),\r\n items: [\r\n // { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['department/helpdesk'] },\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/helpdesk/home'] },\r\n ]\r\n }\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/sdo')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('SDO'),\r\n items: [\r\n { label: this.translate.instant('MI_SURVEY_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/sdo'] },\r\n { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['tank-stage1'] },\r\n { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['tank-stage2'] },\r\n ]\r\n }\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/xen')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('XEN'),\r\n items: [\r\n { label: this.translate.instant('MI_SURVEY_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen'] },\r\n { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['tank-stage1'] },\r\n { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['tank-stage2'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('EPC'),\r\n items: [\r\n { label: this.translate.instant('EPC Work Approval'), icon: 'pi pi-fw pi-check-square', routerLink: ['/xen/epc/work-approval'] },\r\n { label: this.translate.instant('EPC Survey & Payment'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/epc/pv-done'] }, ]\r\n },\r\n {\r\n label: this.translate.instant('UHBVN/ DHBVN NOC'),\r\n items: [\r\n { label: this.translate.instant('Request Letter For NOC'), icon: 'pi pi-fw pi-check-square', routerLink: ['/xen/uhbvn/upload-noc'] },\r\n { label: this.translate.instant('Farmer Request For NOC'), icon: 'pi pi-fw pi-check-square', routerLink: ['/xen/uhbvn/farmer-request-noc'] },\r\n { label: this.translate.instant('Print NOC'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/uhbvn/print-noc'] }\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('HELPDESK'),\r\n // items: [\r\n // { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/helpdesk'] },\r\n // ],\r\n // },\r\n {\r\n label: this.translate.instant('JE ACTIVITY'),\r\n items: [\r\n { label: this.translate.instant('JE_ACTIVITY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/jeActivity'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n { label: this.translate.instant('APP_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/app-verification'] },\r\n { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/estimation'] },\r\n { label: this.translate.instant('VENDOR_ESTIMATION_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/estimation-verification'] },\r\n { label: this.translate.instant('CHALLAN_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/challan'] },\r\n { label: this.translate.instant('BILL_OF_QUANTITY_SUBMISSION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/boq'] },\r\n { label: this.translate.instant('APP_PHYSCICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/physical-verification'] },\r\n { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/fsv'] },\r\n { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stv'] },\r\n { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stf'] },\r\n { label: this.translate.instant('RETURN_OF_EXCESS_FARMER_SHARE_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/rtf'] },\r\n { label: this.translate.instant('MI_VERIFICATION_SUBSIDY_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/mi-verification-subsidy-report'] },\r\n { label: this.translate.instant('TANK_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/tank-abstract-report'] },\r\n { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stage2-report'] },\r\n { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stage3-report'] },\r\n { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stage1-report'] },\r\n { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stage1-subsidy-report'] },\r\n { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stage2-subsidy-report'] },\r\n { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/stage3-subsidy-report'] },\r\n { label: this.translate.instant('CANAL_AND_TUBE_WELL_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/canal-and-tube-well-based-report'] },\r\n { label: this.translate.instant('SUBSIDY_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/subsidy-detials'] },\r\n // { label: this.translate.instant('EPC_ESTIMATION_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/xen/report/estimation-details'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('MICADA_1.0_DATA'),\r\n items: [\r\n { label: this.translate.instant('MI_PHYSICAL_LOCATION'), icon: 'pi pi-fw pi-bookmark', routerLink: ['mi-physical-location']}\r\n ]\r\n }\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/cxen')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('CXEN'),\r\n items: [\r\n { label: this.translate.instant('MI_SURVEY_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cxen'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['xen/tank-stage1'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['xen/tank-stage2'] },\r\n ]\r\n },\r\n\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/admin')) {\r\n // let userName = sessionStorage.getItem(\"adminUserID\") ? sessionStorage.getItem(\"adminUserID\").toUpperCase() : '';\r\n let userName = sessionStorage.getItem(\"adminUserID\") ? sessionStorage.getItem(\"adminUserID\").toUpperCase() : '';\r\n\r\n if(userName.trim() == \"ADMIN\"){\r\n this.model = [\r\n {\r\n label: this.translate.instant('SUBSIDY_CALCULATION'),\r\n items: [\r\n { label: this.translate.instant('MI_SURVEY_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/tank-stage1'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/tank-stage2'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/tank-stage3'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('DASHBOARDS_AND_REPORTS'),\r\n items: [\r\n // { label: this.translate.instant('TIME_LINE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/timeline'] },\r\n { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/consolidated-report-new'] },\r\n // { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/consolidated-report'] },\r\n // { label: this.translate.instant('POND_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/pond-consolidated-report'] },\r\n // { label: this.translate.instant('APP_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/app-verification'] },\r\n // { label: this.translate.instant('VENDOR_PRE_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/pre-estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATION_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/estimation-verification'] },\r\n // { label: this.translate.instant('CHALLAN_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/challan'] },\r\n // { label: this.translate.instant('BILL_OF_QUANTITY_SUBMISSION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/boq'] },\r\n // { label: this.translate.instant('APP_PHYSCICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/physical-verification'] },\r\n // { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/fsv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stf'] },\r\n // { label: this.translate.instant('RETURN_OF_EXCESS_FARMER_SHARE_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/rtf'] },\r\n // { label: this.translate.instant('MI_VERIFICATION_SUBSIDY_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/mi-verification-subsidy-report'] },\r\n // { label: this.translate.instant('VENDOE_MI_AREA'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/vendor-mi-area-report'] },\r\n // { label: this.translate.instant('TANK_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/tank-abstract-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage1-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage2-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage3-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage1-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage2-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage3-subsidy-report'] },\r\n // { label: this.translate.instant('CANAL_AND_TUBE_WELL_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/canal-and-tube-well-based-report'] },\r\n // { label: this.translate.instant('CHALLAN_RECONCILIATION_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/chalan-reconciliation-day-report'] },\r\n // { label: this.translate.instant('7500_DEMO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/7500-demo'] },\r\n // { label: this.translate.instant('ATAL_BHUJAL_USER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/atal-bhujal-user'] },\r\n { label: this.translate.instant('SUBSIDY_WISE_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/subsidy-wise-report'] },\r\n { label:this.translate.instant('MI_AREA_COVERED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/mi-area-covered'] },\r\n ]\r\n \r\n },\r\n ...(environment.staging\r\n ? [\r\n {\r\n label: this.translate.instant('VENDOR_REGISGTRATIONs'),\r\n items: [\r\n { label: this.translate.instant('VENDOR_REGISGTRATIONs'), icon: 'pi pi-fw pi-bookmark', routerLink: ['vendor-registration']}\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('REPORT'),\r\n items: [\r\n { label: this.translate.instant('Rating & Ranking'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/ranking'] },\r\n // { label: this.translate.instant('Rating & Ranking'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/rating-ranking'] },\r\n ]\r\n },\r\n ]\r\n : []),\r\n // {\r\n // label: this.translate.instant('CM_DASHBOARD'),\r\n // items: [\r\n // { label:this.translate.instant('YEAR_WISE_PROGRESS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/year-wise-progress'] },\r\n // { label:this.translate.instant('MI_AREA_COVERED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/mi-area-covered'] },\r\n // { label:this.translate.instant('REAL_TIME_DATA_OF_PDMC_SCHEME'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/realtime-data-pdmc-scheme'] }\r\n // ],\r\n // },\r\n // {\r\n // label: this.translate.instant('ADMIN_PANEL'),\r\n // items: [\r\n // { label:this.translate.instant('TARGET_SYSTEM'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/target-system']}\r\n // ]\r\n // }\r\n ];\r\n }else{\r\n this.model = [\r\n {\r\n label: this.translate.instant('SUBSIDY_CALCULATION'),\r\n items: [\r\n // { label: this.translate.instant('MI_SURVEY_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin'] },\r\n { label: this.translate.instant('TANK_STAGE1_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/tank-stage1'] },\r\n { label: this.translate.instant('TANK_STAGE2_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/tank-stage2'] },\r\n { label: this.translate.instant('TANK_STAGE3_SURVEY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/tank-stage3'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n { label: this.translate.instant('TIME_LINE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/timeline'] },\r\n { label: this.translate.instant('MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/consolidated-report'] },\r\n { label: this.translate.instant('POND_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/pond-consolidated-report'] },\r\n { label: this.translate.instant('APP_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/app-verification'] },\r\n { label: this.translate.instant('VENDOR_PRE_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/pre-estimation'] },\r\n { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/estimation'] },\r\n { label: this.translate.instant('VENDOR_ESTIMATION_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/estimation-verification'] },\r\n { label: this.translate.instant('CHALLAN_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/challan'] },\r\n { label: this.translate.instant('BILL_OF_QUANTITY_SUBMISSION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/boq'] },\r\n { label: this.translate.instant('APP_PHYSCICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/physical-verification'] },\r\n { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/fsv'] },\r\n { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stv'] },\r\n { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stf'] },\r\n { label: this.translate.instant('RETURN_OF_EXCESS_FARMER_SHARE_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/rtf'] },\r\n { label: this.translate.instant('MI_VERIFICATION_SUBSIDY_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/mi-verification-subsidy-report'] },\r\n { label: this.translate.instant('VENDOE_MI_AREA'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/vendor-mi-area-report'] },\r\n { label: this.translate.instant('TANK_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/tank-abstract-report'] },\r\n { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage1-report'] },\r\n { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage2-report'] },\r\n { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage3-report'] },\r\n { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage1-subsidy-report'] },\r\n { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage2-subsidy-report'] },\r\n { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/stage3-subsidy-report'] },\r\n { label: this.translate.instant('CANAL_AND_TUBE_WELL_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/canal-and-tube-well-based-report'] },\r\n { label: this.translate.instant('CHALLAN_RECONCILIATION_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/chalan-reconciliation-day-report'] },\r\n { label: this.translate.instant('7500_DEMO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/7500-demo'] },\r\n { label: this.translate.instant('ATAL_BHUJAL_USER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/report/atal-bhujal-user'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('CM_DASHBOARD'),\r\n items: [\r\n { label:this.translate.instant('YEAR_WISE_PROGRESS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/year-wise-progress'] },\r\n { label:this.translate.instant('MI_AREA_COVERED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/mi-area-covered'] },\r\n { label:this.translate.instant('REAL_TIME_DATA_OF_PDMC_SCHEME'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/realtime-data-pdmc-scheme'] }\r\n ],\r\n },\r\n // {\r\n // label: this.translate.instant('ADMIN_PANEL'),\r\n // items: [\r\n // { label:this.translate.instant('TARGET_SYSTEM'), icon: 'pi pi-fw pi-id-card', routerLink: ['/admin/target-system']}\r\n // ]\r\n // }\r\n ];\r\n }\r\n }\r\n else if (this.router.url.startsWith('/cao')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('PDMC_LOT'),\r\n items: [\r\n // { label: 'MI Survey Subsidy Disbursement', icon: 'pi pi-fw pi-id-card', routerLink: ['/mi-survey-subsidy-disbursement'] },\r\n { label: this.translate.instant('FARMER_SHARE_TO_VENDOR(PDMC)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-farmer-share-to-vendor/pdmc'] },\r\n { label: this.translate.instant('SUBSIDY_TO_FARMER(PDMC)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-subsidy-to-farmer/pdmc'] },\r\n { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-subsidy-to-vendor/pdmc'] },\r\n { label: this.translate.instant('REFUND_TO_FARMER(PDMC)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-refund-to-farmer/pdmc'] },\r\n { label: this.translate.instant('TANK1_SUBSIDY_DISBURSEMENT(NORMAL)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage1/pfms'] },\r\n { label: this.translate.instant('TANK2_SUBSIDY_DISBURSEMENT(NORMAL)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage2/pfms'] },\r\n { label: this.translate.instant('TANK3_SUBSIDY_DISBURSEMENT(NORMAL)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage3/pfms'] },\r\n // { label: this.translate.instant('FARMER_SHARE_TO_FARMER(ABY)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-farmer-share-to-farmer/aby'] },\r\n // { label: this.translate.instant('REFUND_TO_FARMER(ABY)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-refund-to-farmer/aby'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_FARMER(ABY)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-subsidy-to-farmer/aby'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_VENDOR(ABY)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-subsidy-to-vendor/aby'] },\r\n // { label: this.translate.instant('TANK1_SUBSIDY_DISBURSEMENT(ABY)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage1/aby'] },\r\n // { label: this.translate.instant('TANK2_SUBSIDY_DISBURSEMENT(ABY)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage2/aby'] },\r\n // { label: this.translate.instant('TANK3_SUBSIDY_DISBURSEMENT(ABY)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage3/aby'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('ABY_LOT'),\r\n items: [\r\n { label: this.translate.instant('SUBSIDY_TO_FARMER(ABY)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-subsidy-to-farmer/aby'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_VENDOR(ABY)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/mi-subsidy-to-vendor/aby'] },\r\n { label: this.translate.instant('TANK1_SUBSIDY_DISBURSEMENT(ABY)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage1/aby'] },\r\n { label: this.translate.instant('TANK2_SUBSIDY_DISBURSEMENT(ABY)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage2/aby'] },\r\n { label: this.translate.instant('TANK3_SUBSIDY_DISBURSEMENT(ABY)'), icon: 'pi pi-fw pi-check-square', routerLink: ['/cao/pond/tank-stage3/aby'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('IMPORT_PFMS_DATA'),\r\n items: [\r\n { label: this.translate.instant('IMPORT_PFMS_EXCEL_SHEETS'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/import/pfms'] },\r\n ]\r\n },\r\n // {\r\n // label: this.translate.instant('IMPORT_BANK_TRANSACTION'),\r\n // items: [\r\n // { label: this.translate.instant('IMPORT_BANK_EXCEL_SHEETS'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/cao/import/bank-transaction'] },\r\n // ]\r\n // },\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n // { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/consolidated-report'] },\r\n { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/consolidated-report-new'] },\r\n { label: this.translate.instant('FINANCIAL_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/financial-details'] },\r\n { label: this.translate.instant('CAO Report'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/subsidy-disbursed'] },\r\n { label: this.translate.instant('CHALLAN_RECONCILIATION_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/chalan-reconciliation-day-report'] },\r\n { label: this.translate.instant('PAYMENT_LOT_WISE_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/lot-wise-report'] },\r\n { label: this.translate.instant('PAYMENT_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/lot-report'] },\r\n { label: this.translate.instant('LOT_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/report/lot-consolidated-report'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('HELPDESK'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/cao/helpdesk'] },\r\n ],\r\n },\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/dev')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('QUERY'),\r\n items: [\r\n { label: this.translate.instant('Request Solar'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/dev/request-solar'] },\r\n { label: this.translate.instant('Solar Procedure'), icon: 'pi pi-fw pi-id-card', routerLink: ['/dev/solar-procedure'] },\r\n { label: this.translate.instant('Solar Flow'), icon: 'pi pi-fw pi-check-square', routerLink: ['/dev/solar-flow'] },\r\n { label: this.translate.instant('Modify Solar'), icon: 'pi pi-fw pi-id-card', routerLink: ['/dev/modify-solar'] },\r\n { label: this.translate.instant('Get Solar'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/dev/get-solar'] },\r\n { label: this.translate.instant('Solar List'), icon: 'pi pi-fw pi-id-card', routerLink: ['/dev/solar-list'] },\r\n { label: this.translate.instant('ERROR_TRACKING'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/dev/error-tracking'] },\r\n ]\r\n }\r\n ];\r\n }\r\n else if (this.router.url.startsWith('/subdev')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('QUERY'),\r\n items: [\r\n // { label: this.translate.instant('Request Solar'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/subdev/request-solar'] },\r\n // { label: this.translate.instant('Solar Flow'), icon: 'pi pi-fw pi-check-square', routerLink: ['/subdev/solar-flow'] },\r\n // { label: this.translate.instant('Get Solar'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/subdev/get-solar'] },\r\n { label: this.translate.instant('ERROR_TRACKING'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/subdev/error-tracking'] },\r\n ]\r\n }\r\n ];\r\n }\r\n else if(this.router.url.startsWith('/ew-je')){\r\n this.model = [\r\n {\r\n label: this.translate.instant('APPLICATION_&_ESTIMATE_APPROVAL'),\r\n items: [\r\n { label: this.translate.instant(\"FARMER_APPLICATIONS_FOR_APPROVAL\"), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/farmer-applications'] },\r\n // { label: this.translate.instant('Vendor_MI_ESTIMATES_FOR_APPROVAL_MI'), icon: 'pi pi-fw pi-check-square', routerLink: ['/department/vendor-mi-applications'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('PHYSICAL_VERIFICATION_OF_TANK'),\r\n items: [\r\n { label: this.translate.instant('TANK_STAGE1_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/tank-stage1'] },\r\n { label: this.translate.instant('TANK_STAGE2_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/tank-stage2'] },\r\n { label: this.translate.instant('TANK_STAGE3_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/tank-stage3'] },\r\n \r\n ]\r\n },\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/report/stage1-report'] },\r\n { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/report/stage2-report'] },\r\n { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/report/stage3-report'] },\r\n { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/report/stage1-subsidy-report'] },\r\n { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/report/stage2-subsidy-report'] },\r\n { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/report/stage3-subsidy-report'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('HELPDESK'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-je/helpdesk'] },\r\n ],\r\n } \r\n ]\r\n }\r\n else if(this.router.url.startsWith('/ew-department')){\r\n this.model = [\r\n {\r\n label: this.translate.instant('APPLICATION_&_ESTIMATE_APPROVAL'),\r\n items: [\r\n { label: this.translate.instant(\"FARMER_APPLICATIONS_FOR_APPROVAL\"), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/farmer-applications'] },\r\n // { label: this.translate.instant('Vendor_MI_ESTIMATES_FOR_APPROVAL_MI'), icon: 'pi pi-fw pi-check-square', routerLink: ['/department/vendor-mi-applications'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('PHYSICAL_VERIFICATION_OF_TANK'),\r\n items: [\r\n { label: this.translate.instant('TANK_STAGE1_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/tank-stage1'] },\r\n { label: this.translate.instant('TANK_STAGE2_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/tank-stage2'] },\r\n { label: this.translate.instant('TANK_STAGE3_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/tank-stage3'] },\r\n \r\n ]\r\n },\r\n {\r\n label: this.translate.instant('SUBSIDY_LOT'),\r\n items: [\r\n // { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/ew-department/subsidy-to-farmer'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/ew-department/subsidy-to-vendor'] },\r\n // { label: this.translate.instant('REFUND_TO_FARMER'), icon: 'pi pi-fw pi-bookmark', target: '_blank', routerLink: ['/ew-department/refund-to-farmer'] },\r\n { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/pond/tankstage-1'] },\r\n { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/pond/tankstage-2'] },\r\n { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/pond/tankstage-3'] },\r\n { label: this.translate.instant('VIEW_ALL_SUBSIDY_LOT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/all-subsidy-lot'] },\r\n { label: this.translate.instant('FAILED_POND_PAYMENT_AT_CAO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/failed-pond-payment'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('REPORTS'),\r\n items: [\r\n // { label: this.translate.instant('TIME_LINE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/timeline'] },\r\n // { label: this.translate.instant('MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/consolidated-report'] },\r\n // { label: this.translate.instant('POND_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/pond-consolidated-report'] },\r\n { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/consolidated-report-new'] },\r\n // { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/consolidated-report'] },\r\n // { label: this.translate.instant('APP_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/app-verification'] },\r\n // { label: this.translate.instant('VENDOR_PRE_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/pre-estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATES'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/estimation'] },\r\n // { label: this.translate.instant('VENDOR_ESTIMATION_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/estimation-verification'] },\r\n // { label: this.translate.instant('CHALLAN_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/challan'] },\r\n // { label: this.translate.instant('BILL_OF_QUANTITY_SUBMISSION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/boq'] },\r\n // { label: this.translate.instant('APP_PHYSCICAL_VERIFICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/physical-verification'] },\r\n // { label: this.translate.instant('FARMER_SHARE_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/fsv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_VENDOR'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stv'] },\r\n // { label: this.translate.instant('SUBSIDY_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stf'] },\r\n // { label: this.translate.instant('RETURN_OF_EXCESS_FARMER_SHARE_TO_FARMER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/rtf'] },\r\n // { label: this.translate.instant('MI_VERIFICATION_SUBSIDY_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/mi-verification-subsidy-report'] },\r\n // { label: this.translate.instant('VENDOR_MI_AREA'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/vendor-mi-area-report'] },\r\n // { label: this.translate.instant('TANK_ABSTRACT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/tank-abstract-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage1-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage2-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage3-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage1-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage2-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage3-subsidy-report'] },\r\n // { label: this.translate.instant('CANAL_AND_TUBE_WELL_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/canal-and-tube-well-based-report'] },\r\n // { label: this.translate.instant('CHALLAN_RECONCILIATION_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/chalan-reconciliation-day-report'] },\r\n // { label: this.translate.instant('7500_DEMO'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/7500-demo'] },\r\n // { label: this.translate.instant('ATAL_BHUJAL_USER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/atal-bhujal-user'] },\r\n { label: this.translate.instant('DA_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/da-report'] },\r\n // { label: this.translate.instant('INVENTORY_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/inventory-report'] },\r\n ]\r\n // items: [\r\n // { label: this.translate.instant('TANK_STAGE1'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage1-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage2-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage3-report'] },\r\n // { label: this.translate.instant('TANK_STAGE1_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage1-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE2_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage2-subsidy-report'] },\r\n // { label: this.translate.instant('TANK_STAGE3_SUBSIDY'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/report/stage3-subsidy-report'] },\r\n // ]\r\n },\r\n {\r\n label: this.translate.instant('HELPDESK'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ew-department/helpdesk'] },\r\n ],\r\n } \r\n ]\r\n }\r\n else if(this.router.url.startsWith('/user-action')){\r\n this.model = [\r\n {\r\n label: this.translate.instant('TARGET'),\r\n items: [\r\n { label: this.translate.instant('CANAL_OUTLET_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/user-action/canal'] },\r\n { label: this.translate.instant('STP_OUTLET_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/user-action/stp'] },\r\n { label: this.translate.instant('CROP_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/user-action/crop-master'] },\r\n { label: this.translate.instant('OVERFLOW_POND_BASED'), icon: 'pi pi-fw pi-id-card', routerLink: ['/user-action/overflow-pond'] },\r\n ],\r\n },\r\n ] \r\n }\r\n else if(this.router.url.startsWith('/contractor')){\r\n this.model = [\r\n // {\r\n // label: this.translate.instant('HOME'),\r\n // items: [\r\n // { label: this.translate.instant('DASHBOARD'), icon: 'pi pi-fw pi-id-card', routerLink: ['/contractor/dashboard'] },\r\n // ],\r\n // },\r\n {\r\n label: this.translate.instant('WORK'),\r\n items: [\r\n // { label: this.translate.instant('CONTRACTOR_DASHBOARD'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/contractor/dashboard'] },\r\n { label: this.translate.instant('ADD_NEW_WORK'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/contractor/new-work'] },\r\n // { label: this.translate.instant('UPDATE_WORK'), icon: 'pi pi-fw pi-check-square', routerLink: ['/contractor/update-work'] },\r\n ],\r\n },\r\n // {\r\n // label: this.translate.instant('REPORT'),\r\n // items: [\r\n // { label: this.translate.instant('EPC_ESTIMATION_DETAILS'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/contractor/report/estimation-details'] },\r\n // ],\r\n // }\r\n ] \r\n }\r\n else if(this.router.url.startsWith('/tubewell-connection-dashboard')){\r\n this.model = [\r\n {\r\n label: this.translate.instant('HOME'),\r\n items: [\r\n { label: this.translate.instant('DASHBOARD'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/tubewell-connection-dashboard'] },\r\n // { label: this.translate.instant('UPDATE_WORK'), icon: 'pi pi-fw pi-check-square', routerLink: ['/contractor/update-work'] },\r\n ],\r\n }\r\n ] \r\n }\r\n else if (this.router.url.startsWith('/new-registration')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('REGISTRATION'),\r\n items: [\r\n // { label: this.translate.instant('VENDOR_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/new-registration/vendor-details'] },\r\n { label: this.translate.instant('MI_COMPONENT_DETAIL'), icon: 'pi pi-fw pi-id-card', routerLink: ['/new-registration/budget-Details'] },\r\n // { label: this.translate.instant('REGISTRATION_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/new-registration/vendor-personal-Details'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('NEW_REGISTRATION'),\r\n items: [\r\n { label: this.translate.instant('VIEW_REGISTRATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/new-registration/reg-deatils'] },\r\n { label: this.translate.instant('APPEAL_GRIEVANCE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/new-registration/appeal-deatils'] },\r\n // { label: this.translate.instant('GRIEVANCE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/new-registration/grievance'] },\r\n ]\r\n }\r\n ];\r\n } \r\n else if (this.router.url.startsWith('/ptg-dev-team')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('FARMER_QUERIES'),\r\n items: [\r\n { label: this.translate.instant('UNHIDE_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/ptg-dev-team/unhide-application'] },\r\n { label: this.translate.instant('CHANGE_VENDOR/PROGRAMME'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/ptg-dev-team/change-details'] },\r\n ]\r\n },\r\n ];\r\n } \r\n else if (this.router.url.startsWith('/grievance-handler')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('GRIEVANCE_HANDLER'),\r\n items: [\r\n { label: this.translate.instant('GRIEVANCE_HANDLER'), icon: 'pi pi-fw pi-id-card', routerLink: ['/grievance-handler'] },\r\n ]\r\n },\r\n ];\r\n } \r\n else if (this.router.url.startsWith('/webadmin')) {\r\n this.model = [\r\n {\r\n label: this.translate.instant('DASHBOARDS_AND_REPORTS'),\r\n items: [\r\n { label: this.translate.instant('FINANCIAL_DETAILS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/webadmin/report/financial-details'] },\r\n { label: this.translate.instant('CAO Report'), icon: 'pi pi-fw pi-id-card', routerLink: ['/webadmin/report/subsidy-disbursed'] },\r\n { label: this.translate.instant('DASHBOARD_&_MI_CONSOLIDATED_REPORT'), icon: 'pi pi-fw pi-id-card', routerLink: ['/webadmin/report/consolidated-report-new'] },\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('UPDATE_JAMABANDI'),\r\n items: [\r\n { label: this.translate.instant('UPDATE_JAMABANDI'), icon: 'pi pi-fw pi-id-card', routerLink: ['/webadmin/update-jamabandi'] },\r\n ],\r\n },\r\n {\r\n label: this.translate.instant('HELPDESK'),\r\n items: [\r\n { label: this.translate.instant('APPLICATION_STATUS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/webadmin/helpdesk'] },\r\n ],\r\n }\r\n // {\r\n // label: this.translate.instant('FARMER_QUERIES'),\r\n // items: [\r\n // { label: this.translate.instant('UNHIDE_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/webadmin/unhide-application'] },\r\n // { label: this.translate.instant('CHANGE_VENDOR/PROGRAMME'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/webadmin/change-details'] },\r\n // ]\r\n // },\r\n ];\r\n } \r\n else {\r\n this.model = [\r\n {\r\n label: this.translate.instant('HOME'),\r\n items: [\r\n { label: this.translate.instant('DASHBOARDS'), icon: 'pi pi-fw pi-home', routerLink: ['/farmer/dashboard'] },\r\n // {label: 'Pond Progress Intimation',icon: 'pi pi-fw pi-book', routerLink: ['/pond-progress-intimation']}\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('REGISTRATION'),\r\n items: [\r\n { label: this.translate.instant('e-KYC (Aadhar & PPP)'), icon: 'pi pi-fw pi-id-card', routerLink: ['/farmer/personal-details'] },\r\n { label: this.translate.instant('DBT Bank Detail'), icon: 'pi pi-fw pi-check-square', routerLink: ['/farmer/bank-details'] },\r\n { label: this.translate.instant('Land Detail (Jamabandi)'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/farmer/farmer-land-detail'] },\r\n { label: this.translate.instant('Existing Installed MI System'), icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/farmer/on-farm-mi'] }\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('APPLICATION'),\r\n items: [\r\n { label: this.translate.instant('ADD_APPLICATION'), icon: 'pi pi-fw pi-id-card', routerLink: ['/farmer/farmers-application'] },\r\n // {label: 'View Farmers Application', icon: 'pi-file-pdf', routerLink: ['/view-farmers-application']}\r\n\r\n // {label: 'Bank Details', icon: 'pi pi-fw pi-check-square', routerLink: ['/bank-details']},\r\n // {label: 'Farmers Land Details', icon: 'pi pi-fw pi-bookmark', routerLink: ['/farmer-land-detail']},\r\n // {label: 'On-Farm MI', icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/on-farm-mi']}\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('Pond_Water_Tank_Progress_Stage'),\r\n items: [\r\n { label: this.translate.instant('POND_WATER_TANK_INTIMATION'), icon: 'pi pi-fw pi-book', routerLink: ['/farmer/pond-progress-intimation'] }\r\n ]\r\n },\r\n {\r\n label: this.translate.instant('PAYMENT_CHALLAN_DETAILS'),\r\n items: [\r\n { label: this.translate.instant('SANCTION_LETTER_'), icon: 'pi pi-fw pi-book', routerLink: ['/farmer/sanction/sanctio-letter-comp'] },\r\n { label: this.translate.instant('MI_CHALLAN'), icon: 'pi pi-fw pi-book', routerLink: ['/farmer/challan/mi-challan'] },\r\n { label: this.translate.instant('SOLAR_PUMP_CHALLAN'), icon: 'pi pi-fw pi-book', routerLink: ['/farmer/challan/solar-challan'] },\r\n ]\r\n },\r\n ...(environment.staging\r\n ? [\r\n {\r\n label: this.translate.instant('GRIEVANCE'),\r\n items: [\r\n { label: this.translate.instant('GRIEVANCE'), icon: 'pi pi-fw pi-id-card', routerLink: ['/farmer/grievance'] },\r\n ]\r\n },\r\n ]\r\n : []),\r\n // {\r\n // label: this.translate.instant('CHANGES_REQUESTS'),\r\n // items: [\r\n // { label: this.translate.instant('CHANGES_REQUESTS'), icon: 'pi pi-fw pi-id-card', routerLink: ['/change-request'] },\r\n // ]\r\n // }\r\n ];\r\n\r\n // if(deptUserId == 'isNewFarmerForRegistration'){\r\n if(sessionStorage.getItem(\"isNonRegisteredUser\") == 'true'){\r\n this.model.splice(1, 1, {\r\n label: this.translate.instant('REGISTRATION'),\r\n items: [\r\n { label: this.translate.instant('e-KYC'), icon: 'pi pi-fw pi-bookmark', routerLink: ['/farmer/new-registration'] },\r\n { label: this.translate.instant('EXISTING_ON_FARM_MI_DETAILS'), icon: 'pi pi-fw pi-exclamation-circle', routerLink: ['/farmer/on-farm-mi'] } \r\n ]\r\n })\r\n }\r\n }\r\n\r\n }\r\n onKeydown(event: KeyboardEvent) {\r\n const nodeElement = (event.target);\r\n if (event.code === 'Enter' || event.code === 'Space') {\r\n nodeElement.click();\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { animate, state, style, transition, trigger } from '@angular/animations';\r\nimport { Subscription } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\nimport { MenuService } from '../../../services/app.menu.service';\r\nimport { InnerPageLayoutComponent } from '../inner-page-layout/inner-page-layout.component';\r\n\r\n@Component({\r\n /* tslint:disable:component-selector */\r\n selector: '[app-menuitem]',\r\n /* tslint:enable:component-selector */\r\n template: `\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{{item.label}}\r\n\t\t\t\t{{item.badge}}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{{item.label}}\r\n\t\t\t\t{{item.badge}}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t
  • \r\n\t\t\t\t
    \r\n\t\t\t
\r\n\t\t
\r\n `,\r\n host: {\r\n '[class.active-menuitem]': 'active',\r\n },\r\n animations: [\r\n trigger('children', [\r\n state('void', style({\r\n height: '0px'\r\n })),\r\n state('hiddenAnimated', style({\r\n height: '0px'\r\n })),\r\n state('visibleAnimated', style({\r\n height: '*'\r\n })),\r\n transition('visibleAnimated => hiddenAnimated', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)')),\r\n transition('hiddenAnimated => visibleAnimated', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)')),\r\n transition('void => visibleAnimated, visibleAnimated => void',\r\n animate('400ms cubic-bezier(0.86, 0, 0.07, 1)'))\r\n ])\r\n ]\r\n})\r\nexport class AppMenuitemComponent implements OnInit, OnDestroy {\r\n\r\n @Input() item: any;\r\n\r\n @Input() index: number;\r\n\r\n @Input() root: boolean;\r\n\r\n @Input() parentKey: string;\r\n\r\n active = false;\r\n\r\n menuSourceSubscription: Subscription;\r\n\r\n menuResetSubscription: Subscription;\r\n\r\n key: string;\r\n\r\n constructor(public app: InnerPageLayoutComponent, public router: Router, private cd: ChangeDetectorRef, private menuService: MenuService) {\r\n this.menuSourceSubscription = this.menuService.menuSource$.subscribe(key => {\r\n // deactivate current active menu\r\n if (this.active && this.key !== key && key.indexOf(this.key) !== 0) {\r\n this.active = false;\r\n }\r\n });\r\n\r\n this.menuResetSubscription = this.menuService.resetSource$.subscribe(() => {\r\n this.active = false;\r\n });\r\n\r\n this.router.events.pipe(filter(event => event instanceof NavigationEnd))\r\n .subscribe(params => {\r\n if (this.item.routerLink) {\r\n this.updateActiveStateFromRoute();\r\n } else {\r\n this.active = false;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n if (this.item.routerLink) {\r\n this.updateActiveStateFromRoute();\r\n }\r\n\r\n this.key = this.parentKey ? this.parentKey + '-' + this.index : String(this.index);\r\n }\r\n\r\n updateActiveStateFromRoute() {\r\n this.active = this.router.isActive(this.item.routerLink[0], this.item.items ? false : true);\r\n }\r\n\r\n itemClick(event: Event) {\r\n event.stopPropagation();\r\n // avoid processing disabled items\r\n if (this.item.disabled) {\r\n event.preventDefault();\r\n return;\r\n }\r\n\r\n // notify other items\r\n this.menuService.onMenuStateChange(this.key);\r\n\r\n // execute command\r\n if (this.item.command) {\r\n this.item.command({originalEvent: event, item: this.item});\r\n }\r\n\r\n // toggle active state\r\n if (this.item.items) {\r\n this.active = !this.active;\r\n } else {\r\n // activate item\r\n this.active = true;\r\n\r\n // hide overlay menus\r\n this.app.menuActiveMobile = false;\r\n\r\n if (this.app.isDesktop() && this.app.isOverlay()) {\r\n this.app.menuInactiveDesktop = true;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.menuSourceSubscription) {\r\n this.menuSourceSubscription.unsubscribe();\r\n }\r\n\r\n if (this.menuResetSubscription) {\r\n this.menuResetSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-inner-nav',\r\n templateUrl: './inner-nav.component.html',\r\n styleUrls: ['./inner-nav.component.scss']\r\n})\r\nexport class InnerNavComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { MenuService } from './../../../services/app.menu.service';\r\nimport { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { InnerPageLayoutComponent } from './inner-page-layout.component';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { first, Subscription } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-topbar',\r\n templateUrl: './app.topbar.component.html',\r\n styleUrls: ['./app.topbar.component.scss'],\r\n})\r\nexport class AppTopBarComponent implements OnInit {\r\n userName: any;\r\n wrongNotificationCheck: boolean = true;\r\n selectedLang: any;\r\n items: MenuItem[];\r\n date: any;\r\n ipAddress: any;\r\n loginId: any;\r\n status: any;\r\n selectYear: any;\r\n financialYears: any[] = [];\r\n selectedYear: any;\r\n public showFinYearBlock: boolean = true;\r\n isAdharValid: any;\r\n showAadharVerDialog: boolean = false;\r\n aadharNumber: any;\r\n aadharVerOTP: number;\r\n timer: number = 60;\r\n intervalId: any;\r\n isAadharVerified: boolean = false;\r\n showKYCUpdateLink: boolean = false;\r\n\r\n\r\n public farmerData: any;\r\n public showKYCPopUpDialog = false;\r\n public farmerAadharNumber: any;\r\n public consentCheckboxValue: any;\r\n\r\n constructor(\r\n public router: Router,\r\n public appMain: InnerPageLayoutComponent,\r\n public authService: AuthenticationService,\r\n private translateService: TranslateService,\r\n private menuService: MenuService,\r\n private ipService: IpAddressService,\r\n private activityRecordService: ActivityRecordService,\r\n private service: BaseService,\r\n private reportsService: ReportsService,\r\n private loader: AppLoaderService,\r\n private farmersDetailsService: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService,\r\n private cd: ChangeDetectorRef\r\n ) {\r\n this.router.events.subscribe((event) => {\r\n // Update currentUrl whenever the route changes\r\n if (event instanceof NavigationEnd) {\r\n if (this.router.url.includes('consolidated-report') || this.router.url.includes('new-registration')) {\r\n this.showFinYearBlock = false;\r\n } else {\r\n this.showFinYearBlock = true;\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let isApplyForNocRed = farmerconfData.get('isApplyForNocRed')\r\n let userId = farmerconfData.get('userID');\r\n let yearList = farmerconfData.has('yearList');\r\n\r\n if (userId == 'farmer' || userId == 'ownMIfarmer' && isApplyForNocRed == '1' && this.router.url.includes('farmer/dashboard')) {\r\n this.loadPersonalDetails();\r\n }\r\n\r\n if (sessionStorage.getItem('yearList')) {\r\n this.financialYears = JSON.parse(sessionStorage.getItem('yearList'));\r\n\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'));\r\n let year = sessionStorage.getItem('financialYear');\r\n this.selectedYear = { name: year, code: year };\r\n } else {\r\n this.reportsService\r\n .getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n\r\n data.forEach((e: any) => {\r\n let year = { name: e.FinancialYears, code: e.FinancialYears };\r\n this.financialYears.push(year);\r\n });\r\n this.selectedYear = { ...this.financialYears[1] };\r\n\r\n \r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n farmerconfData.set('yearList', JSON.stringify(this.financialYears));\r\n\r\n const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n \r\n \r\n sessionStorage.setItem(\r\n 'yearList',\r\n JSON.stringify(this.financialYears)\r\n );\r\n \r\n this.service.changeFinancialYear(this.selectedYear.code);\r\n this.ngOnDestroy();\r\n },\r\n });\r\n }\r\n if (localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang')\r\n ? JSON.parse(localStorage.getItem('lang'))\r\n : '';\r\n this.translateService.use(this.selectedLang.code);\r\n }\r\n this.getLoginId();\r\n if (!this.userName) {\r\n this.userName = sessionStorage.getItem('newUserName');\r\n }\r\n let farmerName = sessionStorage.getItem('loginUserName');\r\n if (farmerName) {\r\n this.userName = farmerName;\r\n }\r\n this.items = [\r\n {\r\n label: 'Logout',\r\n icon: 'pi pi-fw pi-sign-in',\r\n command: () => {\r\n this.logOut();\r\n // const [ngClass]=\"{'position': sticky}\";\r\n },\r\n },\r\n ];\r\n this.menuService.userName$.subscribe((data) => {\r\n\r\n sessionStorage.setItem('newUserName', data);\r\n this.userName = data;\r\n });\r\n }\r\n\r\n // ngAfterViewChecked() {\r\n // this.cd.detectChanges();\r\n // }\r\n \r\n ngOnDestroy() {\r\n // Clear the interval when the component is destroyed\r\n if (this.intervalId) {\r\n clearInterval(this.intervalId);\r\n }\r\n }\r\n\r\n loadPersonalDetails() {\r\n this.loader.start();\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n \r\n let sub = this._personalDetalSer\r\n .getFarmerDetails(phNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data) {\r\n this.activityRecordService.activityRecord(\r\n phNo,\r\n 'Personal Details For KYC',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n let farmerData = data.Table[0];\r\n if (farmerData) {\r\n this.showKYCUpdateLink = true;\r\n this.farmerData = farmerData;\r\n\r\n this.farmerAadharNumber = this.farmerData.Aadhar_No;\r\n this.showKYCPopUpDialog = true;\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n farmerconfData.set('farmerDetails', data.Table[0]);\r\n\r\n const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n }\r\n }else{\r\n this.showKYCUpdateLink = true;\r\n this.showKYCPopUpDialog = true;\r\n this.farmerData = null;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n if(err.message == \"Not Registered\"){\r\n this.showKYCUpdateLink = true;\r\n this.showKYCPopUpDialog = true;\r\n this.farmerData = null;\r\n }else {\r\n this.showKYCPopUpDialog = false;\r\n }\r\n },\r\n });\r\n\r\n // this.subscriptions.push(sub);\r\n }\r\n\r\n openKYCPopUp(){\r\n this.showKYCPopUpDialog = true;\r\n }\r\n\r\n getLoginId() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let isFarmerLogin = farmerconfData.get('isFarmerLogin');\r\n\r\n if (isFarmerLogin == '1') {\r\n this.loginId = farmerconfData.get('farmerPh');\r\n } else {\r\n let sessionToken = null;\r\n if(sessionStorage.getItem('token')){\r\n sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n }\r\n if(sessionToken == null){\r\n this.logOut();\r\n }\r\n\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loginId = JSON.parse(payload)?.sub;\r\n }\r\n }\r\n\r\n logOut() {\r\n this.activityRecordService.activityRecord(\r\n this.loginId,\r\n 'logout',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n window.sessionStorage.removeItem('farmerDetails');\r\n sessionStorage.removeItem('farmerPh');\r\n sessionStorage.removeItem('userID');\r\n sessionStorage.removeItem('farmerPh');\r\n sessionStorage.removeItem('isFarmerLogin');\r\n sessionStorage.removeItem('isAtalBhujal');\r\n sessionStorage.removeItem('dataF');\r\n sessionStorage.clear();\r\n this.getInitialToken();\r\n }\r\n\r\n getInitialToken() {\r\n this.loader.start();\r\n this.authService.getInitialToken().subscribe((response: any) => {\r\n this.loader.close();\r\n if (response) {\r\n sessionStorage.setItem(\"token\", response.data)\r\n this.router.navigate(['/home']);\r\n }\r\n });\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value));\r\n this.translateService.use(event.value.code);\r\n }\r\n\r\n yearChange(event) {\r\n localStorage.setItem('Financial_year', JSON.stringify(event.value));\r\n // this.translateService.use(event.value.code)\r\n\r\n \r\n this.service.changeFinancialYear(event.value.code);\r\n }\r\n\r\n verifyAadhar() {\r\n // this.aadharNumber = this.farmersDetailsForm.value['aadharNo'];\r\n this.validateAadharNumber(this.aadharNumber);\r\n this.showAadharVerDialog = true;\r\n // this.startTimer();\r\n }\r\n\r\n validateAadharNumber(aadharNumber) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n\r\n let phNo = encData.get('farmerPh');\r\n this.loader.start();\r\n this.farmersDetailsService\r\n .validateAadhar(aadharNumber)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n // this.loader.close();\r\n // this.showAadharVerDialog = true;\r\n // this.startTimer();\r\n if (data == 'OTP sent') {\r\n this.showAadharVerDialog = true;\r\n this.startTimer();\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'OTP Sent Successfully.',\r\n });\r\n } else {\r\n this.showAadharVerDialog = false;\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(\r\n phNo,\r\n 'Validate Aadhar Number',\r\n '',\r\n new Date(),\r\n data,\r\n aadharNumber\r\n );\r\n },\r\n error: (err) => {\r\n\r\n this.showAadharVerDialog = false;\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(\r\n phNo,\r\n 'Validate Aadhar Number(error)',\r\n '',\r\n new Date(),\r\n err,\r\n aadharNumber\r\n );\r\n },\r\n });\r\n // this.startTimer();\r\n }\r\n\r\n hideDialog() {\r\n this.showAadharVerDialog = false;\r\n this.aadharVerOTP = null;\r\n }\r\n\r\n submitOTP() {\r\n this.validateOTP(this.aadharNumber, this.aadharVerOTP);\r\n }\r\n\r\n validateOTP(aadharNumber, otp) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n this.loader.start();\r\n this.farmersDetailsService\r\n .validateOTP(aadharNumber, otp, '')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.startsWith('s') || data.startsWith('S')) {\r\n this.isAadharVerified = true;\r\n this.hideDialog();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Aadhar Validated Successfully.',\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(\r\n phNo,\r\n 'Validate OTP For Aadhar Verification',\r\n '',\r\n new Date(),\r\n data,\r\n aadharNumber\r\n );\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(\r\n phNo,\r\n 'Validate OTP For Aadhar Verification',\r\n '',\r\n new Date(),\r\n err,\r\n aadharNumber\r\n );\r\n },\r\n });\r\n }\r\n\r\n // startTimer() {\r\n // this.intervalId = setInterval(() => {\r\n // if (this.timer > 0) {\r\n\r\n // this.timer--;\r\n // } else {\r\n // clearInterval(this.intervalId);\r\n // }\r\n // }, 1000);\r\n // }\r\n startTimer() {\r\n this.intervalId = startCountdown(this.timer, (currentValue: number) => {\r\n this.timer = currentValue;\r\n });\r\n }\r\n\r\n resendOTP(): void {\r\n // Reset timer\r\n this.timer = 60;\r\n // Start timer again\r\n this.startTimer();\r\n }\r\n\r\n editAadharNumber() {\r\n this.hideDialog();\r\n }\r\n\r\n hideKYCDialog(){\r\n\r\n }\r\n\r\n onSubmitConsent(){\r\n\r\n }\r\n\r\n addItem(val){\r\n\r\n this.showKYCPopUpDialog = false;\r\n }\r\n}\r\n\r\n\r\nfunction startCountdown(\r\n initialValue: number,\r\n callback: (currentValue: number) => void\r\n) {\r\n let currentValue = initialValue;\r\n\r\n const intervalId = setInterval(() => {\r\n if (currentValue > 0) {\r\n currentValue--;\r\n callback(currentValue);\r\n } else {\r\n clearInterval(intervalId);\r\n }\r\n }, 1000);\r\n\r\n return intervalId;\r\n}\r\n","\r\n
\r\n \r\n \"logo\"\r\n
{{ 'MICADA_PORTAL_VERISON_2.0'\r\n | translate}}
\r\n
{{ 'Since:2022-23' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n KYC Update! \r\n \r\n\r\n
\r\n
{{userName}}
\r\n \r\n \r\n {{'LOGOUT'| translate}}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \"bg\"\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
0\">Resend OTP in: {{ timer }} Seconds
\r\n Resend OTP\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n \r\n \r\n\r\n \r\n","import { Component, AfterViewInit, OnDestroy, Renderer2, OnInit } from '@angular/core';\r\nimport { trigger, state, style, transition, animate } from '@angular/animations';\r\nimport { AppComponent } from '../../../app.component';\r\nimport { ConfigService } from '../../../services/app.config.service';\r\nimport { AppConfig } from '../../../models/appconfig';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-inner-page-layout',\r\n templateUrl: './inner-page-layout.component.html',\r\n styleUrls: ['./inner-page-layout.component.scss'],\r\n animations: [\r\n trigger('submenu', [\r\n state('hidden', style({\r\n height: '0px'\r\n })),\r\n state('visible', style({\r\n height: '*'\r\n })),\r\n transition('visible => hidden', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)')),\r\n transition('hidden => visible', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)'))\r\n ])\r\n]\r\n})\r\nexport class InnerPageLayoutComponent implements AfterViewInit, OnDestroy, OnInit {\r\n\r\n public menuInactiveDesktop: boolean;\r\n\r\n public menuActiveMobile: boolean;\r\n\r\n public overlayMenuActive: boolean;\r\n\r\n public staticMenuInactive: boolean = false;\r\n\r\n public profileActive: boolean;\r\n\r\n public topMenuActive: boolean;\r\n\r\n public topMenuLeaving: boolean;\r\n\r\n public theme: string;\r\n\r\n documentClickListener: () => void;\r\n\r\n menuClick: boolean;\r\n\r\n topMenuButtonClick: boolean;\r\n\r\n configActive: boolean;\r\n\r\n configClick: boolean;\r\n\r\n config: AppConfig;\r\n\r\n subscription: Subscription;\r\n\r\n constructor(public renderer: Renderer2, public app: AppComponent, public configService: ConfigService) { }\r\n\r\n ngOnInit() {\r\n this.config = this.configService.config;\r\n this.subscription = this.configService.configUpdate$.subscribe(config => this.config = config);\r\n }\r\n\r\n ngAfterViewInit() {\r\n // hides the overlay menu and top menu if outside is clicked\r\n this.documentClickListener = this.renderer.listen('body', 'click', (event) => {\r\n if (!this.isDesktop()) {\r\n if (!this.menuClick) {\r\n this.menuActiveMobile = false;\r\n }\r\n\r\n if (!this.topMenuButtonClick) {\r\n this.hideTopMenu();\r\n }\r\n }\r\n else {\r\n if (!this.menuClick && this.isOverlay()) {\r\n this.menuInactiveDesktop = true;\r\n }\r\n if (!this.menuClick){\r\n this.overlayMenuActive = false;\r\n }\r\n }\r\n\r\n if (this.configActive && !this.configClick) {\r\n this.configActive = false;\r\n }\r\n\r\n this.configClick = false;\r\n this.menuClick = false;\r\n this.topMenuButtonClick = false;\r\n });\r\n }\r\n\r\n toggleMenu(event: Event) {\r\n this.menuClick = true;\r\n if (this.isDesktop()) {\r\n if (this.app.menuMode === 'overlay') {\r\n if(this.menuActiveMobile === true) {\r\n this.overlayMenuActive = true;\r\n }\r\n\r\n this.overlayMenuActive = !this.overlayMenuActive;\r\n this.menuActiveMobile = false;\r\n }\r\n else if (this.app.menuMode === 'static') {\r\n this.staticMenuInactive = !this.staticMenuInactive;\r\n }\r\n }\r\n else {\r\n this.menuActiveMobile = !this.menuActiveMobile;\r\n this.topMenuActive = false;\r\n }\r\n\r\n event.preventDefault();\r\n }\r\n\r\n toggleProfile(event: Event) {\r\n this.profileActive = !this.profileActive;\r\n event.preventDefault();\r\n }\r\n\r\n toggleTopMenu(event: Event) {\r\n this.topMenuButtonClick = true;\r\n this.menuActiveMobile = false;\r\n\r\n if (this.topMenuActive) {\r\n this.hideTopMenu();\r\n } else {\r\n this.topMenuActive = true;\r\n }\r\n\r\n event.preventDefault();\r\n }\r\n\r\n hideTopMenu() {\r\n this.topMenuLeaving = true;\r\n setTimeout(() => {\r\n this.topMenuActive = false;\r\n this.topMenuLeaving = false;\r\n }, 1);\r\n }\r\n\r\n onMenuClick() {\r\n this.menuClick = true;\r\n }\r\n\r\n // onConfigClick(event) {\r\n // this.configClick = true;\r\n // }\r\n\r\n isStatic() {\r\n return this.app.menuMode === 'static';\r\n }\r\n\r\n isOverlay() {\r\n return this.app.menuMode === 'overlay';\r\n }\r\n\r\n isDesktop() {\r\n return window.innerWidth > 992;\r\n }\r\n\r\n isMobile(){\r\n return window.innerWidth < 1024;\r\n }\r\n\r\n onSearchClick() {\r\n this.topMenuButtonClick = true;\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.documentClickListener) {\r\n this.documentClickListener();\r\n }\r\n\r\n\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n","import { CryptoJsService } from './../../services/crypto-js.service';\r\nimport { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport jwtDecode from 'jwt-decode';\r\nimport { Message, MessageService } from 'primeng/api';\r\nimport { first, shareReplay, Subscription } from 'rxjs';\r\nimport { AppConfig } from 'src/app/models/appconfig';\r\nimport { ConfigService } from 'src/app/services/app.config.service';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styles: [`\r\n :host ::ng-deep .p-password input {\r\n width: 100%;\r\n padding:1rem;\r\n }\r\n\r\n :host ::ng-deep .pi-eye{\r\n transform:scale(1.6);\r\n margin-right: 1rem;\r\n color: var(--primary-color) !important;\r\n }\r\n\r\n :host ::ng-deep .pi-eye-slash{\r\n transform:scale(1.6);\r\n margin-right: 1rem;\r\n color: var(--primary-color) !important;\r\n }\r\n\r\n\r\n .siteUnderMaintenance{\r\n height: 100vh;\r\n background-color: #fcf2f4 ;\r\n font-family: Arial, sans-serif;\r\n text-align: center;\r\n padding: 50px;\r\n\r\n h1 {\r\n font-size: 32px;\r\n color: #333;\r\n margin-bottom: 20px;\r\n font-weight: bold !important;\r\n }\r\n\r\n p {\r\n font-size: 18px;\r\n color: #777;\r\n }\r\n\r\n .logo {\r\n margin-bottom: 40px;\r\n mix-blend-mode: multiply;\r\n }\r\n\r\n .reload-button, .goback-button {\r\n margin-top: 20px;\r\n }\r\n\r\n }\r\n\r\n .sign-in-button{\r\n background-color: #8b5815;\r\n }\r\n \r\n .sign-in-button:hover{\r\n background-color: #8b5815;\r\n }\r\n\r\n `]\r\n})\r\nexport class LoginComponent implements OnInit, OnDestroy {\r\n public onAuthForm: FormGroup;\r\n valCheck: string[] = ['remember'];\r\n wrongNotificationCheck: boolean = true;\r\n password: string;\r\n\r\n config: AppConfig;\r\n userData: any;\r\n subscription: Subscription;\r\n date: any;\r\n loginId: any = '';\r\n ipAddress: any;\r\n status: any;\r\n isSiteUnderMaintenance: boolean = false;\r\n subjectSub: any;\r\n selectedYear: any;\r\n public subscriptions: any = [];\r\n financialYears:any[]=[]\r\n\r\n constructor(\r\n private _formBuilder: FormBuilder, \r\n private service1: BaseService, \r\n public configService: ConfigService, \r\n private authService: AuthenticationService, \r\n public router: Router, \r\n private service: MessageService, \r\n private cryptoJs: CryptoJsService, \r\n private translateService: TranslateService, \r\n private messageService: MessageService, \r\n private ipService: IpAddressService, \r\n private activityRecordService: ActivityRecordService, \r\n private loader: AppLoaderService,\r\n private reportsService: ReportsService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getInitialToken();\r\n sessionStorage.removeItem('userID');\r\n\r\n this.getFinYear();\r\n this.onAuthForm = this._formBuilder.group({\r\n email: ['', [Validators.required]],\r\n password: ['', [Validators.required]],\r\n remembercheck: ['', []],\r\n });\r\n\r\n this.config = this.configService.config;\r\n this.subscription = this.configService.configUpdate$.subscribe(config => {\r\n this.config = config;\r\n });\r\n \r\n // this.subjectSub = this.service1\r\n // .getSelectedYear()\r\n // .pipe(shareReplay())\r\n // .subscribe((res) => {\r\n // let router = this.router.url;\r\n // // this.routePath=router.split('/')\r\n // this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n // this.selectedYear = res;\r\n\r\n // });\r\n // this.getChartData('');\r\n // this.getChartData('2022-23');\r\n // this.getChartData('2023-24');\r\n }\r\n\r\n getInitialToken(){\r\n this.authService\r\n .getInitialToken()\r\n .pipe(first())\r\n .subscribe({\r\n next: (response) => {\r\n if (response){\r\n sessionStorage.setItem(\"token\", response.data)\r\n }\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: `Next level user not found. ${err}`,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n onLogin() {\r\n sessionStorage.removeItem(\"isFarmerLogin\");\r\n sessionStorage.removeItem(\"isVendorLogin\");\r\n \r\n let reqBody = {\r\n \"username\": this.f.email.value,\r\n \"password\": this.cryptoJs.Encrypt(this.f.password.value)\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJs.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n \r\n this.loader.start();\r\n this.authService.login(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n sessionStorage.setItem(\"token\", resp.data)\r\n let data = JSON.parse(this.cryptoJsService.DecryptToken(resp.data));\r\n this.loader.close();\r\n this.loginId = data.role;\r\n this.activityRecordService.activityRecord(this.f.email.value, 'login', '', new Date(), 'Success');\r\n\r\n if (data.officeCode) {\r\n sessionStorage.setItem(\"officeCode\", data.officeCode);\r\n }\r\n sessionStorage.setItem(\"User_name_while_login\", this.f.email.value);\r\n sessionStorage.setItem(\"loginUserName\", data?.officerName);\r\n if (data.role == 'ABY_agency') {\r\n sessionStorage.setItem('isAtalBhujal', '1');\r\n sessionStorage.setItem('abyUserID', this.f.email.value);\r\n }\r\n this.userData = jwtDecode(data.authToken);\r\n if (data.role === 'DD Associate' || data.role === 'DMICADA' || data.role === 'DDMICADA' || data.role === 'ADVISOR') {\r\n sessionStorage.setItem('userRole', data.role);\r\n sessionStorage.setItem('isDepartment', '1');\r\n sessionStorage.setItem('deptUserID', this.f.email.value);\r\n sessionStorage.setItem(this.cryptoJs.Encrypt('canEditMIData'), this.cryptoJs.Encrypt('yes'));\r\n if (data.role === 'ADVISOR') {\r\n this.router.navigate(['/department/report/timeline']);\r\n // this.router.navigate(['/department/dashboard/micada_geography']);\r\n } else if (data.role === 'DMICADA') {\r\n this.router.navigate(['/department/report/consolidated-report-new']);\r\n // this.router.navigate(['/department/dashboard/micada_geography']);\r\n } else if (sessionStorage.getItem('deptUserID') === 'D.A-9') {\r\n this.router.navigate(['/department/pond/tank-stage1'])\r\n } else if (sessionStorage.getItem('deptUserID') === 'D.A-10') {\r\n this.router.navigate(['/department/unhide-application'])\r\n }\r\n else {\r\n this.router.navigate(['/department/farmer-applications']);\r\n }\r\n\r\n\r\n return;\r\n }\r\n else if (data.role == 'Vendor') {\r\n sessionStorage.setItem('isVendor', '1');\r\n // this.router.navigate(['/vendor/dashboard/dashoard-report-new']);\r\n this.router.navigate(['/vendor/pre-estimate-survey']);\r\n sessionStorage.setItem('abyUserID', this.userData.sub);\r\n return;\r\n }\r\n else if (data.role == 'JE') {\r\n sessionStorage.setItem('isJE', '1');\r\n sessionStorage.setItem(this.cryptoJs.Encrypt('editBilledData'), this.cryptoJs.Encrypt('yes'));\r\n this.router.navigate(['/je']);\r\n return;\r\n }\r\n else if (data.role == 'CJE') {\r\n sessionStorage.setItem('isJE', '1');\r\n sessionStorage.setItem('isCJE', '1');\r\n sessionStorage.setItem(this.cryptoJs.Encrypt('editBilledData'), this.cryptoJs.Encrypt('yes'));\r\n this.router.navigate(['/cje']);\r\n return;\r\n }\r\n else if (data.role == 'SDO') {\r\n sessionStorage.setItem('isSDO', '1');\r\n sessionStorage.setItem(this.cryptoJs.Encrypt('editBilledData'), this.cryptoJs.Encrypt('yes'));\r\n this.router.navigate(['/sdo']);\r\n return;\r\n }\r\n else if (data.role == 'XEN') {\r\n sessionStorage.setItem('isXEN', '1');\r\n sessionStorage.setItem(this.cryptoJs.Encrypt('editBilledData'), this.cryptoJs.Encrypt('yes'));\r\n this.router.navigate(['/xen']);\r\n return;\r\n }\r\n else if (data.role == 'CXEN') {\r\n sessionStorage.setItem('isXEN', '1');\r\n sessionStorage.setItem('isCXEN', '1');\r\n sessionStorage.setItem(this.cryptoJs.Encrypt('editBilledData'), this.cryptoJs.Encrypt('yes'));\r\n this.router.navigate(['/cxen']);\r\n return;\r\n }\r\n else if (data.role == 'HelpDesk') {\r\n sessionStorage.setItem('isHelpdesk', '1');\r\n this.router.navigate(['/helpdesk']);\r\n return;\r\n }\r\n else if (data.role == 'ADMIN') {\r\n sessionStorage.setItem('userRole', data.role);\r\n sessionStorage.setItem('adminUserID', this.f.email.value);\r\n sessionStorage.setItem(this.cryptoJs.Encrypt('canEditMIData'), this.cryptoJs.Encrypt('yes'));\r\n this.router.navigate(['/admin/report/consolidated-report-new']);\r\n // this.router.navigate(['/admin']);\r\n return;\r\n }\r\n else if (data.role == 'ABY_agency') {\r\n sessionStorage.setItem('isAtalBhujal', '1');\r\n sessionStorage.setItem('userId', this.userData.sub);\r\n }\r\n else if (data.role == 'CAO') {\r\n sessionStorage.setItem('userRole', data.role);\r\n sessionStorage.setItem('isCAO', '1');\r\n // this.router.navigate(['/cao']);\r\n this.router.navigate(['/cao/report/consolidated-report-new']);\r\n return;\r\n }\r\n else if (data.role == 'Dev') {\r\n sessionStorage.setItem('isDev', '1');\r\n this.router.navigate(['/dev']);\r\n return;\r\n }\r\n else if (data.role == 'SubDev') {\r\n sessionStorage.setItem('isSubDev', '1');\r\n this.router.navigate(['/subdev']);\r\n return;\r\n }\r\n else if (data.role == 'JE-EW') {\r\n sessionStorage.setItem('isJEEW', '1');\r\n sessionStorage.setItem('userRole', data.role);\r\n this.router.navigate(['/ew-je']);\r\n return;\r\n }\r\n else if (data.role == 'DD-EW') {\r\n sessionStorage.setItem('isDDEW', '1');\r\n sessionStorage.setItem('userRole', data.role);\r\n this.router.navigate(['/ew-department/report/consolidated-report-new']);\r\n return;\r\n }\r\n else if (data.role == 'XEN Works') {\r\n sessionStorage.setItem('isUserAction', '1');\r\n sessionStorage.setItem('userRole', data.role);\r\n this.router.navigate(['/user-action']);\r\n return;\r\n }\r\n else if (data.role == 'Contractor') {\r\n sessionStorage.setItem('isConstractor', '1');\r\n sessionStorage.setItem('userRole', data.role);\r\n this.router.navigate(['/contractor/new-work']);\r\n return;\r\n }\r\n else if (data.role == 'Dev Team') {\r\n sessionStorage.setItem('isDevTeam', '1');\r\n sessionStorage.setItem('userRole', data.role);\r\n this.router.navigate(['/ptg-dev-team']);\r\n return;\r\n }\r\n else if (data.role == 'GrievanceHandler') {\r\n sessionStorage.setItem('isGrievanceHandler', '1');\r\n sessionStorage.setItem('userRole', data.role);\r\n this.router.navigate(['/grievance-handler']);\r\n return;\r\n }\r\n else if (data.role == 'WebAdmin') {\r\n sessionStorage.setItem('isWebAdmin', '1');\r\n sessionStorage.setItem('userRole', data.role);\r\n this.router.navigate(['/webadmin']);\r\n return;\r\n }\r\n this.router.navigate(['/dashboard']);\r\n },\r\n error: (res) => {\r\n this.loader.close();\r\n let errorArray = res;\r\n\r\n this.activityRecordService.activityRecord(this.f.email.value, 'login', '', new Date(), errorArray);\r\n if (errorArray.length) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: errorArray });\r\n } else {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Server Error' });\r\n }\r\n },\r\n // complete: () => {\r\n\r\n // this.fetchDateTime();\r\n // },\r\n }\r\n );\r\n }\r\n\r\n get f() {\r\n return this.onAuthForm.controls;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n\r\n // wrongNotification(event) {\r\n // this.wrongNotificationCheck = !this.wrongNotificationCheck;\r\n\r\n // if(event.value.name=='English')\r\n // {\r\n // this.translateService.use('en')\r\n // }\r\n // else{\r\n // this.translateService.use('hd')\r\n // }\r\n\r\n // }\r\n\r\n reloadPage(){\r\n window.location.reload();\r\n }\r\n\r\n goBack(){\r\n window.history.back();\r\n }\r\n\r\n getFinYear(){\r\n this.reportsService.getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n\r\n data.forEach((e:any)=>{\r\n let year={name:e.FinancialYears,code:e.FinancialYears}\r\n \r\n \r\n this.financialYears.push(year)\r\n \r\n\r\n })\r\n this.selectedYear={...this.financialYears[2]}\r\n\r\n sessionStorage.setItem('yearList', JSON.stringify(this.financialYears))\r\n sessionStorage.setItem('financialYear',this.selectedYear.code)\r\n let a= sessionStorage.getItem('financialYear')\r\n this.service1.changeFinancialYear(this.selectedYear.code)\r\n\r\n \r\n }})\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \"Logo\"\r\n
\r\n

{{ 'SITE_UNDER_MAINTENANCE' | translate }}

\r\n

{{ 'SITE_UNDER_MAINTENANCE_MSG' | translate }}

\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \"Image\"\r\n \r\n\r\n
{{'WELCOME'| translate}}
\r\n {{'SIGN_IN_TO_CONTINUE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n {{'FORGOT_PASSWORD'| translate}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\n\r\n@Component({\r\n selector: 'app-mi-physical-location',\r\n templateUrl: './mi-physical-location.component.html',\r\n styleUrls: ['./mi-physical-location.component.scss']\r\n})\r\nexport class MiPhysicalLocationComponent implements OnInit {\r\n public userId: any;\r\n public vendorRegId: any;\r\n public displaySourceLocationDialog: boolean = false;\r\n public rowData: any;\r\n public latPosition: any;\r\n public longPosition: any;\r\n public micada1Data: any;\r\n \r\n\r\n options: any;\r\n // overlays: any[];\r\n overlays: google.maps.Marker[] = [];\r\n showMap: boolean = false;\r\n showgeoLocation: boolean = false;\r\n\r\n selectedStatus: any;\r\n remarks: String;\r\n items: any[];\r\n\r\n actionId: any = 18;\r\n\r\n constructor(\r\n private jeService: JEService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 7,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE\r\n };\r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n\r\n \r\n if(this.router.url.startsWith('/xen')){\r\n this.actionId = 18;\r\n }\r\n else if(this.router.url.startsWith('/department')){\r\n this.actionId = 2;\r\n }\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, this.actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n this.selectedStatus = this.items[0]?.status;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.loader.start();\r\n this.jeService\r\n .getMICADA1data(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n console.log('Response Data', data);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.micada1Data = data;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onRowSelect(row) {\r\n console.log('row', row);\r\n this.rowData = row;\r\n if(row?.gpsCoordinate){\r\n let coordinates = row?.gpsCoordinate.split(',')\r\n this.latPosition = parseFloat(coordinates[0].trim());\r\n this.longPosition = parseFloat(coordinates[1].trim());\r\n this.showgeoLocation = true;\r\n this.options = {\r\n center: { lat: this.latPosition, lng: this.longPosition },\r\n zoom: 12,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE\r\n };\r\n this.addOverlay(this.latPosition, this.longPosition);\r\n }\r\n this.displaySourceLocationDialog = true;\r\n }\r\n\r\n onCloseDialog() {\r\n this.displaySourceLocationDialog = false;\r\n this.rowData = [];\r\n this.showgeoLocation = false;\r\n this.showMap = false;\r\n this.latPosition = null;\r\n this.longPosition = null;\r\n this.remarks = null;\r\n }\r\n\r\n submitFinalData() {\r\n let coordinates = this.latPosition + ', ' + this.longPosition;\r\n let reqBody = {\r\n app_id: this.rowData?.app_id,\r\n programmename: this.rowData?.programmename,\r\n name: this.rowData?.name,\r\n father_name: this.rowData?.father_name,\r\n mother_Name: this.rowData?.mother_Name,\r\n distict: this.rowData?.distict,\r\n block: this.rowData?.block,\r\n village: this.rowData?.village,\r\n gpsCoordinate: coordinates,\r\n remarks: this.remarks,\r\n userId: this.userId\r\n };\r\n\r\n this.loader.start();\r\n this.jeService\r\n .insertMISurveyCoordinates(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Submit Approval',\r\n this.rowData?.app_id,\r\n new Date(),\r\n this.selectedStatus.status\r\n );\r\n let resp = JSON.stringify(data);\r\n if (data == \"Data saved.\") {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n this.loadData();\r\n this.onCloseDialog();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: resp,\r\n });\r\n }\r\n },\r\n });\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n this.showgeoLocation = true;\r\n this.options = {\r\n center: { lat: pos.lat, lng: pos.lng },\r\n zoom: 12,\r\n };\r\n this.addOverlay(pos.lat, pos.lng);\r\n console.log(this.latPosition, this.longPosition);\r\n });\r\n }\r\n\r\n _getPosition(): Promise {\r\n this.loader.start();\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n this.loader.close();\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n this.loader.close();\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n addOverlay(latitide: any, longitude: any) {\r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: latitide, lng: longitude },\r\n title: 'Current Location',\r\n })\r\n );\r\n this.showMap = true;\r\n }\r\n\r\n captureLocation(){\r\n this.getGPSCoordinates();\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}\r\n {{item.app_id}}\r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.programmename}}\r\n
{{'NAME'| translate}}\r\n {{item.name}}\r\n
{{'FATHER_NAME'| translate}}\r\n {{item.father_name}}\r\n
{{'MOTHER_NAME'| translate}}\r\n {{item.mother_Name}}\r\n
{{'DISTICT'| translate}}\r\n {{item.distict}}\r\n
{{'BLOCK'| translate}}\r\n {{item.block}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.village}}\r\n
{{'GPS_COORDINATES'| translate}}\r\n {{item.gpsCoordinate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'MI_PHYSICAL_LOCATION'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'NAME'| translate}}\r\n \r\n \r\n \r\n {{'FATHER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'MOTHER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'GPS_COORDINATES'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n\r\n {{product.app_id}}\r\n {{product.programmename}}\r\n {{product.name}}\r\n {{product.father_name}}\r\n {{product.mother_Name}}\r\n {{product.distict}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.gpsCoordinate}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{micada1Data ? micada1Data.length : 0 }}\r\n {{'VER_APP_ADDED'|\r\n translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-micro-irrigation',\r\n templateUrl: './micro-irrigation.component.html',\r\n styleUrls: ['./micro-irrigation.component.scss']\r\n})\r\nexport class MicroIrrigationComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n \r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n \r\n \r\n }\r\n}\r\n","\r\n
{{'PROJECTS_UNDER_MICRO_IRRIGATION'| translate}}\r\n
\r\n

\r\n i) {{'PROJECTS_UNDER_MICRO_IRRIGATION_1'| translate}}

\r\n ii) {{'PROJECTS_UNDER_MICRO_IRRIGATION_2'| translate}}

\r\n iii) {{'PROJECTS_UNDER_MICRO_IRRIGATION_3'| translate}}\r\n
\r\n

\r\n\r\n
{{'ON_GOING_PROJECT'| translate}}\r\n
\r\n

\r\n iv) {{'PROJECTS_UNDER_MICRO_IRRIGATION_4'| translate}}
\r\n
\r\n

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-new-initiatives',\r\n templateUrl: './new-initiatives.component.html',\r\n styleUrls: ['./new-initiatives.component.scss']\r\n})\r\nexport class NewInitiativesComponent implements OnInit {\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code) \r\n }\r\n}","\r\n
Projects Under\r\n Pipeline
\r\n

\r\n a) Projects submitted by CADA to\r\n Government of India, Ministry of Water Resources, RD&GR, New Delhi for inclusion under the\r\n umbrella\r\n scheme of PMKSY - HKKP - ISBIG.

\r\n

\r\n Pradhan Mantri\r\n Krishi Sinchayee Yojana (PMKSY) scheme is a Centrally Sponsored flagship scheme of\r\n Government of\r\n India. The GoI decided in December, 2016 to take up Command Area Development and Water Management\r\n (CADWM) works under the newly introduced scheme namely\r\n ‘Incentivization Scheme for Bridging the Irrigation Gap (ISBIG) under the umbrella scheme of\r\n PMKSY-HKKP.\r\n Haryana state has prepared and submitted 6 projects\r\n pertaining to CADWM Works to the concerned Ministry in GOI i.e. MOWR, RD&GR. The projects are under\r\n active consideration with GOI. As soon as approval is\r\n received from the GOI the same shall be implemented in Haryana State. The main objectives of the\r\n scheme\r\n are as under:-
\r\n (a) Completion of CADWM works along with correction of system deficiencies in canal network for\r\n bridging\r\n the gap between Irrigation Potential Created (IPC)
\r\n and Irrigation Potential Utilized (IPU).
\r\n (b) Improving the water use efficiency in irrigation and providing assured supply of water to every\r\n farm\r\n field; and
\r\n (c) Transfer of control and management of irrigation system to the Water Users’ Associations\r\n (WUAs).


\r\n\r\n The details of the projects submitted to GoI, MoWR for approval and inclusion under ISBIG are as\r\n under:-
\r\n

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Sr.No.Name of ProjectsPhysical Target(CCA in Ha.)\r\n Estimated cost of the Project(Rs. in lakh)Districts to be covered
A On-going Projects
1BCC-II 1,07,675 72984.18 Hisar, Sirsa,\r\n Fatebahad, Ambala, Kaithal, Kanal, Kurukshetra & Jind
2WJC-VI73,14449238.55\r\n Hisar, Rohtak, Jhajjar, Sonepat, Jind, Bhiwani & Panipat
3JLN-II88,70459495.00Jhajjar,\r\n Rewari, Mehandergarh, Bhiwani & Gurgaon
B New Projects
4BCC-III1,71,852111141.06Hisar,\r\n Sirsa, Fatebahad, Ambala, Kaithal, Kanal, Kurukshetra & Jind
\r\n 5WJC-VII75,34149567.71Hisar, Rohtak,\r\n Jhajjar, Sonepat, Jind, Bhiwani & Panipat
6Siwani Project 49,89931834.95\r\n Bhiwani
Total5,66,615374261.45NA

\r\n\r\n\r\n

\r\n b)\r\n Micro Irrigation Projects under Micro Irrigation Fund - NABARD
\r\n

\r\n

\r\n i) Project for Installation of Community Based Solar/Grid Powered Integrated Micro Irrigation\r\n Infrastructure with On-Farm Micro Irrigation in\r\n existing canal commands in various districts of Haryana under NABARD
\r\n To promote micro irrigation system in the fields of farmers, CADA has prepared a micro irrigation\r\n project with an estimated cost of Rs 189.46 crore for\r\n bringing 9022 hectares CCA of 13 districts namely Hisar, Fatehabad, Sirsa, Bhiwani, Kaithal, Karnal,\r\n Kurukshetra, Sonipat, Rohtak, Jhajjar, Jind, Rewari\r\n and Mahendragarh under Micro Irrigation Fund - NABARD. This project has already been approved by the\r\n State Government and NABARD. Work on this project will\r\n be started shortly.
\r\n

\r\n

\r\n ii) Project for installation of Community Based Solar/ Grid\r\n Powered Micro-Irrigation Infrastructure in Kheri Distributory of Fatehabad, Hisar &\r\n Sirsa districts of Haryana under PPP Mode.
\r\n CADA has also prepared another micro irrigation project under PPP Mode with an estimated cost of Rs\r\n 399.97 crore. Under this project, 22941 hectares CCA\r\n of Hisar, Fatehabad and Sirsa districts will be brought under micro irrigation. This project has\r\n already\r\n been approved by the State Government and NABARD.\r\n Work on this project will be started shortly.


\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n\r\n@Component({\r\n selector: 'app-office-orders',\r\n templateUrl: './office-orders.component.html',\r\n styleUrls: ['./office-orders.component.scss']\r\n})\r\nexport class OfficeOrdersComponent implements OnInit {\r\n \r\n selectedLang :any;\r\n images = [\r\n // { \r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n { \r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n { \r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions:any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n\r\n \r\n }\r\n}\r\n","\r\n \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-organizational-setup',\r\n templateUrl: './organizational-setup.component.html',\r\n styleUrls: ['./organizational-setup.component.scss']\r\n})\r\nexport class OrganizationalSetupComponent implements OnInit {\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code) \r\n }\r\n}","\r\n

\r\n \r\n

\r\n","import { CryptoJsService } from './../../services/crypto-js.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs/internal/operators/first';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\nimport { Message, MessageService } from 'primeng/api';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { MenuService } from 'src/app/services/app.menu.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n\r\n@Component({\r\n selector: 'phone-login',\r\n templateUrl: './phone-login.component.html',\r\n styleUrls: ['./phone-login.component.scss']\r\n})\r\nexport class PhoneLoginComponent implements OnInit {\r\n isOTPSend: boolean = false;\r\n phoneNo: string;\r\n otp: string;\r\n public onAuthForm: FormGroup;\r\n submitted: boolean;\r\n validationOTP: any;\r\n btnDisabled: boolean = false;\r\n display: any;\r\n isSiteUnderMaintenance: boolean = false;\r\n\r\n constructor(\r\n private authService: AuthenticationService,\r\n private service: MessageService,\r\n private _formBuilder: FormBuilder,\r\n public router: Router,\r\n private farmersDetailsService: FarmersDetailsService,\r\n private cryptoJS: CryptoJsService,\r\n private menuService : MenuService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getInitialToken();\r\n this.onAuthForm = this._formBuilder.group({\r\n phoneNo: ['', [Validators.required]],\r\n otp: ['', [Validators.required]],\r\n });\r\n this.f.otp.disable();\r\n }\r\n\r\n getInitialToken(){\r\n this.authService\r\n .getInitialToken()\r\n .pipe(first())\r\n .subscribe({\r\n next: (response) => {\r\n if (response){\r\n sessionStorage.setItem(\"token\", response.data)\r\n }\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: `Next level user not found. ${err}`,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n get f() {\r\n return this.onAuthForm.controls;\r\n }\r\n\r\n onOTPClick() {\r\n if (!this.f.phoneNo.value) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Mobile Number Cant be Empty.' });\r\n return;\r\n }\r\n if(this.f.phoneNo.value.length < 10){\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Mobile Number Cant be Less than 10 Digits.' });\r\n return;\r\n }\r\n this.disableOTPButton(2);\r\n\r\n let body = {\r\n \"mobileNo\": this.cryptoJS.Encrypt(this.f.phoneNo.value),\r\n }\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.authService.getOTP(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n data = JSON.parse(data)\r\n data = this.cryptoJsService.DecryptDataPayload(data.data);\r\n this.loader.close();\r\n if (data == 'Already Sent OTP to Mobile Number!') {\r\n this.f.otp.enable();\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Already Sent OTP to Mobile Number!' });\r\n return;\r\n }\r\n let otpData = data.toString().split(',');\r\n if (otpData.length > 0) {\r\n otpData = otpData[0].toString().split(':');\r\n }\r\n this.validationOTP = otpData[1].trim();\r\n this.f.otp.enable();\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: 'OTP Generated Successfully!' });\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! OTP not generated.' });\r\n }\r\n });\r\n }\r\n\r\n disableOTPButton(minute) {\r\n // let minute = 1;\r\n let seconds: number = minute * 60;\r\n let textSec: any = \"0\";\r\n let statSec: number = 60;\r\n\r\n const prefix = minute < 10 ? \"0\" : \"\";\r\n\r\n const timer = setInterval(() => {\r\n seconds--;\r\n if (statSec != 0) statSec--;\r\n else statSec = 59;\r\n\r\n if (statSec < 10) {\r\n textSec = \"0\" + statSec;\r\n } else textSec = statSec;\r\n\r\n this.display = `${prefix}${Math.floor(seconds / 60)}:${textSec}`;\r\n\r\n if (seconds == 0) {\r\n\r\n clearInterval(timer);\r\n }\r\n }, 1000);\r\n }\r\n\r\n login() {\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.onAuthForm.invalid) {\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'farmer_login', '', new Date(), 'Invalid Login');\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: \"Invalid Input\" });\r\n return;\r\n }\r\n let body = {\r\n \"mobileNo\": this.cryptoJS.Encrypt(this.onAuthForm.controls.phoneNo.value),\r\n \"otp\": this.cryptoJS.Encrypt(this.onAuthForm.controls.otp.value)\r\n }\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.authService.validateOTP(reqBodyFinal).pipe(first())\r\n .subscribe({\r\n next: (resp: any) => {\r\n sessionStorage.setItem(\"token\", resp.data)\r\n let data = JSON.parse(this.cryptoJsService.DecryptToken(resp.data));\r\n\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'farmer_login', '', new Date(), 'Success');\r\n\r\n if (data?.authToken) {\r\n if(data['msg'] && data['msg'] != null) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: data?.msg });\r\n sessionStorage.removeItem(\"token\");\r\n setTimeout(()=> window.location.reload(), 3000);\r\n return;\r\n }\r\n // window.sessionStorage.setItem(\"token\", this.cryptoJsService.EncryptPayload(JSON.stringify(data)));\r\n const farmerDetails = new Map();\r\n\r\n farmerDetails.set('farmerPh', this.f.phoneNo.value);\r\n farmerDetails.set('userID', 'farmer');\r\n farmerDetails.set('isFarmerLogin', '1');\r\n\r\n const dataF = JSON.stringify(Array.from(farmerDetails.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n\r\n // sessionStorage.setItem(\"farmerPh\", this.f.phoneNo.value);\r\n sessionStorage.setItem(\"userID\", 'farmer');\r\n // sessionStorage.setItem(\"isFarmerLogin\", '1');\r\n // this.loader.start();\r\n // this.farmersDetailsService.getFarmerDetails(this.f.phoneNo.value)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.loader.close();\r\n // if (data) {\r\n\r\n // if (farmerData) {\r\n // // this.userName = farmerData.Name;\r\n // this.menuService.setUsername(farmerData.Name);\r\n\r\n \r\n // this.farmersDetailsService.updateAdharValidCheck(farmerData.IsAadharValidated) \r\n // }\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // }\r\n // });\r\n\r\n\r\n // if(data.id){\r\n // let val = JSON.parse(data.id);\r\n // if(val?.UserName == \"\"){\r\n // sessionStorage.setItem(\"isNonRegisteredUser\", 'true');\r\n // this.router.navigate(['farmer/dashboard']);\r\n // }else{\r\n // sessionStorage.removeItem(\"isNonRegisteredUser\");\r\n // this.router.navigate(['farmer/dashboard']);\r\n // }\r\n // }else{\r\n // sessionStorage.removeItem(\"isNonRegisteredUser\")\r\n // this.router.navigate(['farmer/dashboard']);\r\n // }\r\n\r\n\r\n // this.router.navigate(['farmer/dashboard']);\r\n this.router.navigate(['farmer/bank-details']);\r\n \r\n } else {\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'farmer_login', '', new Date(), 'OTP Validation Failed');\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: \"OTP Validation Failed\" });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'farmer_login', '', new Date(), err[0]);\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: err[0] });\r\n }\r\n });\r\n }\r\n\r\n reloadPage(){\r\n window.location.reload();\r\n }\r\n\r\n goBack(){\r\n window.history.back();\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \"Logo\"\r\n
\r\n

{{ 'SITE_UNDER_MAINTENANCE' | translate }}

\r\n

{{ 'SITE_UNDER_MAINTENANCE_MSG' | translate }}

\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \"Image\"\r\n\r\n
{{'WELCOME'| translate}}
\r\n {{'SIGN_IN_TO_CONTINUE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'MOBILE_NO_IS_REQ'| translate}}
\r\n
\r\n\r\n
\r\n
\r\n {{'YOU_CAN_REQUEST_OTP_IN'| translate}} {{display}} {{'MINUTES'| translate}}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'OTP_IS_REQ'| translate}}
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { first } from 'rxjs';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-pond-estimate',\r\n templateUrl: './pond-estimate.component.html',\r\n styleUrls: ['./pond-estimate.component.scss'],\r\n})\r\nexport class PondEstimateComponent implements OnInit {\r\n num=0;\r\n pondType = [\r\n { name: \"Bricks Work\" },\r\n { name: \"Earth Work\" },\r\n ];\r\n displayTankDialog: boolean = false;\r\n displayTankDialog2: boolean = false;\r\n wrongNotificationCheck: boolean = true;\r\n wrongNotificationCheck2: boolean = true;\r\n submitEstimateForm: FormGroup;\r\n submitEstimateFormStage2: FormGroup;\r\n submitFalseIntimateForm: FormGroup;\r\n submitFalseIntimateFormStage2: FormGroup;\r\n appID: any;\r\n //flag:any;\r\n items: any[];\r\n selectedStatus: any;\r\n remarks: any;\r\n isSubmitted: boolean = false;\r\n isLoading = false;\r\n userId: any;\r\n stage:any;\r\n pondList: any;\r\n public dialogData: any;\r\n public dialogData2: any;\r\n public tankData: any;\r\n stage2FalseIntimationremarks: any;\r\n stage2EstimateFormremarks: any;\r\n stage1FalseIntimationremarks: any;\r\n stage1EstimateFormRemarks: any;\r\n ipAddress: any = '000.000.000';\r\n\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService ,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadData();\r\n this.getIP();\r\n this.submitEstimateForm = this._fb.group({\r\n topSizeLength: ['', Validators.required],\r\n topSizeBreadth: ['', Validators.required],\r\n bottomSizeLength: ['', Validators.required],\r\n bottomSizeBreadth: ['', Validators.required],\r\n depth: ['', Validators.required],\r\n latitude: ['', Validators.required],\r\n longitude: ['', Validators.required],\r\n volumeOfEarthWork: ['', Validators.required],\r\n totalCostOfEarthWork: ['', Validators.required],\r\n amountOfSubsidy: ['', Validators.required],\r\n measurementBookCopyPath: ['', Validators.required],\r\n });\r\n\r\n this.submitEstimateFormStage2 = this._fb.group({\r\n topSizeLength: ['', Validators.required],\r\n topSizeBreadth: ['', Validators.required],\r\n bottomSizeLength: ['', Validators.required],\r\n bottomSizeBreadth: ['', Validators.required],\r\n depth: ['', Validators.required],\r\n typeOfPond: ['', Validators.required],\r\n toalCostOfWaterTank: ['', Validators.required],\r\n totalAmountOfSubsidy: ['', Validators.required],\r\n amountOfTotalSubsidy: ['', Validators.required],\r\n AssistancePaidAtStage2: ['', Validators.required],\r\n measurementBookCopyPathStage2: ['', Validators.required],\r\n // remarks: ['', Validators.required],\r\n });\r\n\r\n this.submitFalseIntimateForm= this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n\r\n this.submitFalseIntimateFormStage2= this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n let actionId = 5; // Do not Change, it is fixed for Farmer Application Verifications\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n }\r\n\r\n loadData() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.loader.start();\r\n this.pondService\r\n .getFarmerPondVerification(this.userId,this.stage)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n console.log('Response Data', data);\r\n this.tankData = data;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Dashboard not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n\r\n get tankFormControls() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n get tankFormControlsStage2() {\r\n return this.submitEstimateFormStage2.controls;\r\n }\r\n\r\n get falseIntimationFormControls() {\r\n return this.submitFalseIntimateForm.controls;\r\n }\r\n\r\n get falseIntimationFormControlsStage2() {\r\n return this.submitFalseIntimateFormStage2.controls;\r\n }\r\n\r\n selectTankRowData(product) {\r\n console.log(product);\r\n if(product.Stage==1){\r\n this.dialogData = [product];\r\n this.appID = product.appID;\r\n this.displayTankDialog = true;\r\n }\r\n else if(product.Stage==2)\r\n {\r\n this.dialogData2 = [product];\r\n this.appID = product.appID;\r\n this.displayTankDialog2 = true;\r\n }\r\n else{\r\n console.log(\"error\");\r\n }\r\n }\r\n\r\n // selectTankRowData(product) {\r\n // this.dialogData = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog = true;\r\n // }\r\n // selectTankRowData2(product) {\r\n // this.dialogData2 = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog2 = true;\r\n // }\r\n\r\n\r\n onCloseDialog() {\r\n this.submitEstimateForm.reset();\r\n this.displayTankDialog = false;\r\n this.isSubmitted = false;\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement,step) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n if(step==1){\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n else if(step==2){\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n else if(step==3){\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n else {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n }\r\n\r\n // onUpload(event, formcontrol, uploadElement) {\r\n // let file = event.files[0];\r\n // let data = new FormData();\r\n // data.append('file', file);\r\n // this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n // console.log(resp);\r\n // if (resp.statusCode == 200) {\r\n // this.submitEstimateForm.patchValue({ [formcontrol]: resp.data });\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'File Uploaded with Auto Mode',\r\n // });\r\n // }\r\n // });\r\n // uploadElement.clear();\r\n // }\r\n\r\n PostFalseIntimate(reqBody1){\r\n console.log(reqBody1,\"reqBody1\");\r\n this.pondService\r\n .PondFalseIntimation(reqBody1)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n console.log('POST VENDOR POND FALSE INTIMATION SUCCESS', data);\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! false Intimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Pond false Intimation Added Successfully',\r\n });\r\n },\r\n });\r\n }\r\n \r\n submitFalseIntimate(){\r\n this.isSubmitted = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: \"0\",\r\n status:this.selectedStatus.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateForm.get('remarks').value,\r\n photoPath: this.submitFalseIntimateForm.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks:this.stage1FalseIntimationremarks,\r\n };\r\n this.PostFalseIntimate(reqBody1)\r\n this.onCloseDialog();\r\n }\r\n\r\n submitFalseIntimateStage2()\r\n {\r\n this.isSubmitted = true;\r\n console.log(\"Submit false intimate form stage 2\", this.submitFalseIntimateFormStage2.valid);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: \"0\",\r\n status:this.selectedStatus.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateFormStage2.get('remarks').value,\r\n photoPath: this.submitFalseIntimateFormStage2.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks:this.stage2FalseIntimationremarks,\r\n };\r\n this.PostFalseIntimate(reqBody1)\r\n this.onCloseDialog();\r\n }\r\n\r\n submitEstimate() {\r\n this.isSubmitted = true;\r\n console.log(\"Submit estimate form\", this.submitEstimateForm.valid);\r\n if (this.submitEstimateForm.valid) {\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n userID:userId,\r\n status:this.selectedStatus.flag,\r\n stageType: 0,\r\n totalAmtStage2:this.num.toString(),\r\n assistancePaidAtStage2:this.num.toString(),\r\n topLength: this.submitEstimateForm.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateForm.get('topSizeBreadth').value,\r\n topSize: `${this.submitEstimateForm.get('topSizeLength').value *\r\n this.submitEstimateForm.get('topSizeBreadth').value\r\n }`,\r\n bottomLenght: this.submitEstimateForm.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateForm.get('bottomSizeBreadth').value,\r\n bottomSize: `${this.submitEstimateForm.get('bottomSizeLength').value *\r\n this.submitEstimateForm.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateForm.get('depth').value,\r\n volumeEarthWork: this.submitEstimateForm.get('volumeOfEarthWork').value,\r\n tankLat: this.submitEstimateForm.get('latitude').value,\r\n tankLon: this.submitEstimateForm.get('longitude').value,\r\n estimateCost: this.submitEstimateForm.get('totalCostOfEarthWork').value,\r\n estimateCopy: this.submitEstimateForm.get('measurementBookCopyPath')\r\n .value,\r\n remarks:this.stage1EstimateFormRemarks,\r\n };\r\n this.postVendorPondEstimate(reqBody);\r\n this.onCloseDialog();\r\n }\r\n }\r\n\r\n\r\n submitEstimateStage2() {\r\n this.isSubmitted = true;\r\n console.log(\"Submit estimate form stage 2\", this.submitEstimateFormStage2.valid);\r\n if (this.submitEstimateFormStage2.valid) {\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n stageType: 0,\r\n userID:userId, \r\n totalAmtStage2:this.num.toString(),\r\n assistancePaidAtStage2:this.num.toString(),\r\n status:this.selectedStatus.flag,\r\n topLength: this.submitEstimateFormStage2.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateFormStage2.get('topSizeBreadth').value,\r\n topSize: `${this.submitEstimateFormStage2.get('topSizeLength').value *\r\n this.submitEstimateFormStage2.get('topSizeBreadth').value\r\n }`,\r\n bottomLenght: this.submitEstimateFormStage2.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateFormStage2.get('bottomSizeBreadth').value,\r\n bottomSize: `${this.submitEstimateFormStage2.get('bottomSizeLength').value *\r\n this.submitEstimateFormStage2.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateFormStage2.get('depth').value,\r\n //typeOfPond: this.submitEstimateFormStage2.get('typeOfPond').value,\r\n toalCostOfWaterTank: this.submitEstimateFormStage2.get('toalCostOfWaterTank').value,\r\n totalAmountOfSubsidy: this.submitEstimateFormStage2.get('totalAmountOfSubsidy').value,\r\n amountOfTotalSubsidy: this.submitEstimateFormStage2.get('amountOfTotalSubsidy').value,\r\n estimateCopy: this.submitEstimateFormStage2.get('measurementBookCopyPathStage2')\r\n .value,\r\n // remarks: this.submitEstimateFormStage2.get('remarks').value,\r\n remarks:this.stage2EstimateFormremarks,\r\n };\r\n this.postVendorPondEstimate(reqBody);\r\n this.onCloseDialog();\r\n }\r\n }\r\n\r\n wrongNotification(submitEstimateForm) {\r\n this.wrongNotificationCheck = !this.wrongNotificationCheck;\r\n //this.submitEstimateForm.reset();\r\n // this.isSubmitted = false;\r\n \r\n submitEstimateForm = false;\r\n }\r\n\r\n wrongNotification2(submitEstimateFormStage2) {\r\n this.wrongNotificationCheck2 = !this.wrongNotificationCheck2;\r\n //this.submitEstimateForm.reset();\r\n // this.isSubmitted = false;\r\n \r\n submitEstimateFormStage2 = false;\r\n }\r\n\r\n postVendorPondEstimate(reqBody) {\r\n this.pondService\r\n .vendorPondEstimate(reqBody)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n console.log('POST VENDOR POND ESTIMATE SUCCESS', data);\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Pond Estimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Pond Estimation Added Successfully',\r\n });\r\n },\r\n });\r\n this.loadData();\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n

{{'LIST_OF_WATRER_TANK_TO_BE_VERIFIED' | translate}}

\r\n \r\n\r\n \r\n \r\n {{'SR_NO' | translate}}\r\n \r\n \r\n \r\n\r\n {{'APP_ID' | translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME' | translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'TOTAL_AREA' | translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAILS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION' | translate}}\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.appID}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product.LandDetail}}\r\n {{product.status}}\r\n {{product.remarks}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n

{{'LIST_OF_WATRER_TANK_TO_BE_VERIFIED' | translate}}

\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n \r\n

\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n

X

\r\n\r\n \r\n
\r\n
{{'BREADTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{'BREADTH' | translate}} : {{submitEstimateForm.get('bottomSizeBreadth').value}}\r\n
\r\n \r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n

X

\r\n\r\n \r\n
\r\n
{{'BREADTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'LATITUDE_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'LONGITUDE_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'VOLUME_OF_EARTHWORK_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_COST_OF_EARTHWORK_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AMOUNT_OF_SUBSIDY_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n {{'NOTE' | translate}}: \r\n {{'PLEASE_FILL_DETAILS_PHYSICAL_VERIFICATION' | translate}}\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n {{'NOTE' | translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED' | translate}}.\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n

{{'LIST_OF_WATER_TANK_STAGE_2' | translate}}

\r\n \r\n
\r\n \r\n\r\n \r\n \r\n {{'SR_NO' | translate}}\r\n \r\n \r\n \r\n\r\n {{'APP_ID' | translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME' | translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n\r\n {{'TOTAL_AREA' | translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAILS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.appID}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product.LandDetail}}\r\n {{product.status}}\r\n {{product.remarks}}\r\n \r\n \r\n\r\n \r\n
\r\n \r\n\r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n {{'SR_NO' | translate}}\r\n \r\n \r\n \r\n\r\n {{'TYPE_OF_FARMER' | translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSISTANCE_PAID' | translate}}\r\n \r\n \r\n \r\n\r\n {{'SUBSIDY_PAID_AT_STAGE' | translate}}\r\n \r\n \r\n \r\n\r\n {{'MEASUREMENT_BOOK_TANK_STAGE' | translate}}\r\n \r\n \r\n \r\n \r\n\r\n {{'PAYMENT_STATUS' | translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.typeOfFarmer}}\r\n {{product.assistancePaid}}\r\n {{product.subsidyPaidAt1stStage}}\r\n {{product.measurementBookTankStage1}}\r\n {{product.paymentStatus}}\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n


\r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n

X

\r\n\r\n \r\n
\r\n
{{'BREADTH_IS_REQUIRED'|translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{'BREADTH' | translate}} : {{submitEstimateFormStage2.get('bottomSizeBreadth').value}}\r\n
\r\n


\r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n

X

\r\n\r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n


\r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n


\r\n \r\n
\r\n\r\n
\r\n

\r\n \r\n
\r\n
\r\n {{'TOTAL_COST_OF_WATER_TANK_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'AMOUNT_OF_SUBSIDY_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ASSISTANCE_PAID_AT_STAGE-2_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n\r\n
\r\n
\r\n {{'NOTE' | translate}}: \r\n {{'ONLY_PDF_FILES_ALLOWED' | translate}}.\r\n
\r\n\r\n \r\n\r\n \r\n \r\n
\r\n {{'NOTE' | translate}}: \r\n {{'PLEASE_FILL_DETAILS_PHYSICAL_VERIFICATION' | translate}}\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n {{'NOTE' | translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED' | translate}}.\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n","import { PondIntimationService } from './../../services/pond-intimation.service';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { Table } from 'primeng/table';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-pond-progress-intimation',\r\n templateUrl: './pond-progress-intimation.component.html',\r\n styleUrls: ['./pond-progress-intimation.component.scss'],\r\n})\r\nexport class PondProgressIntimationComponent implements OnInit {\r\n @ViewChild('farmerPondIntimationTable', { static: true })\r\n public farmerPondIntimationTable: Table;\r\n\r\n value1: string = 'yes';\r\n stateOptions: any[];\r\n pondIntimationObject: any;\r\n firstIntimation: any;\r\n secondIntimation: any;\r\n thirdIntimation: any;\r\n public farmerId: any;\r\n public intimationAction: boolean = false;\r\n public farmerPondIntimationData: any = [];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n\r\n constructor(\r\n private pondIntimationService: PondIntimationService,\r\n private messageService: MessageService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n\r\n this.loadData(this.farmerId);\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n }\r\n \r\n loadData(farmerId){\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let mobile = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondIntimationService.getAppIdByFarmerId(farmerId).subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n if (data.length) {\r\n // this.pondIntimationService.GetFarmerPondIntimation(data[0]?.AppID).subscribe({\r\n let api = this.pondIntimationService\r\n .GetFarmerPondIntimation(farmerId)\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(mobile, 'Pond/Water Tank Intimation', farmerId, new Date(), 'Success');\r\n\r\n this.farmerPondIntimationData = data;\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'Pond/Water Tank Intimation', farmerId, new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(api);\r\n }else{\r\n this.loading = false;\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onIntimate(row) {\r\n this.intimationAction = true;\r\n // console.log('rowValue', row);\r\n\r\n this.pondIntimationObject = row;\r\n this.firstIntimation =\r\n this.pondIntimationObject.FirstIntimation?.toString();\r\n this.secondIntimation =\r\n this.pondIntimationObject.SecondIntimation?.toString();\r\n this.thirdIntimation =\r\n this.pondIntimationObject.ThirdIntimation?.toString();\r\n \r\n this.stateOptions = [\r\n { label: 'Yes', value: 'true' },\r\n { label: 'No', value: 'false' },\r\n ];\r\n }\r\n\r\n onFormSubmit() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let mobile = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n let body = {\r\n appID: this.pondIntimationObject.AppID,\r\n firstIntimation: this.firstIntimation === 'true',\r\n secondIntimation: this.secondIntimation === 'true',\r\n };\r\n this.loader.start();\r\n this.pondIntimationService.updateFarmerPondIntimation(body).subscribe({\r\n next: (data: any) => {\r\n this.loader.close();\r\n if(data == \"S:Successfully Submitted\" || \"S:Successfully Updated\"){\r\n this.intimationAction = false;\r\n this.loadData(this.farmerId);\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n } else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Response Message',\r\n detail: data,\r\n });\r\n }\r\n \r\n \r\n this.activityRecordService.activityRecord(mobile, 'Update Pond/Water Tank Intimation', this.farmerId, new Date(), data, body);\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.activityRecordService.activityRecord(mobile, 'Update Pond/Water Tank Intimation', this.farmerId, new Date(), err, body);\r\n\r\n },\r\n });\r\n \r\n \r\n }\r\n\r\n onBack(){\r\n this.intimationAction = false;\r\n this.pondIntimationObject = {};\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_POND_INTIMATION'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'DT_INTIMATED'| translate}}\r\n \r\n \r\n \r\n {{'FIRST_INTIMATION'| translate}}\r\n \r\n \r\n \r\n {{'SECOND_INTIMATION'| translate}}\r\n \r\n \r\n \r\n {{'THIRD_INTIMATION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.AppID}}\r\n {{product.DtIntimated | date:\"medium\"}}\r\n {{product.FirstIntimation}}\r\n {{product.SecondIntimation}}\r\n {{product.ThirdIntimation}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{farmerPondIntimationData ? farmerPondIntimationData.length : 0 }} {{'FARMER_POND_INTIMATION_ADDED'| translate}}.\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
{{'ENTER_POND_PROGRESS_STAGE'| translate}}
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
    \r\n
  • \r\n
    {{'STAGE1'| translate}}
    \r\n
    {{'WHETHER_COMPLETION_OF_EARTH'| translate}}\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n
    {{'STAGE2'| translate}}
    \r\n
    {{'WHETHER_COMPLETION_OF_WORK'| translate}}\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n
    {{'STAGE3'| translate}}
    \r\n
    {{'THIRD_INITMATION'| translate}}
    \r\n
    \r\n \r\n \r\n
    \r\n
  • \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-project',\r\n templateUrl: './project.component.html',\r\n styleUrls: ['./project.component.scss']\r\n})\r\nexport class ProjectComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n \r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n \r\n \r\n }\r\n}\r\n","\r\n

\r\n {{'PROJECT_DESCRIPTION' | translate}}.\r\n \r\n

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'SR_NO' | translate}}{{'NAME_OF_PROJECT' | translate}}{{'PROJECT_AREA' | translate}}{{'NO_OF_COMPLETED' | translate}}{{'ACHIEVEMENT' | translate}}.{{'DISTRICT_BENEFITED'| translate}}
{{'COMPLETED_PROJECTS' | translate}}
1Gurgaon Canal Command13058838867179Gurgaon
2Rewari Lift Irrigation Scheme323709317450Bhiwani
3Bond Distributory Command Project/Bhiwani Area.5930264667Bhiwani, Rohtak
4Dulhera Distributory Command Project2721014327221Rohtak, Jhajjar
5Hansi Area Project12140193280Rohtak, Jhajjar
\r\n 6\r\n \r\n Jui lift Irrigation Scheme\r\n \r\n 30160\r\n \r\n 221\r\n \r\n 27929\r\n \r\n Bhiwani\r\n
7\r\n JLN Canal Command\r\n \r\n 118900\r\n \r\n 564\r\n \r\n 93309\r\n \r\n Bhiwani, Rohtak, Jhajjar, Rewari & Mohindergarh\r\n
\r\n 8\r\n \r\n Agra Canal Command Phase I\r\n \r\n 20836\r\n \r\n 244\r\n \r\n 20787\r\n \r\n Faridabad\r\n
\r\n 9\r\n \r\n Agra Canal  Command Phase-II\r\n \r\n 14487\r\n \r\n 54\r\n \r\n 3790\r\n \r\n Faridabad\r\n
\r\n 10\r\n \r\n WJC Command Phase-I\r\n \r\n 132000\r\n \r\n 730\r\n \r\n 128330\r\n \r\n Bhiwani, Rohtak, Jhajjar, Sonepat & Jind.\r\n
\r\n 11\r\n \r\n WJC Command Phase-II\r\n \r\n 51000\r\n \r\n 340\r\n \r\n 51000\r\n \r\n Jind and Hisar\r\n
\r\n 12\r\n \r\n WJC Command Phase-III\r\n \r\n 36000\r\n \r\n 107\r\n \r\n 16621\r\n \r\n Rohtak, Sonipat and Panipat\r\n
\r\n 13\r\n \r\n WJC Command Phase-IV\r\n \r\n 30000\r\n \r\n 133\r\n \r\n 26494\r\n \r\n Rohtak, Jhajjar, Sonepat, Jind, and Bhiwani\r\n\r\n
\r\n 14\r\n \r\n WJC Command Phase-V\r\n \r\n 7680\r\n \r\n 54\r\n \r\n 7680\r\n \r\n Jind & Hisar\r\n
\r\n 15\r\n \r\n Bhakra Canal Command\r\n \r\n 239154\r\n \r\n 1148\r\n \r\n 222739\r\n \r\n Ambala, Kaithal, Kurukshetra, Karnal, Jind, Hisar, Sirsa & Fatehabad\r\n

\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-appeal',\r\n templateUrl: './appeal.component.html',\r\n styleUrls: ['./appeal.component.scss']\r\n})\r\nexport class AppealComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

Will back soon

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ConfirmationService, MenuItem } from 'primeng/api';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { BankDetail } from './bankDetails';\r\nimport { saveAs } from 'file-saver';\r\nimport jsPDF from 'jspdf';\r\nimport autoTable from 'jspdf-autotable';\r\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-bank-details',\r\n templateUrl: './bank-details.component.html',\r\n styleUrls: ['./bank-details.component.scss'],\r\n providers: [BankDetailService, MessageService, ConfirmationService],\r\n})\r\nexport class BankDetailsComponent implements OnInit {\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n items: MenuItem[];\r\n\r\n statuses: any[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n ipAddress: any = '000.000.000';\r\n public loading: boolean = false; \r\n public farmerMobNo: any;\r\n\r\n constructor(\r\n private productService: BankDetailService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n this.farmerMobNo = farmerconfData.get('farmerPh');\r\n\r\n this.getIP();\r\n this.items = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel();\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf();\r\n },\r\n },\r\n ];\r\n this.getFarmerId();\r\n this.getBankNameList();\r\n // this.getBankList();\r\n\r\n // this.productService.getBankDetails().subscribe(data => this.bankAccountList = data?? [])\r\n }\r\n\r\n getBankNameList() {\r\n this.productService.getAllBankNames().subscribe((data) => {\r\n if (data) {\r\n this.bankList = data;\r\n this.filteredBankList = data;\r\n }\r\n });\r\n }\r\n\r\n getFarmerId() {\r\n let mobile = this.farmerMobNo;\r\n // this.loader.start();\r\n this.loading = true;\r\n this.productService.getFarmerIdByMobileNo(mobile).subscribe((resp) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if (resp.statusCode === 200) {\r\n this.activityRecordService.activityRecord(mobile, 'Bank Details', '', new Date(), 'Success');\r\n\r\n let far = JSON.parse(resp.data);\r\n if (far.length > 0) {\r\n this.farmerId = far[0].Farmer_ID;\r\n this.getBankList();\r\n }\r\n }\r\n else{\r\n this.activityRecordService.activityRecord(mobile, 'Bank Details', '', new Date(), 'Invalid');\r\n }\r\n });\r\n }\r\n getBankList() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.productService\r\n .getBankDetails(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n let d = data ?? [];\r\n this.bankAccountList = d.map((res) => {\r\n return {\r\n accountHolderName: res.Account_Holder_Name,\r\n accountNumber: res.Account_NO,\r\n bankName: this.bankList\r\n .filter((d) => d.BANK_ID === res.Bank_ID)\r\n .map((d) => d.Bank_NAME)[0],\r\n ifscCode: res.IFSC_code,\r\n image: res.Passbook_Copy_Upload,\r\n ...res,\r\n };\r\n });\r\n\r\n // this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Bank Details saved Successfully.' });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Bank Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n openNew() {\r\n this.bankAccount = {};\r\n this.submitted = false;\r\n this.addBankDialog = true;\r\n }\r\n\r\n // deleteSelectedProducts() {\r\n // this.confirmationService.confirm({\r\n // message: 'Are you sure you want to delete the selected Bank Accounts?',\r\n // header: 'Confirm',\r\n // icon: 'pi pi-exclamation-triangle',\r\n // accept: () => {\r\n // this.bankAccountList = this.bankAccountList.filter(val => !this.selectedBankAccounts.includes(val));\r\n // this.selectedBankAccounts = [];\r\n // this.messageService.add({ severity: 'success', summary: 'Successful', detail: 'Products Deleted', life: 3000 });\r\n // }\r\n // });\r\n // }\r\n\r\n editProduct(bank: BankDetail) {\r\n this.bankAccount = { ...bank };\r\n this.addBankDialog = true;\r\n // this.saveProduct();\r\n }\r\n\r\n // deleteProduct(bank: any) {\r\n // this.confirmationService.confirm({\r\n // message: 'Are you sure you want to delete ' + bank.accountHolderName + '?',\r\n // header: 'Confirm',\r\n // icon: 'pi pi-exclamation-triangle',\r\n // accept: () => {\r\n // const data = {\r\n // \"farmerID\": bank.Farmer_ID,\r\n // \"bankID\": bank.Bank_ID,\r\n // \"ifcS_Code\": bank.IFSC_code,\r\n // \"acco_Number\": +bank.Account_NO,\r\n // \"accHoName\": bank.Account_Holder_Name,\r\n // \"scanCopy_Path\": bank.Passbook_Copy_Upload,\r\n // \"active\": bank.Active,\r\n // \"user_ID\": bank.User_ID,\r\n // \"network_Id\": bank.Network_Id,\r\n // \"terminal_ID\": bank.Terminal_Id,\r\n // \"delete_Bank_record\": '1'\r\n // }\r\n // this.productService.postBankDetails(data).pipe(first())\r\n // .subscribe({\r\n // next: () => {\r\n // this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Bank Details Deleted Successfully.' });\r\n // this.getBankList();\r\n // },\r\n // error: () => {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! ' });\r\n\r\n // }\r\n // });\r\n\r\n // // this.bankAccountList = this.bankAccountList.filter(val => val.id !== bank.id);\r\n // // this.bankAccount = {};\r\n // // this.messageService.add({ severity: 'success', summary: 'Successful', detail: 'Product Deleted', life: 3000 });\r\n // }\r\n // });\r\n // }\r\n\r\n downloadSheetAsPdf() {\r\n this.cols = [\r\n // { field: 'farmerName', header: 'Farmers Name'},\r\n { field: 'accountHolderName', header: 'Account Holders Name' },\r\n { field: 'accountNumber', header: 'Account Number' },\r\n { field: 'bankName', header: 'Bank Name' },\r\n { field: 'ifscCode', header: 'IFSC Code' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.bankAccountList);\r\n doc.save('Bank Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n filterBank(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.bankList.length; i++) {\r\n const bank = this.bankList[i];\r\n if (bank.Bank_NAME.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(bank);\r\n }\r\n }\r\n\r\n this.filteredBankList = filtered;\r\n }\r\n\r\n saveProduct() {\r\n this.submitted = true;\r\n\r\n if (\r\n this.bankAccount.accountHolderName!.trim() &&\r\n this.bankAccount.accountNumber &&\r\n this.bankAccount.bankName &&\r\n this.bankAccount.ifscCode &&\r\n this.bankAccount.image\r\n ) {\r\n const data = {\r\n farmerID: this.farmerId,\r\n bankID: this.bankAccount.bankName.BANK_ID,\r\n ifcS_Code: this.bankAccount.ifscCode,\r\n acco_Number: this.bankAccount.accountNumber.toString(),\r\n accHoName: this.bankAccount.accountHolderName,\r\n scanCopy_Path: this.bankAccount.image,\r\n active: '1',\r\n user_ID: sessionStorage.getItem('abyUserID')\r\n ? sessionStorage.getItem('abyUserID')\r\n : sessionStorage.getItem('userID'),\r\n network_Id: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n delete_Bank_record: '0',\r\n };\r\n // this.productService.postBankDetails(data).subscribe(res => {\r\n\r\n // })\r\n // this.messageService.add({ severity: 'success', summary: 'Successful', detail: 'Bank Details Added', life: 3000 });\r\n\r\n let mobile = this.farmerMobNo;\r\n // this.loader.start();\r\n this.loading = true;\r\n this.productService\r\n .postBankDetails(data)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'Bank Details Inserted', '', new Date(), resp, data);\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Bank Details Added',\r\n });\r\n this.getBankList();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'Bank Details Inserted', '', new Date(), err, data);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Bank Details not saved.',\r\n });\r\n },\r\n });\r\n this.addBankDialog = false;\r\n this.bankAccount = {};\r\n }\r\n\r\n\r\n // this.bankAccountList = [...this.bankAccountList];\r\n // this.addBankDialog = false;\r\n // this.bankAccount = {};\r\n }\r\n\r\n findIndexById(id: string): number {\r\n let index = -1;\r\n for (let i = 0; i < this.bankAccountList.length; i++) {\r\n if (this.bankAccountList[i].id === id) {\r\n index = i;\r\n break;\r\n }\r\n }\r\n\r\n return index;\r\n }\r\n\r\n createId(): string {\r\n let id = '';\r\n var chars =\r\n 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\r\n for (var i = 0; i < 5; i++) {\r\n id += chars.charAt(Math.floor(Math.random() * chars.length));\r\n }\r\n return id;\r\n }\r\n\r\n exportExcel() {\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = this.bankAccountList.map((d: BankDetail) => {\r\n return {\r\n 'Account Holder Name': d.accountHolderName,\r\n 'Account Number': d.accountNumber,\r\n 'Bank Name': d.bankName,\r\n 'IFSC Code': d.ifscCode,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, 'bank_list');\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n this.loader.start();\r\n // this.loading = true;\r\n this.productService.uploadFile(data, this.farmerMobNo, formcontrol).subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n // this.loading = false;\r\n if (resp.statusCode == 200) {\r\n this.bankAccount.image = resp.data;\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n\r\n uploadElement.clear();\r\n }\r\n\r\n deleteProduct(bank: any) {\r\n let mobile = this.farmerMobNo;\r\n\r\n this.confirmationService.confirm({\r\n message:\r\n 'Are you sure you want to delete ' + bank.accountHolderName + '?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n this.bankAccountList = this.bankAccountList.filter(\r\n (val) => val.id !== bank.id\r\n );\r\n this.bankAccount = {};\r\n // this.messageService.add({ severity: 'success', summary: 'Successful', detail: 'Bank Deleted', life: 3000 });\r\n const data = {\r\n farmerID: bank.Farmer_ID,\r\n bankID: bank.Bank_ID,\r\n account_No: bank.Account_NO + '',\r\n user_ID: bank.User_ID,\r\n network_Id: bank.Network_Id,\r\n terminal_ID: bank.Terminal_Id,\r\n };\r\n // this.loader.start();\r\n this.loading = true;\r\n this.productService\r\n .deleteBankDetails(data)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Bank Details Deleted Successfully.',\r\n });\r\n this.activityRecordService.activityRecord(mobile, 'Bank Details Deleted', '', new Date(), resp, data);\r\n\r\n this.getBankList();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! ',\r\n });\r\n this.activityRecordService.activityRecord(mobile, 'Bank Details Deleted', '', new Date(), err, data);\r\n\r\n },\r\n });\r\n // this.bankAccountList = this.bankAccountList.filter(val => val.id !== bank.id);\r\n // this.bankAccount = {};\r\n // this.messageService.add({ severity: 'success', summary: 'Successful', detail: 'Product Deleted', life: 3000 });\r\n },\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n
{{'BANK_DETAILS'| translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MANAGE_BANK_ACCOUNTS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'ACCOUNT_HOLDERS_NAME'| translate}}\r\n \r\n \r\n \r\n {{'BANK_NAME'| translate}}\r\n \r\n \r\n \r\n {{'ACCOUNT_NO'| translate}}\r\n \r\n \r\n \r\n {{'IFSC_CODE'| translate}}\r\n \r\n \r\n \r\n {{'ACTIVE'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.accountHolderName}}\r\n {{product.bankName}}\r\n {{product.accountNumber}}\r\n {{product.ifscCode}}\r\n {{product.Active}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{bankAccountList ? bankAccountList.length : 0 }} {{'BANK_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n
\r\n \r\n \r\n {{'NAME_IS_REQUIRED'| translate}}.\r\n
\r\n
\r\n \r\n \r\n {{'NAME_IS_REQUIRED'| translate}}.\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
{{'FARMERS_PHOTO_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n","/// \r\nimport { Component, HostListener, OnInit } from '@angular/core';\r\nimport { ConfirmationService, MenuItem } from 'primeng/api';\r\nimport { crop_Datas, FarmerLandModel, SelectedCropModel } from '../../../models/farmer-land.model';\r\nimport { FarmerLandDetailService } from '../../../services/farmer-land-detail.service';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { first } from 'rxjs/internal/operators/first';\r\nimport { Message, MessageService } from 'primeng/api';\r\nimport { PrimeNGConfig } from 'primeng/api';\r\nimport { saveAs } from 'file-saver'\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { TreeNode } from 'primeng/api';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'farmer-land-detail',\r\n templateUrl: './farmer-land-detail.component.html',\r\n styleUrls: ['./farmer-land-detail.component.scss'],\r\n providers: [MessageService],\r\n})\r\nexport class FarmerLandDetailComponent implements OnInit {\r\n public farmerLandForm: FormGroup;\r\n public jamabandiLandForm: FormGroup;\r\n public jamabandiLandForm2: FormGroup;\r\n public consentForm: FormGroup;\r\n uploadedFiles: any[] = [];\r\n valRadio: boolean;\r\n valActive: any;\r\n productDialog: boolean;\r\n selectedVillage: any;\r\n selectedCropType: any;\r\n filteredVillage: any[];\r\n filteredCorpType: any[];\r\n lstFarmerLandModel: FarmerLandModel[];\r\n farmerLandModel: FarmerLandModel;\r\n selectedFarmerLand: FarmerLandModel[];\r\n submitted: boolean;\r\n statuses: any[];\r\n items: MenuItem[];\r\n selectedNodes1: any[] = [];\r\n nodes2: any[];\r\n selectedCorpModel: crop_Datas;\r\n selectedCorpModelList: any;\r\n editFLModel: FarmerLandModel;\r\n selectedCropNodes: any;\r\n blockSpace: RegExp = /^[^\\s,]([^,]*[^\\s,])?$/;\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n location: any;\r\n innerWidth: number;\r\n public loading: boolean = false;\r\n public loading1: boolean = false;\r\n cropTypeList: any[];\r\n cropBasedNames: any[];\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event) {\r\n this.innerWidth = window.innerWidth;\r\n }\r\n\r\n\r\n villageList = [];\r\n\r\n cropTypeItems = [\r\n { Name: 'Alabama', Code: '1' },\r\n { Name: 'Alaska', Code: '2' },\r\n { Name: 'Arizona', Code: '3' },\r\n ];\r\n farmerId: any;\r\n ipAddress: any = '000.000.000';\r\n\r\n public cropMergeList: any;\r\n public openJamabandiDialog: boolean = false;\r\n public submittedJambandi: boolean = false;\r\n public submittedJambandi2: boolean = false;\r\n public landOwnerDetails: any = [];\r\n public districtTehsilCode: any = [];\r\n public selectedLandOwnerDetails: any = [];\r\n public expandedRows: any = {};\r\n public expandedRowsLand: any = {};\r\n\r\n public showHiddenButton: boolean = false;\r\n public landDetailsfromJamabandi: any = [];\r\n\r\n public selectedLandArea: any = [];\r\n public addedLandDetails: any = [];\r\n\r\n public farmerMobNo: any;\r\n public maxLandAreaToAddValidation: any = 0;\r\n public maxLandAreaToAdd: any = 0;\r\n\r\n public isOwnerAlreadyAppLand: boolean = false;\r\n public fardPath: any = null;\r\n public landDetailedInfo: any = [];\r\n public selectedLandDetails: any;\r\n public finalLandSubmitClicked: boolean = false;\r\n\r\n public request1complete: boolean = false;\r\n public request2complete: boolean = false;\r\n\r\n constructor(\r\n private _personalDetalSer: FarmersDetailsService,\r\n private primengConfig: PrimeNGConfig,\r\n private service: MessageService,\r\n private _formBuilder: FormBuilder,\r\n private flService: FarmerLandDetailService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private productService: BankDetailService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private vendorService: VendorDashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n this.farmerMobNo = farmerconfData.get('farmerPh');\r\n\r\n this.getIP();\r\n this.getCorpType();\r\n this.innerWidth = window.innerWidth;\r\n this.items = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.lstFarmerLandModel, 'Farmer Land Detail');\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.lstFarmerLandModel, 'Farmer Land Detail');\r\n }\r\n },\r\n ];\r\n\r\n this.farmerLandForm = this._formBuilder.group({\r\n totalArea: ['', [Validators.required]],\r\n morabbaNumber: [, [Validators.required]],\r\n killaNumber: [, [Validators.required]],\r\n kanals: ['', Validators.compose([Validators.required, Validators.max(8)])],\r\n marlas: ['', Validators.compose([Validators.required, Validators.max(20)])],\r\n village: ['', [Validators.required]],\r\n latitude: ['', ''],\r\n longitude: ['', ''],\r\n cropType: ['', [Validators.required]],\r\n // crop: ['', [Validators.required]],\r\n // IsSubsidyAvailabe: ['', [Validators.required]],\r\n IsSubsidyAvailabe: [''],\r\n landdoc_Path: ['', [Validators.required]],\r\n leaseDoc_Path: ['',],\r\n });\r\n\r\n this.jamabandiLandForm = this._formBuilder.group({\r\n village: ['', [Validators.required]],\r\n khewatNo: [, [Validators.required]],\r\n });\r\n\r\n this.jamabandiLandForm2 = this._formBuilder.group({\r\n morabbaNumber: ['', [Validators.required]],\r\n killaNumber: [, [Validators.required]],\r\n totalKanals: [, [Validators.required]],\r\n totalMarlas: [, [Validators.required]],\r\n totalArea: [, [Validators.required]],\r\n kanals: ['', Validators.compose([Validators.required, Validators.max(8)])],\r\n marlas: ['', Validators.compose([Validators.required, Validators.max(20)])],\r\n totalAppliedArea: [0, [Validators.required, Validators.min(0), (control: AbstractControl) => Validators.max(this.maxLandAreaToAddValidation)(control)]],\r\n cropType: [, [Validators.required]],\r\n });\r\n\r\n this.consentForm = this._formBuilder.group({\r\n consent: [false, [Validators.required]]\r\n });\r\n // this.f.totalArea.disable();\r\n this.primengConfig.ripple = true;\r\n // this.loadData();\r\n this.getFarmerId();\r\n this.getVillageData();\r\n this.filteredCorpType = [...this.cropTypeItems]\r\n\r\n }\r\n\r\n getFarmerId() {\r\n let mobile = this.farmerMobNo;\r\n // this.loader.start();\r\n this.loading = true;\r\n this.productService.getFarmerIdByMobileNo(mobile).subscribe(resp => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if (resp.statusCode === 200) {\r\n this.activityRecordService.activityRecord(mobile, 'Land Details', '', new Date(), 'Success');\r\n\r\n let far = JSON.parse(resp.data);\r\n if (far.length > 0) {\r\n this.farmerId = far[0].Farmer_ID;\r\n\r\n this.loadData()\r\n }\r\n }\r\n else {\r\n this.activityRecordService.activityRecord(mobile, 'Land Details', '', new Date(), 'Invalid');\r\n }\r\n }, err => {\r\n // this.loader.close();\r\n this.loading = false;\r\n })\r\n }\r\n\r\n loadData() {\r\n // if (farmerData) {\r\n // this.loader.start();\r\n this.loading1 = true;\r\n this.flService.Get(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n if (data.Table.length > 0) {\r\n this.lstFarmerLandModel = data.Table;\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading1 = false;\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Farmer Land Details not loaded.' });\r\n\r\n }\r\n });\r\n // }\r\n }\r\n\r\n get f() {\r\n return this.farmerLandForm.controls;\r\n }\r\n\r\n get f1() {\r\n return this.jamabandiLandForm.controls;\r\n }\r\n\r\n get f2() {\r\n return this.jamabandiLandForm2.controls;\r\n }\r\n\r\n get consentController(){\r\n return this.consentForm.controls;\r\n }\r\n\r\n openNew() {\r\n this.editFLModel = new FarmerLandModel();\r\n\r\n this.f.totalArea.reset();\r\n this.f.morabbaNumber.reset();\r\n this.f.killaNumber.reset();\r\n this.f.kanals.reset();\r\n\r\n this.f.marlas.reset();\r\n this.f.village.reset();\r\n this.f.latitude.reset();\r\n this.f.longitude.reset();\r\n this.f.cropType.reset();\r\n\r\n this.submitted = false;\r\n this.productDialog = true;\r\n }\r\n\r\n clearJamabandiPortalData() {\r\n this.farmerLandForm.reset();\r\n this.jamabandiLandForm.reset();\r\n this.jamabandiLandForm2.reset();\r\n this.consentForm.reset();\r\n this.selectedVillage = null;\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n this.districtTehsilCode = [];\r\n this.selectedLandOwnerDetails = [];\r\n this.addedLandDetails = [];\r\n this.onClickClearDetail();\r\n this.selectedNodes1 = [];\r\n this.fardPath = null;\r\n }\r\n\r\n onClickGetOwnerDetails() {\r\n this.submittedJambandi = true;\r\n\r\n if (this.jamabandiLandForm.invalid) {\r\n return;\r\n }\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please complete the farmer details first.' });\r\n return;\r\n }\r\n\r\n let mobile = this.farmerMobNo;\r\n\r\n let val = this.jamabandiLandForm.value;\r\n let reqBody = {\r\n khewat: encodeURIComponent(val?.khewatNo),\r\n villageCode: val?.village?.Code,\r\n }\r\n\r\n // this.getLanOwnerDetails();\r\n\r\n // this.getLandOwnerDetails(reqBody);\r\n this.getDistrictTehsilCode(reqBody);\r\n }\r\n\r\n onClickAddLand(){\r\n this.submittedJambandi2 = true;\r\n\r\n let landDetails = this.jamabandiLandForm.value;\r\n let row = this.jamabandiLandForm2.value;\r\n\r\n \r\n if (this.jamabandiLandForm.invalid) {\r\n return;\r\n }\r\n\r\n if (this.jamabandiLandForm2.invalid) {\r\n return;\r\n }\r\n\r\n if(row.totalAppliedArea > row.totalArea){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: `Total Appied Area(${row.totalAppliedArea}) can not be greater than the Area(${row.totalArea})`,\r\n detail: 'Error in Applied Area',\r\n });\r\n return;\r\n }\r\n\r\n if (row.cropType?.length > 4) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Crop Limit Exceeds',\r\n detail: 'Maximun 4 crop is allowed',\r\n });\r\n return;\r\n }\r\n\r\n const isExist = this.addedLandDetails.some(val => val?.killano == row?.killaNumber && val?.morbno == row?.morabbaNumber)\r\n\r\n if(isExist){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Duplicate Value',\r\n detail: 'Land already Added',\r\n });\r\n return;\r\n }\r\n // let isDataExist = false;\r\n // if(this.addedLandDetails.length > 0) {\r\n // isDataExist = this.addedLandDetails.some(data => {\r\n // data.morbno == row.morabbaNumber && data.killano == row.killaNumber\r\n // })\r\n // }\r\n // if(isDataExist){\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Record Already Exist',\r\n // detail: 'Duplicate Record found for entered Morabba and Killa number',\r\n // });\r\n // return;\r\n // }\r\n \r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n const farmerData = farmerconfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please complete the farmer details first.' });\r\n return;\r\n }\r\n this.getSelectedCorpType();\r\n\r\n \r\n // let totalArea = this.selectedLandOwnerDetails[0]?.owner_hissa.toFixed(4);\r\n // let kanal = this.selectedLandOwnerDetails[0]?.valKanal;\r\n // let marla = this.selectedLandOwnerDetails[0]?.valMarla;\r\n\r\n\r\n this.addedLandDetails.push({\r\n \"totalArea\": row?.totalArea,\r\n \"kanal\": row?.totalKanals,\r\n \"marla\": row?.totalMarlas,\r\n\r\n \"appliedKanal\": row?.kanals,\r\n \"appliedMarla\": row?.marlas ? row?.marlas : 0,\r\n \"appliedArea\": row?.totalAppliedArea,\r\n \r\n \r\n \"morbno\": row?.morabbaNumber,\r\n \"killano\": row?.killaNumber,\r\n \"village_Code\": landDetails?.village?.Code,\r\n \"crop_Datas\": this.selectedCorpModelList,\r\n \"cropName\": [...new Set(row?.cropType.map(item => item.label))].join(\", \")\r\n })\r\n\r\n\r\n setTimeout(()=>{\r\n this.calLandAreaForValidation();\r\n this.submittedJambandi2 = false;\r\n }, 100) ;\r\n\r\n this.jamabandiLandForm2.reset();\r\n this.landDetailsfromJamabandi = [];\r\n this.selectedNodes1 = [];\r\n }\r\n\r\n calLandAreaForValidation(){\r\n this.selectedLandDetails = [];\r\n let appliedLandArea = 0;\r\n if(this.addedLandDetails.length > 0) {\r\n this.addedLandDetails.forEach(val => {\r\n appliedLandArea = appliedLandArea + parseFloat(val?.appliedArea);\r\n })\r\n }\r\n\r\n this.maxLandAreaToAddValidation = this.maxLandAreaToAdd - appliedLandArea;\r\n }\r\n\r\n onClickGetKhewat() {\r\n this.submittedJambandi2 = true;\r\n\r\n let val = this.jamabandiLandForm.value;\r\n let val2 = this.jamabandiLandForm2.value;\r\n\r\n if (this.jamabandiLandForm.invalid) {\r\n return;\r\n }\r\n\r\n if (this.jamabandiLandForm2.invalid) {\r\n return;\r\n }\r\n\r\n if (val2.cropType?.length > 4) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Crop Limit Exceeds',\r\n detail: 'Maximun 4 crop is allowed',\r\n });\r\n return;\r\n }\r\n\r\n // if (this.selectedCorpModelList > 4) {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Crop Limit Exceeds',\r\n // detail: 'Maximun 4 crop is allowed',\r\n // });\r\n // return;\r\n // }\r\n\r\n let districtTehsil = this.districtTehsilCode[0];\r\n\r\n let reqBody = {\r\n districtCode: districtTehsil?.R_Dis_Code,\r\n tehsilCode: districtTehsil?.R_Teh_Code,\r\n nvCode: districtTehsil?.R_Rev_Code,\r\n must: encodeURIComponent(val2?.morabbaNumber),\r\n khasra: encodeURIComponent(val2?.killaNumber),\r\n format: \"json\"\r\n }\r\n\r\n // this.getLandDetails();\r\n this.getLandAreaDetails(reqBody);\r\n }\r\n\r\n getLandAreaDetails(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getLandGetAreaByKhasra(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n let val = JSON.parse(resp.msg);\r\n if (val.length > 0) {\r\n this.landDetailsfromJamabandi = val;\r\n } else {\r\n this.landDetailsfromJamabandi = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found corresponding to entered Mobrabba and killa no',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.landDetailsfromJamabandi = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n // getLandDetails() {\r\n // this.landDetailsfromJamabandi = [\r\n // {\r\n // \"area\": \"3 Kanal 4 Marla\"\r\n // }\r\n // ]\r\n // }\r\n\r\n onSelectLandArea() {\r\n\r\n }\r\n\r\n onClickAddDetail() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let farmerData = farmerconfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please complete the farmer details first.' });\r\n return;\r\n }\r\n this.getSelectedCorpType();\r\n\r\n let val = this.jamabandiLandForm2.value;\r\n let val1 = this.jamabandiLandForm.value;\r\n\r\n let landSize = this.landDetailsfromJamabandi[0].area;\r\n\r\n let kanal: number = parseInt(landSize.split(\"Kanal\")[0].trim(), 10); // Extracts the Kanal value (3)\r\n let marla: number = parseInt(landSize.split(\"Kanal\")[1].split(\"Marla\")[0].trim(), 10); // Extracts the Marla value (4)\r\n\r\n // let area =\r\n\r\n let tlk: any = 0.00;// sample kanal variable\r\n let tlm: any = 0.00;// sample marlas variable\r\n tlk = kanal * 0.125;\r\n tlm = marla * 0.006249999998;\r\n let tl = tlk + tlm;\r\n const totalArea = tl.toFixed(4)\r\n\r\n this.f.totalArea.setValue(Number(totalArea));\r\n\r\n // this.addedLandDetails.push({\r\n // morabbaNo: val.morabbaNumber,\r\n // killaNo: val.killaNumber,\r\n // kanal: kanal,\r\n // marla: marla,\r\n // area: totalArea,\r\n // cropName: [...new Set(val.cropType.map(item => item.label))].join(\", \")\r\n // })\r\n\r\n this.addedLandDetails.push({\r\n \"total_Area\": totalArea,\r\n \"morbno\": val.morabbaNumber,\r\n \"killano\": val.killaNumber,\r\n \"kanal\": kanal,\r\n \"marla\": marla,\r\n \"village_Code\": val1?.village?.Code,\r\n \"crop_Datas\": this.selectedCorpModelList,\r\n \"cropName\": [...new Set(val.cropType.map(item => item.label))].join(\", \")\r\n })\r\n\r\n this.jamabandiLandForm2.reset();\r\n this.landDetailsfromJamabandi = [];\r\n this.selectedNodes1 = [];\r\n }\r\n\r\n deleteLand(val, index) {\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n message: `Do you want to remove land record of Morabba No: ${val?.morbno} and Killa No: ${val?.killano}?`,\r\n header: 'Delete Confirmation',\r\n icon: 'pi pi-info-circle',\r\n acceptButtonStyleClass: 'p-button-danger p-button-text',\r\n rejectButtonStyleClass: 'p-button-text p-button-text',\r\n acceptIcon: 'none',\r\n rejectIcon: 'none',\r\n\r\n accept: () => {\r\n this.addedLandDetails.splice(index, 1);\r\n this.calLandAreaForValidation();\r\n this.jamabandiLandForm2.reset();\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n },\r\n });\r\n }\r\n\r\n onClickClearDetail() {\r\n this.landDetailsfromJamabandi = [];\r\n this.jamabandiLandForm2.reset();\r\n this.selectedLandArea = [];\r\n }\r\n\r\n toggleRow(rowData: any) {\r\n if (this.expandedRows[rowData.landDetails]) {\r\n delete this.expandedRows[rowData.landDetails];\r\n } else {\r\n this.expandedRows[rowData.landDetails] = true;\r\n }\r\n }\r\n\r\n onRowSelect(val) {\r\n let farmerDataArr = val.data\r\n this.selectedLandOwnerDetails = [farmerDataArr];\r\n\r\n this.jamabandiLandForm2.reset();\r\n this.landDetailsfromJamabandi = [];\r\n this.addedLandDetails = [];\r\n if(farmerDataArr?.TotalArea > 0){\r\n this.maxLandAreaToAddValidation = farmerDataArr?.owner_hissa - farmerDataArr?.TotalArea;\r\n this.maxLandAreaToAdd = farmerDataArr?.owner_hissa - farmerDataArr?.TotalArea;\r\n }else{\r\n this.maxLandAreaToAddValidation = farmerDataArr?.owner_hissa;\r\n this.maxLandAreaToAdd = farmerDataArr?.owner_hissa;\r\n }\r\n\r\n // this.calValidationForEstimation(this.selectedFarmerForEstimation);\r\n // this.calValidationForEstimation(this.selectedFarmerForEstimation);\r\n // if(!this.chunkIdToGetData){\r\n // this.estimationTableData = [];\r\n // }\r\n }\r\n\r\n onRowUnselect(val) {\r\n this.selectedLandOwnerDetails = [];\r\n this.maxLandAreaToAddValidation = 0;\r\n // this.calValidationForEstimation(this.selectedFarmerForEstimation);\r\n // this.estimationTableData = [];\r\n }\r\n\r\n getDistrictTehsilCode(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getGeoDetailsByVillCode(reqBody?.villageCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n if (resp.length > 0) {\r\n this.districtTehsilCode = resp;\r\n let reqBody1 = {\r\n districtCode: resp[0]?.R_Dis_Code,\r\n tehsilCode: resp[0]?.R_Teh_Code,\r\n nvCode: resp[0]?.R_Rev_Code,\r\n khewat: reqBody?.khewat,\r\n format: \"json\",\r\n farmerId: this.farmerId\r\n }\r\n this.getLandOwnerDetails(reqBody1);\r\n } else {\r\n this.districtTehsilCode = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.districtTehsilCode = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getLandOwnerDetails(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getLandOwnersDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n // this.loader.close();\r\n\r\n if (resp?.length > 0) {\r\n this.showHiddenButton = true;\r\n this.landOwnerDetails = resp.map(val => ({\r\n ...val,\r\n uiqueId: `${val?.Owner_Name}-${val?.Bhag}`\r\n }));\r\n\r\n this.isOwnerAlreadyAppLand = resp?.some(val => val?.TotalAreaFarmer > 0);\r\n\r\n let reqBody1 = {\r\n \"districtCode\": reqBody.districtCode,\r\n \"tehsilCode\": reqBody.tehsilCode,\r\n \"nvCode\": reqBody?.nvCode,\r\n \"khewat\": reqBody?.khewat,\r\n \"format\": \"json\"\r\n }\r\n this.getLandGetAreaByKhewat(reqBody)\r\n this.getKhasraAreaByKhewatNVCode(reqBody1)\r\n } else {\r\n this.loader.close();\r\n this.showHiddenButton = false;\r\n // this.landOwnerDetails = `Someting went wrong. Please try again. ${resp}`;\r\n this.landOwnerDetails = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n // this.landOwnerDetails = `Someting went wrong. Please try again. ${err}`;\r\n this.landOwnerDetails = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n\r\n getKhasraAreaByKhewatNVCode(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getKhasraAreaKhewatByNVCODE2Khewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request1complete){\r\n this.loader.close();\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n this.landDetailedInfo = JSON.parse(resp?.msg); \r\n } else {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landDetailedInfo = [];\r\n if(this.request1complete){\r\n this.loader.close();\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request2complete = true;\r\n }\r\n });\r\n }\r\n\r\n getLandGetAreaByKhewat(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getLandGetAreaByKhewat(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n if(this.request2complete){\r\n this.loader.close();\r\n }\r\n\r\n if (resp?.status == 200 && resp?.msg != 'Someting went wrong') {\r\n this.showHiddenButton = true;\r\n \r\n const khewatArea = JSON.parse(resp?.msg)[0]?.area;\r\n const regex = /(\\d+)\\s*Kanal\\s*(\\d+)\\s*Marla/;\r\n const values = khewatArea.match(regex);\r\n\r\n const karnal = values[0] ? parseInt(values[1], 10) : 0;\r\n const marla = values[2] ? parseInt(values[2], 10) : 0;\r\n\r\n\r\n this.landOwnerDetails = this.landOwnerDetails.map(val => ({\r\n ...val,\r\n khewat_area: khewatArea,\r\n valKanal: karnal,\r\n valMarla: marla,\r\n totalArea_InAcres: ((karnal * 20) + marla)/20*0.125,\r\n owner_hissa: ((karnal * 20) + marla)*((val?.Bhag).split('/').map(Number)[0]/(val?.Bhag).split('/').map(Number)[1])/20*0.125,\r\n }));\r\n\r\n } else {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data not found. ${resp?.msg}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.showHiddenButton = false;\r\n this.landOwnerDetails = [];\r\n if(this.request1complete){\r\n this.loader.close();\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n complete: () => {\r\n this.request1complete = true;\r\n }\r\n });\r\n }\r\n\r\n\r\n onSubmit() {\r\n this.submitted = true;\r\n\r\n // stop here if form is invalid\r\n if (this.farmerLandForm.invalid) {\r\n return;\r\n }\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let farmerData = farmerconfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please complete the farmer details first.' });\r\n return;\r\n }\r\n this.getSelectedCorpType();\r\n this.farmerLandModel = new FarmerLandModel();\r\n this.farmerLandModel.land_ID = 0;\r\n this.farmerLandModel.farmerID = this.farmerId;\r\n this.farmerLandModel.total_Area = this.f.totalArea.value;\r\n this.farmerLandModel.morbno = this.f.morabbaNumber.value;\r\n this.farmerLandModel.killano = this.f.killaNumber.value;\r\n this.farmerLandModel.kanal = this.f.kanals.value;\r\n this.farmerLandModel.marla = this.f.marlas.value;\r\n this.farmerLandModel.village_Code = this.f.village.value.Code;\r\n this.farmerLandModel.lat = this.f.latitude.value ? this.f.latitude.value : 0;\r\n this.farmerLandModel.long = this.f.longitude.value ? this.f.longitude.value : 0;\r\n // this.farmerLandModel.is_Available_Lease = this.valRadio;\r\n this.farmerLandModel.is_Available_Lease = false;\r\n this.farmerLandModel.landdoc_Path = this.f.landdoc_Path.value;\r\n this.farmerLandModel.lease_Agrement_Doc = this.valRadio ? this.f.leaseDoc_Path.value : '';\r\n this.farmerLandModel.user_ID = farmerData?.['Farmer_ID'];\r\n this.farmerLandModel.network_ID = this.ipAddress;\r\n this.farmerLandModel.terminal_ID = this.ipAddress;\r\n this.farmerLandModel.active = \"1\";\r\n this.farmerLandModel.crop_Datas = this.selectedCorpModelList;\r\n\r\n let mobile = this.farmerMobNo;\r\n\r\n if (this.selectedCorpModelList > 4) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Crop Limit Exceeds',\r\n detail: 'Maximun 4 crop is allowed',\r\n });\r\n return;\r\n }\r\n\r\n if (this.editFLModel.Land_ID > 0) {\r\n this.farmerLandModel.land_ID = this.editFLModel.Land_ID;\r\n this.loader.start();\r\n // this.loading = true;\r\n this.flService.UpdateLandDetails(this.farmerLandModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.loading = false;\r\n this.loadData();\r\n this.activityRecordService.activityRecord(mobile, 'Land Details Updated', '', new Date(), data, this.farmerLandModel);\r\n if (data == 'Success') {\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n }\r\n else {\r\n this.service.add({ severity: 'info', summary: 'Info Message', detail: JSON.stringify(data) });\r\n }\r\n this.productDialog = false;\r\n this.farmerLandForm.reset()\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'Land Details Updated', '', new Date(), err, this.farmerLandModel);\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n else {\r\n this.loader.start();\r\n // this.loading = true;\r\n this.flService.InsertLandDetails(this.farmerLandModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.loading = false;\r\n this.loadData();\r\n this.activityRecordService.activityRecord(mobile, 'Land Details Inserted', '', new Date(), data, this.farmerLandModel);\r\n if (data == 'Success') {\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n }\r\n else {\r\n this.service.add({ severity: 'info', summary: 'Info Message', detail: JSON.stringify(data) });\r\n }\r\n this.productDialog = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'Land Details Inserted', '', new Date(), err, this.farmerLandModel);\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n getSelectedCorpType() {\r\n this.selectedCorpModel = new crop_Datas();\r\n this.selectedCorpModelList = [];\r\n let selectedLabels = [];\r\n\r\n this.selectedCorpModelList = this.selectedNodes1.map(val => ({\r\n type_of_crop_ID: val.parentData,\r\n crop_ID: val.data\r\n }))\r\n\r\n // for (let result of this.selectedNodes1) {\r\n // if (result.parent) {\r\n // if(selectedLabels.includes(result.label)){\r\n // break;\r\n // }\r\n // let body = {\r\n // crop_ID : result.data,\r\n // type_of_crop_ID: result.parent?.data\r\n // }\r\n // this.selectedCorpModelList.push(body);\r\n // selectedLabels.push(result.label);\r\n // }else if(result.children){\r\n // result.children.forEach(child => {\r\n // if(selectedLabels.includes(child.label)){\r\n // return;\r\n // }\r\n // let body = {\r\n // crop_ID : child.data,\r\n // type_of_crop_ID: (child.parent?.data) ? child.parent?.data : result.data\r\n // }\r\n\r\n // this.selectedCorpModelList.push(body);\r\n // selectedLabels.push(child.label);\r\n // })\r\n // }\r\n // }\r\n }\r\n\r\n hideDialog() {\r\n this.selectedNodes1 = []\r\n this.selectedVillage = {}\r\n this.selectedNodes1 = [];\r\n this.productDialog = false;\r\n this.submitted = false;\r\n this.farmerLandForm.reset()\r\n this.cropBasedNames = [];\r\n }\r\n\r\n public setCurrentPosition() {\r\n if ('geolocation' in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.showPosition(position);\r\n });\r\n }\r\n }\r\n\r\n\r\n showPosition(position) {\r\n let geocoder = new google.maps.Geocoder;\r\n let latlng = { lat: position.coords.latitude, lng: position.coords.longitude };\r\n this.f.latitude.setValue(position.coords.latitude);\r\n this.f.longitude.setValue(position.coords.longitude);\r\n }\r\n\r\n getCorpType() {\r\n this.flService.GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.nodes2 = files\r\n this.cropTypeList = files;\r\n\r\n let arrayCrop = [];\r\n let cropMerge = files.map((parent) => {\r\n arrayCrop.push(\r\n parent['children'].map((child) => ({\r\n ...child,\r\n parentData: parent.data,\r\n parentLabel: parent.label\r\n }))\r\n );\r\n });\r\n\r\n this.cropMergeList = [].concat(...arrayCrop);\r\n },\r\n error: () => {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Corp Type Details not loaded.' });\r\n\r\n }\r\n });\r\n }\r\n\r\n editProduct(bank: any) {\r\n this.editFLModel = new FarmerLandModel();\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let farmerData = farmerconfData.get('farmerDetails');\r\n\r\n let flModel = { ...bank };\r\n this.f.totalArea.setValue(flModel.Total_Area);\r\n this.f.morabbaNumber.setValue(flModel.Morabba_No);\r\n this.f.killaNumber.setValue(flModel.Killa_No);\r\n this.f.kanals.setValue(flModel.Kanals);\r\n\r\n this.f.marlas.setValue(flModel.Marlas);\r\n\r\n this.f.latitude.setValue(flModel.Lat);\r\n this.f.longitude.setValue(flModel.Long);\r\n this.valRadio = flModel.IS_Avalibe_for_Lease;\r\n this.f.cropType.setValue(flModel.Crop_Type_ID);\r\n this.f.landdoc_Path.setValue(flModel.Land_Doc);\r\n this.editFLModel = flModel;\r\n this.productDialog = true;\r\n\r\n let village = this.villageList.filter(val => val.Code === flModel.Village_Code)[0]\r\n this.f.village.setValue(village.Name);\r\n this.selectedVillage = village;\r\n if (parseInt(this.f.kanals.value) >= 8) {\r\n this.f.marlas.disable();\r\n }\r\n }\r\n\r\n filterCorpType(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.cropTypeItems.length; i++) {\r\n const corpType = this.cropTypeItems[i];\r\n if (corpType.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(corpType);\r\n }\r\n }\r\n\r\n this.filteredCorpType = filtered;\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n deleteProduct(bank: any) {\r\n let mobile = this.farmerMobNo;\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n const userID = farmerconfData.get('userID') ? farmerconfData.get('userID') : '';\r\n\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n this.farmerLandModel = new FarmerLandModel();\r\n this.farmerLandModel.farmerID = this.farmerId;\r\n this.farmerLandModel.landID = bank.Land_ID;\r\n this.farmerLandModel.user_ID = sessionStorage.getItem('abyUserID') ? sessionStorage.getItem('abyUserID') : userID as string;\r\n this.farmerLandModel.network_ID = this.ipAddress;\r\n this.farmerLandModel.terminal_ID = this.ipAddress;\r\n // this.loader.start();\r\n this.loading = true;\r\n this.flService.DeleteLandDetails(this.farmerLandModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.loadData();\r\n if (data == \"Deleted Successfully!\") {\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: JSON.stringify(data) });\r\n }\r\n else {\r\n this.service.add({ severity: 'info', summary: 'INfo Message', detail: JSON.stringify(data) });\r\n }\r\n\r\n this.activityRecordService.activityRecord(mobile, 'Land Details Delete', '', new Date(), data, this.farmerLandModel);\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(mobile, 'Land Details Delete', '', new Date(), err, this.farmerLandModel);\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n onKanalsChange() {\r\n let tlk: any = 0.00;// sample kanal variable\r\n let tlm: any = 0.00;// sample marlas variable\r\n this.f2.marlas.setValue(0);\r\n if (this.f2.kanals.value) {\r\n if (parseInt(this.f2.kanals.value) >= 8) {\r\n this.f2.marlas.setValue(0);\r\n this.f2.marlas.disable();\r\n // tlm = 1;\r\n }\r\n else {\r\n this.f2.marlas.enable();\r\n }\r\n tlk = parseInt(this.f2.kanals.value) * 0.125;\r\n }\r\n if (this.f2.marlas.value) {\r\n tlm = parseInt(this.f2.marlas.value) * 0.006249999998;\r\n }\r\n\r\n let tl = tlk + tlm;\r\n const totalArea = tl.toFixed(4)\r\n this.f2.totalAppliedArea.setValue(Number(totalArea));\r\n }\r\n\r\n onMarlasChange() {\r\n let tlk: any = 0.00;\r\n let tlm: any = 0.00;\r\n if (this.f2.kanals.value != undefined || this.f2.kanals.value != '') {\r\n tlk = (this.f2.kanals.value ? parseInt(this.f2.kanals.value) : 0) * 0.125;\r\n }\r\n if (this.f2.marlas.value != undefined || this.f2.marlas.value != '') {\r\n tlm = (this.f2.marlas.value ? parseInt(this.f2.marlas.value) : 0) * 0.006249999998;\r\n }\r\n // if (this.f.marlas.value > 19){\r\n // this.f.marlas.setValue()\r\n // }\r\n\r\n let tl = tlk + tlm;\r\n this.f2.totalAppliedArea.setValue(parseFloat(tl).toFixed(2));\r\n }\r\n\r\n getVillageData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'Land Id': d.Land_ID,\r\n 'Owner Name': d.OwnerName,\r\n 'Khewat': d.Khewat,\r\n 'Bhag': d.Bhag,\r\n 'Total Area': d.Total_Area,\r\n 'Morabba No': d.Morabba_No,\r\n 'Killa No': d.Killa_No,\r\n 'Kanals': d.Kanals,\r\n \"Marlas\": d.Marlas,\r\n \"Year\": d.Year,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Land_ID', header: 'Land ID' },\r\n { field: 'OwnerName', header: 'Owner Name' },\r\n { field: 'Khewat', header: 'Khewat' },\r\n { field: 'Bhag', header: 'Bhag' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'Morabba_No', header: 'Morabba Number' },\r\n { field: 'Killa_No', header: 'Killa Number' },\r\n { field: 'Kanals', header: 'Kanals' },\r\n { field: 'Marlas', header: 'Marlas' },\r\n { field: 'Year', header: 'Year' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n onUploadFard(event, formcontrol, uploadElement) {\r\n this.loader.start();\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n this._personalDetalSer.uploadFile(data, this.farmerMobNo, formcontrol).subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n this.fardPath = resp.data;\r\n // this.farmerLandForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'File Not Uploaded. Please try again.',\r\n });\r\n }\r\n }, err => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: `File Not Uploaded. ${err}.`,\r\n });\r\n this.loader.close();\r\n })\r\n uploadElement.clear();\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n onCropSelect(val) {\r\n if (val.value.length > 4) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Crop Limit Exceeds',\r\n detail: 'Maximun 4 crop is allowed',\r\n });\r\n }\r\n }\r\n\r\n onClickJamabandi() {\r\n this.openJamabandiDialog = true;\r\n }\r\n\r\n hideDialogJamaBandi() {\r\n this.openJamabandiDialog = false;\r\n this.clearJamabandiPortalData();\r\n }\r\n\r\n onFinalSubmitClick() {\r\n this.finalLandSubmitClicked = true;\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n const farmerData = farmerconfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please complete the farmer details first.' });\r\n return;\r\n }\r\n\r\n if (this.consentForm.value.consent != true) {\r\n this.service.add({ severity: 'info', summary: 'Info Message', detail: 'Please click on consent checkbox.' });\r\n return;\r\n }\r\n\r\n // if (this.fardPath == null || this.fardPath == '') {\r\n // this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please upload fard document.' });\r\n // return;\r\n // }\r\n\r\n let reqBody = this.addedLandDetails.map((val) => ({\r\n \"total_Area\": val?.appliedArea,\r\n \"morbno\": val?.morbno,\r\n \"killano\": val?.killano,\r\n \"TotalkanalinKhasra\": val?.kanal,\r\n \"kanal\": val?.appliedKanal,\r\n \"TotalmarlainKhasra\": val?.marla,\r\n \"marla\": val?.appliedMarla,\r\n \"village_Code\": val?.village_Code,\r\n \"crop_Datas\": val?.crop_Datas,\r\n \"land_ID\": 0,\r\n \"farmerID\": this.farmerId,\r\n \"is_Available_Lease\": false,\r\n \"landdoc_Path\": this.fardPath ? this.fardPath : '',\r\n \"active\": \"1\",\r\n \"lat\": 0,\r\n \"long\": 0,\r\n \"user_ID\": farmerData?.['Farmer_ID'],\r\n \"lease_Agrement_Doc\": \"\",\r\n \"network_ID\": this.ipAddress,\r\n \"terminal_ID\": this.ipAddress,\r\n \"ownerName\": this.selectedLandOwnerDetails[0]?.Owner_Name,\r\n \"bhag\": this.selectedLandOwnerDetails[0]?.Bhag,\r\n \"khewat\": this.selectedLandOwnerDetails[0]?.Khewat,\r\n \"year\": this.selectedLandOwnerDetails[0]?.Year,\r\n \"khewatArea\": this.selectedLandOwnerDetails[0]?.khewat_area,\r\n \"ownerHissa\": this.selectedLandOwnerDetails[0]?.owner_hissa\r\n }));\r\n\r\n this.submitJamabandiLandData(reqBody);\r\n }\r\n\r\n submitJamabandiLandData(reqBody) {\r\n let mobile = this.farmerMobNo;\r\n\r\n\r\n this.loader.start();\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.flService.insertJamabandi(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n \r\n this.activityRecordService.activityRecord(mobile, 'Land Details(JamaBandi) Inserted', '', new Date(), data, JSON.stringify(reqBody));\r\n if (data == 'All entries inserted successfully!') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: JSON.stringify(data),\r\n });\r\n this.productDialog = false;\r\n this.loadData();\r\n this.hideDialogJamaBandi();\r\n }\r\n else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: JSON.stringify(data),\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(mobile, 'Land Details(JamaBandi) Inserted', '', new Date(), err, JSON.stringify(reqBody));\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: JSON.stringify(err),\r\n });\r\n }\r\n });\r\n }\r\n\r\n onRowSelectLand(val){\r\n this.selectedLandDetails = val.data;\r\n\r\n this.jamabandiLandForm2.reset();\r\n this.consentForm.reset();\r\n this.f2.morabbaNumber.setValue(val.data.must);\r\n this.f2.killaNumber.setValue(val.data.killa);\r\n this.f2.totalKanals.setValue(val.data.knl);\r\n this.f2.totalMarlas.setValue(val.data.mrl);\r\n\r\n let tlk: any = 0.00;\r\n let tlm: any = 0.00;\r\n if (this.f2.totalKanals.value) {\r\n tlk = parseInt(this.f2.totalKanals.value) * 0.125;\r\n }\r\n if (this.f2.totalMarlas.value) {\r\n tlm = parseInt(this.f2.totalMarlas.value) * 0.006249999998;\r\n }\r\n let tl = tlk + tlm;\r\n const totalArea = tl.toFixed(4)\r\n this.f2.totalArea.setValue(Number(totalArea));\r\n }\r\n\r\n onRowUnselectLand(val){\r\n this.jamabandiLandForm2.reset();\r\n this.consentForm.reset();\r\n this.selectedLandDetails = [];\r\n }\r\n\r\n toggleRowLand(rowData: any) {\r\n // if (this.expandedRowsLand[rowData.landDetails]) {\r\n // delete this.expandedRowsLand[rowData.landDetails];\r\n // } else {\r\n // this.expandedRowsLand[rowData.landDetails] = true;\r\n // }\r\n }\r\n\r\n onClickResetLandDetails(){\r\n this.jamabandiLandForm2.reset();\r\n this.consentForm.reset();\r\n this.selectedLandDetails = [];\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n
\r\n
{{'MANAGE_LAND_DETAILS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'MODE'| translate}}\r\n {{'LAND_ID'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'KHEWAT_AREA'| translate}}\r\n {{'OWNER_NAME'| translate}}\r\n {{'OWNER_HISSA_IN_ACRES'| translate}}\r\n\r\n {{'KHEWAT'| translate}}\r\n {{'BHAG'| translate}}\r\n\r\n {{'MORABBA_NUMBER'| translate}}\r\n {{'KILLA_NUMBER'| translate}}\r\n {{'TOTAL_AREA'| translate}}\r\n {{'YEAR'| translate}}\r\n {{ 'ACTION' | translate }}\r\n \r\n \r\n \r\n \r\n \r\n {{product?.Mode}}\r\n {{product.Land_ID}}\r\n {{product.VillageName}}\r\n {{product.KhewatArea}}\r\n {{product?.OwnerName}}\r\n {{product?.OwnerHissa}}\r\n {{product?.Khewat}}\r\n {{product?.Bhag}}\r\n {{product.Morabba_No}}\r\n {{product.Killa_No}}\r\n {{product.Total_Area}}\r\n \r\n {{product.Year}}\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{lstFarmerLandModel ? lstFarmerLandModel.length : 0 }}\r\n {{'LAND_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MORABBA_NUMBER_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'KILLA_NUMBER_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'KANNALS_IS_REQUIRED'| translate}}
\r\n
{{'KANAL_CANNOT_BE_GREATER'| translate}}.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MARLAS_IS_REQUIRED'| translate}}
\r\n
{{'MARLAS_SHOULD_NOT_BE_GREATER'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n\r\n
4\" class=\"invalid-feedback\">\r\n
{{'MAXIMUM_4_CROP_IS_ALLOWED_YOU_SELECTED'| translate}} {{ selectedNodes1.length }}
\r\n
\r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'LATITUDE_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LONGITUDE_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'| translate}}

\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'KHEWAT_NUMBER_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
0\">\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n

{{\r\n 'Fetched Land Owner Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'OWNER_NAME'| translate}}\r\n {{'BHAG'| translate}}\r\n {{'KHEWAT_AREA'| translate}}\r\n {{'OWNER_HISSA_IN_ACRES'| translate}}\r\n {{'TOTAL_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'FARMER_APPLIED_AREA_IN_ACRES'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.Khewat}}\r\n {{product?.Owner_Name}}\r\n {{product?.Bhag}}\r\n {{product?.khewat_area}}\r\n {{product?.owner_hissa | number:'0.3-3'}}\r\n {{product?.TotalArea | number:'0.3-3'}}\r\n {{product?.TotalAreaFarmer | number:'0.3-3'}}\r\n {{product?.Year}}\r\n \r\n \r\n
\r\n\r\n\r\n
0\">\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n

\r\n {{\r\n 'Fetched Land Details from Jamabandi Portal' }}

\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{'S.No'| translate}}\r\n {{'KHATONI'| translate}}\r\n {{'KHEWAT'| translate}}\r\n {{'MORABBA_NUMBER'| translate}}\r\n {{'KILLA_NO'| translate}}\r\n {{'KANALS'| translate}}\r\n {{'MARLAS'| translate}}\r\n {{'YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ i + 1 }}\r\n {{product?.khatoni}}\r\n {{product?.khewat}}\r\n {{product?.must}}\r\n {{product?.killa}}\r\n {{product?.knl}}\r\n {{product?.mrl}}\r\n {{product?.period}}\r\n \r\n \r\n
\r\n
0\" class=\"\">\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MORABBA_NUMBER_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'KILLA_NUMBER_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_KANALS_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_MARLAS_IS_REQUIRED'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_IS_REQUIRED'| translate}}
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_APPLIED_AREA_IS_REQUIRED'| translate}}
\r\n
{{'LAND_AREA_CANNOT_BE_GREATER_THAN'| translate}}{{\r\n maxLandAreaToAddValidation | number:'0.3-3' }}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'KANNALS_IS_REQUIRED'| translate}}
\r\n
{{'KANAL_CANNOT_BE_GREATER'| translate}}.
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'MARLAS_IS_REQUIRED'| translate}}
\r\n
{{'MARLAS_SHOULD_NOT_BE_GREATER'| translate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n\r\n 0\" [maxSelectedLabels]=\"4\"\r\n [selectedItemsLabel]=\"'{0} items selected'\" placeholder=\"{{'SELECT_CROP_TYPE'| translate}}\"\r\n [(ngModel)]=\"selectedNodes1\" optionLabel=\"label\" [virtualScroll]=\"true\" [virtualScrollItemSize]=\"30\"\r\n appendTo=\"body\" (onChange)=\"onCropSelect($event)\">\r\n\r\n
4\" class=\"invalid-feedback\">\r\n
{{'MAXIMUM_4_CROP_IS_ALLOWED_YOU_SELECTED'| translate}} {{ selectedNodes1?.length }}
\r\n
\r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
0\" class=\"p-fluid p-formgrid grid justify-content-center\">\r\n
\r\n

AREA:

\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n 0\" class=\"mainTable1 mt-2 card\" [value]=\"addedLandDetails\" [rows]=\"10\"\r\n [paginator]=\"false\" [rowHover]=\"true\" responsiveLayout=\"scroll\" [showCurrentPageReport]=\"false\">\r\n \r\n
\r\n
{{\r\n ''| translate}}
\r\n\r\n
\r\n
\r\n\r\n \r\n \r\n {{'MORABBA_NUMBER'| translate}}\r\n {{'KILLA_NUMBER'| translate}}\r\n {{'KANALS'| translate}}\r\n {{'MARLAS'| translate}}\r\n {{'AREA'| translate}}\r\n {{'APPLIED_KANALS'| translate}}\r\n {{'APPLIED_MARLAS'| translate}}\r\n {{'APPLIED_AREA'| translate}}\r\n {{'CROP_NAME'| translate}}\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{product?.morbno}}\r\n {{product?.killano}}\r\n {{product?.kanal}}\r\n {{product?.marla}}\r\n {{product?.totalArea}}\r\n {{product?.appliedKanal}}\r\n {{product?.appliedMarla}}\r\n {{product?.appliedArea}}\r\n {{product?.cropName}}\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
0\" class=\"conatiner\">\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ConfirmationService, Message, MessageService } from 'primeng/api';\r\nimport { ConfirmDialog } from 'primeng/confirmdialog';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'app-kyc',\r\n templateUrl: './kyc.component.html',\r\n styleUrls: ['./kyc.component.scss'],\r\n // imports: [MessagesModule]\r\n})\r\nexport class KycComponent implements OnInit {\r\n\r\n @Output() kycStatusEvent = new EventEmitter();\r\n \r\n public showKYCPopUpDialog = false;\r\n public farmerAadharNumber: any;\r\n public consentCheckboxValue: any;\r\n\r\n public showStatusMessage: boolean = false;\r\n public isErrorStatus: boolean = false;\r\n public statusMessageText: any;\r\n\r\n public memberIdOTPValue: any;\r\n\r\n public isMemberOTPSent: boolean = false;\r\n \r\n public pppIDData: any;\r\n public openPPIDDataCard: boolean = false;\r\n\r\n public aadharConsentCheckboxValue: any;\r\n\r\n public isAadharOTPSent: boolean = false;\r\n public aadharOTPValue: any;\r\n public isAadharVerified: boolean = false;\r\n\r\n public isKYCCompleted: boolean = false;\r\n public showAadharOTPStatusMsg: boolean = false;\r\n\r\n\r\n //need to remove\r\n fetchedFamilyData: any;\r\n fetchedMemberId: any;\r\n fetchedFamilyId: any;\r\n\r\n @Input() farmerDetails;\r\n\r\n messages: Message[] | undefined;\r\n displayErrorPopUp: boolean = false;\r\n \r\n public showTextField: boolean = false;\r\n public aadharNumber: any = null;\r\n public farmerId: any = null;\r\n public memberIdForNewUser: any = null;\r\n public autoIdForNewUser: any = null;\r\n ipAddress: any = '000.000.000';\r\n farmersDetailsForm: FormGroup;\r\n isSubmitted: boolean = false;\r\n farmerMobNo: any;\r\n\r\n villageList: { Code: number, Name: string }[];\r\n filteredVillage: any[];\r\n \r\n constructor(\r\n private _fb: FormBuilder,\r\n private loader: AppLoaderService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService, \r\n private confirmationService: ConfirmationService,\r\n private cryptoJsService: CryptoJsService,\r\n private activityRecordService: ActivityRecordService,\r\n private ipService: IpAddressService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n this.farmerMobNo = farmerconfData.get('farmerPh');\r\n \r\n this.getIP();\r\n if(this.farmerDetails != null){\r\n this.aadharNumber = this.farmerDetails.Aadhar_No;\r\n this.farmerId = this.farmerDetails.Farmer_ID;\r\n // this.aadharNumber = '200411089222';\r\n // this.farmerId = null;\r\n if(this.farmerDetails?.AadharStatus && this.farmerDetails?.AadharStatus == true){\r\n this.isKYCCompleted = true;\r\n }else{\r\n this.isKYCCompleted = false;\r\n // this.showTextField = true;\r\n this.showTextField = false;\r\n }\r\n }else{\r\n this.isKYCCompleted = false;\r\n this.showTextField = true;\r\n }\r\n\r\n this.farmersDetailsForm = this._fb.group({ \r\n farmersPhotoPath: ['', Validators.required],\r\n mfmbNo: ['', [Validators.required, Validators.minLength(8), Validators.maxLength(8)]],\r\n village: ['', Validators.required],\r\n });\r\n\r\n this.getVillageList();\r\n }\r\n\r\n get farmersFormControls() {\r\n return this.farmersDetailsForm.controls;\r\n }\r\n\r\n hideKYCDialog(){\r\n\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n let phNo = this.farmerMobNo;\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.farmersDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n })\r\n uploadElement.clear();\r\n }\r\n\r\n onSubmitConsent(){\r\n this.consentCheckboxValue = false;\r\n this.showStatusMessage = true;\r\n this.getMemberIdFromUID();\r\n }\r\n\r\n addNewItem(value: string) {\r\n this.kycStatusEvent.emit(value);\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n\r\n getMemberIdFromUID(){\r\n let phNo = this.farmerMobNo;\r\n this.loader.start();\r\n // let aadharNo = this.cryptoJsService.Encrypt(this.farmerDetails.Aadhar_No);\r\n // let farmerId = this.cryptoJsService.Encrypt(this.farmerDetails.Farmer_ID);\r\n this._personalDetalSer.getFamilyIdByUID(this.aadharNumber, this.farmerId).pipe(first())\r\n // this._personalDetalSer.getFamilyIdByUID(aadharNo, farmerId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n // if (data.message == \"Record Match\") {\r\n // if (data == \"Record mismatched\") {\r\n // if (data == \"OTP Sent to registered mobile No.\") {\r\n if(this.farmerId == null) {\r\n if (data.Msg.startsWith('OTP Sent to')) {\r\n\r\n this.memberIdForNewUser = data?.MemberId;\r\n this.isMemberOTPSent = true;\r\n this.isErrorStatus = false;\r\n this.statusMessageText = `${data.Msg}.`\r\n this.showTextField = false;\r\n \r\n } else {\r\n \r\n this.displayErrorPopUp = true;\r\n \r\n this.isMemberOTPSent = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data.Msg}. Please try again.`\r\n }\r\n }else{\r\n if (data.Msg.startsWith('OTP Sent to')) {\r\n\r\n this.isMemberOTPSent = true;\r\n this.isErrorStatus = false;\r\n this.statusMessageText = `${data.Msg}.`\r\n \r\n // this.messageService.add({ severity: 'success', summary: 'OTP Sent', detail: data });\r\n \r\n // this.isErrorStatus = false;\r\n // this.statusMessageText = 'PPP Id fetched from Aadhar Number. Verifying it...'\r\n \r\n // this.fetchedFamilyData = data.result[0];\r\n // this.fetchedMemberId = this.fetchedFamilyData.memberid;\r\n // this.fetchedFamilyId = this.fetchedFamilyData.familyid;\r\n \r\n // this.verifyPPPId(this.farmerDetails.Farmer_ID, this.fetchedFamilyId);\r\n \r\n } else {\r\n \r\n this.displayErrorPopUp = true;\r\n \r\n this.isMemberOTPSent = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data.Msg}. Please try again.`\r\n \r\n // this.messageService.add({ severity: 'error', summary: 'OTP Not Sent', detail: data });\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.displayErrorPopUp = true;\r\n\r\n this.isMemberOTPSent = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'OTP Not Sent', detail: err });\r\n\r\n // this.isErrorStatus = true;\r\n // this.statusMessageText = `${err}. Please try again.`\r\n\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: '11Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n verifyPPPId(farmerId, familyId){\r\n this.loader.start();\r\n this._personalDetalSer.getVerifyPPPID(farmerId, familyId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n data = data[0].Column1;\r\n if(data == \"Record not matched\"){\r\n\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data;\r\n\r\n this.sendOTPforMEMID();\r\n // this.messageService.add({ severity: 'success', summary: 'Success', detail: data });\r\n }else{\r\n this.displayErrorPopUp = true;\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'Error', detail: data });\r\n }\r\n },\r\n error: (err) => {\r\n this.displayErrorPopUp = true;\r\n\r\n this.loader.close();\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n sendOTPforMEMID (){\r\n this.loader.start();\r\n this._personalDetalSer.OTPRequestforMEMID(this.fetchedMemberId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n // if(data == \"OTP Sent to registered mobile No.\"){\r\n if(data.startsWith('OTP Sent to')){\r\n this.isMemberOTPSent = true;\r\n\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data;\r\n\r\n // this.messageService.add({ severity: 'success', summary: 'OTP Sent', detail: data });\r\n }else{\r\n\r\n this.displayErrorPopUp = true;\r\n\r\n this.isMemberOTPSent = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'OTP Not Sent', detail: data });\r\n } \r\n },\r\n error: (err) => {\r\n this.displayErrorPopUp = true;\r\n\r\n this.loader.close();\r\n // this.openPPIDDialog = false;\r\n \r\n this.isMemberOTPSent = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n onSubmitMemIdOTP(){\r\n // let farmerId = this.cryptoJsService.Encrypt(this.farmerDetails.Farmer_ID);\r\n // let memberIdOTP = this.cryptoJsService.Encrypt(this.memberIdOTPValue)\r\n this.loader.start();\r\n // this._personalDetalSer.verifyOTPRequestForMID(farmerId, memberIdOTP).pipe(first())\r\n this._personalDetalSer.verifyOTPRequestForMID(this.farmerId, this.memberIdForNewUser, this.memberIdOTPValue).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.autoIdForNewUser = data?.AutoId;\r\n data = JSON.parse(data.Data)\r\n this.loader.close();\r\n \r\n if(data.message == \"Record Match\"){\r\n // if(data.message == \"Please enter transaction ID\"){\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data.message;\r\n \r\n this.pppIDData = data.result;\r\n\r\n this.openPPIDDataCard = true;\r\n\r\n // this.messageService.add({ severity: 'success', summary: data.status , detail: data.message });\r\n }else{\r\n \r\n this.displayErrorPopUp = true;\r\n\r\n this.openPPIDDataCard = false;\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data.message}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: data.status , detail: data.message });\r\n\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.displayErrorPopUp = true;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n this.openPPIDDataCard = false;\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n onSubmitAadharConsent(){\r\n this.isSubmitted = true;\r\n if(this.farmerId == null){\r\n if(!this.farmersDetailsForm.valid){\r\n Object.keys(this.farmersDetailsForm.controls).forEach(field => {\r\n const control = this.farmersDetailsForm.get(field);\r\n if (control && control.invalid) {\r\n let val = '';\r\n if(field == 'village'){\r\n val = 'Invalid field! Select Village';\r\n }\r\n else if(field == 'farmersPhotoPath'){\r\n val = 'Invalid field! Upload Farmer Photo'\r\n }else if(field == 'mfmbNo'){\r\n val = 'Invalid field! Enter MFMB No'\r\n }\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: val });\r\n }\r\n });\r\n return;\r\n }\r\n }\r\n this.validateAadharNumber(this.aadharNumber);\r\n this.isAadharOTPSent = true;\r\n }\r\n \r\n submitPersonlDetails(){\r\n let farmerMobNo = this.farmerMobNo;\r\n let reqBody = {\r\n farmerID: '',\r\n ppP_ID: this.pppIDData?.familyID,\r\n farmerphoto_path: this.farmersDetailsForm.value?.farmersPhotoPath,\r\n casteCertificate_Path: '',\r\n name: this.pppIDData?.fullName,\r\n farmerFatherName: this.pppIDData?.fatherFullName,\r\n farmerMotherName: this.pppIDData?.motherFullName,\r\n address: `House No: ${this.pppIDData?.houseNo}, Street No ${this.pppIDData?.streetNo}, LandMark ${this.pppIDData?.address_LandMark}, ${this.pppIDData?.districtName}.`,\r\n mobileno: farmerMobNo,\r\n ppP_path: '',\r\n dob: this.pppIDData?.dob,\r\n pincode: this.pppIDData?.pinCode,\r\n emailid: '',\r\n aadharno: this.aadharNumber,\r\n aadhar_path: '',\r\n castcode: this.pppIDData?.casteCategoryName.startsWith('GEN') ? 1 : this.pppIDData?.casteCategoryName.startsWith('BC') ? 1 : this.pppIDData?.casteCategoryName.startsWith('S') ? 3 : 0,\r\n gender: this.pppIDData?.gender,\r\n // villagecode: this.pppIDData?.wvCodeLGD ? this.pppIDData?.wvCodeLGD : '0',\r\n villagecode: this.farmersDetailsForm.value.village?.Code,\r\n mfmbNo: this.farmersDetailsForm.value?.mfmbNo,\r\n idproof: \"aadhar\",\r\n active: '1',\r\n userID : 'farmer',\r\n area_Already_Apply: 0,\r\n fid: '0',\r\n network_ID: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n is_Atal: false,\r\n isAutomatedData: 1,\r\n autoId: this.autoIdForNewUser ? this.autoIdForNewUser : 0,\r\n memberId: this.memberIdForNewUser\r\n }\r\n\r\n this._insert(reqBody);\r\n }\r\n\r\n _insert(data_) {\r\n let phNo = this.farmerMobNo;\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(data_))\r\n }\r\n\r\n this.loader.start();\r\n // let reqBody = this.cryptoJsService.EncryptPayload(data_)\r\n this._personalDetalSer.postFarmersData(reqBodyFinal).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == \"Farmer Details Saved Successfully! \") {\r\n this.isKYCCompleted = true;\r\n\r\n this._personalDetalSer.getFarmerDetails(this.farmersDetailsForm.controls.mobileNo.value)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data) {\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n farmerconfData.set('farmerDetails', data.Table[0]);\r\n\r\n const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n\r\n setTimeout(()=> {\r\n location.reload();\r\n }, 1500) \r\n }\r\n }\r\n });\r\n\r\n // this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Details saved Successfully.' });\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Insert Personal Details (auto mode)', '', new Date(), data, data_);\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(phNo, 'Insert Personal Details (auto mode)', '', new Date(), err, data_);\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n }\r\n });\r\n }\r\n\r\n validateAadharNumber(aadharNumber){\r\n let phNo = this.farmerMobNo;\r\n // let aadharNo = this.cryptoJsService.Encrypt(aadharNumber);\r\n this.loader.start();\r\n // this._personalDetalSer.validateAadhar(aadharNo).pipe(first())\r\n this._personalDetalSer.validateAadhar(aadharNumber).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.showAadharOTPStatusMsg = true;\r\n this.loader.close();\r\n\r\n if (data == \"OTP sent\") {\r\n // if (data == \"Invalid Aadhaar Number\") {\r\n\r\n this.isErrorStatus = false;\r\n this.statusMessageText = `${data}`\r\n\r\n this.isAadharOTPSent = true;\r\n \r\n // this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'OTP Sent Successfully.' });\r\n } else {\r\n\r\n this.displayErrorPopUp = true;\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n this.isAadharOTPSent = false;\r\n\r\n // this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number', '', new Date(), data, aadharNumber);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.displayErrorPopUp = true;\r\n this.isAadharOTPSent = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number(error)', '', new Date(), err, aadharNumber);\r\n }\r\n });\r\n }\r\n\r\n onSubmitAadharOTP(){\r\n this.validateAadharOTP(this.aadharNumber, this.aadharOTPValue);\r\n }\r\n\r\n validateAadharOTP(aadharNumber, otp){\r\n let phNo = this.farmerMobNo;\r\n // let aadharNo = this.cryptoJsService.Encrypt(aadharNumber);\r\n // let aadharOTP = this.cryptoJsService.Encrypt(otp);\r\n this.loader.start();\r\n // this._personalDetalSer.validateOTP(aadharNo, aadharOTP).pipe(first())\r\n let memberId = '';\r\n if(this.farmerDetails == null){\r\n memberId = this.memberIdForNewUser;\r\n }\r\n this._personalDetalSer.validateOTP(aadharNumber, otp, memberId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.startsWith('success') || data.startsWith('Success')) {\r\n if(this.farmerId == null){\r\n this.submitPersonlDetails();\r\n }else{\r\n this.isKYCCompleted = true;\r\n }\r\n \r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Aadhar Validated Successfully.' });\r\n } else {\r\n\r\n this.displayErrorPopUp = true;\r\n this.isKYCCompleted = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate OTP For Aadhar Verification', '', new Date(), data, aadharNumber);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.displayErrorPopUp = true;\r\n this.isKYCCompleted = false;\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate OTP For Aadhar Verification(error)', '', new Date(), err, aadharNumber);\r\n }\r\n });\r\n }\r\n\r\n hideErrorDialog() {\r\n this.displayErrorPopUp = false;\r\n }\r\n\r\n getVillageList(){\r\n this._personalDetalSer\r\n .getVillageMatserData()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n },\r\n error: (err) => {},\r\n });\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n this.filteredVillage = filtered;\r\n }\r\n}","\r\n
\r\n
\r\n \"bg\"\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n Status: \r\n {{ statusMessageText }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
{{'Data from PPP Portal' | translate}}\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n {{pppIDData?.fullName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.dob}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.gender}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.casteCategoryName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.fatherFullName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.motherFullName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.houseNo}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.streetNo}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.address_LandMark}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.tehsilName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.districtName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData?.pinCode}}\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MFMB_NO_REQUIRED' |\r\n translate}}
\r\n
\r\n {{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n {{'FARMERS_PHOTO_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n Status: \r\n {{ statusMessageText }}\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n Congratulations! Your e-KYC is completed\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n \r\n Error\r\n \r\n {{ statusMessageText }}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-new-registration',\r\n templateUrl: './new-registration.component.html',\r\n styleUrls: ['./new-registration.component.scss']\r\n})\r\nexport class NewRegistrationComponent implements OnInit {\r\n\r\n public newRegForm: FormGroup;\r\n public userId: any;\r\n public farmerData: any;\r\n\r\n public ipAddress: any = '000.000.000';\r\n public showKYCPopUpDialog: boolean = false;\r\n \r\n constructor(\r\n public router: Router,\r\n private fb: FormBuilder,\r\n private loader: AppLoaderService,\r\n private fApplicationService: FarmersApplicationService,\r\n private messageService: MessageService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private ipService: IpAddressService,\r\n private reportService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.getIP();\r\n\r\n this.newRegForm = this.fb.group({\r\n aadharNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(12),\r\n Validators.maxLength(12),\r\n ],\r\n ],\r\n });\r\n }\r\n\r\n onSubmitfarmerOwnMIDetails() {\r\n if (!this.newRegForm.invalid) {\r\n console.log(this.newRegForm.value);\r\n let val = this.newRegForm.value;\r\n // let reqBody = {\r\n // aadharNo: val?.aadharNo,\r\n // userId: this.userId,\r\n // networkId: this.ipAddress,\r\n // terminalId: this.ipAddress\r\n // }\r\n\r\n this.showKYCPopUpDialog = true;\r\n\r\n this.farmerData = {\r\n Aadhar_No: val?.aadharNo,\r\n AadharStatus: false\r\n }\r\n // this.submitDetails(reqBody);\r\n // this.checkAppVal(reqBody);\r\n } else {\r\n this.newRegForm.markAllAsTouched();\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Fill all madatory details.',\r\n // });\r\n }\r\n console.log(this.newRegForm.value);\r\n }\r\n\r\n // submitDetails(reqBody) {\r\n // this.loader.start();\r\n // this.fApplicationService\r\n // .uploadUHBVNFieldXENNoc(reqBody)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // if (res == 'Success') {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: res,\r\n // });\r\n // this.newRegForm.reset();\r\n // } else {\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: res,\r\n // });\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n hideKYCDialog(){\r\n this.showKYCPopUpDialog = false;\r\n }\r\n\r\n addItem(val){\r\n this.showKYCPopUpDialog = false;\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

{{ 'Submit Aadhar No for e-KYC' | translate }}

\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'AADHAR_NO_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n\r\n \r\n","import { Component, HostListener, OnInit } from '@angular/core';\r\nimport { OnFarmMiModel } from '../../../models/on-farm-mi.model';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MenuItem, Message, MessageService } from 'primeng/api';\r\nimport { PrimeNGConfig } from 'primeng/api';\r\nimport { first } from 'rxjs/internal/operators/first';\r\nimport { OnFarmMiService } from '../../../services/on-farm-mi.service';\r\nimport { ConfirmationService } from 'primeng/api';\r\nimport { saveAs } from 'file-saver'\r\nimport { FarmersApplicationService } from '../../../services/farmers-application.service';\r\nimport { FarmerLandDetailService } from '../../../services/farmer-land-detail.service';\r\nimport { FarmerLandModel, FLandModel } from 'src/app/models/farmer-land.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'on-farm-mi',\r\n templateUrl: './on-farm-mi.component.html',\r\n styleUrls: ['./on-farm-mi.component.scss']\r\n})\r\nexport class OnFarmMiComponent implements OnInit {\r\n public onFarmMIForm: FormGroup;\r\n isSubsidyAvailabe: any;\r\n isExistingMIAvailable: any;\r\n selectedState: any;\r\n cities: any[];\r\n\r\n lstOnFarmMiModel: OnFarmMiModel[];\r\n onFarmMiModel: OnFarmMiModel;\r\n selectedOnFarmMi: OnFarmMiModel[];\r\n submitted: boolean;\r\n statuses: any[];\r\n valActive: any;\r\n productDialog: boolean;\r\n filteredWaterQuality: any[];\r\n waterQualityList = [];\r\n componentMasterList = [];\r\n filteredComponentMaster: any[];\r\n selectedLandDetail: any;\r\n items: MenuItem[];\r\n lstFarmerLandModel: FLandModel[];\r\n isLandDetailsShow: boolean;\r\n MorabbaNo: any;\r\n KillaNo: any;\r\n filteredLandDetails: any[];\r\n editFarmMiModel: OnFarmMiModel;\r\n selectedcompMaster: any;\r\n departmentList = [\r\n { name: 'Agriculture', code: 'Agriculture' },\r\n { name: 'Horticulture', code: 'Horticulture' },\r\n { name: 'MICADA 1.0', code: 'MICADA' },\r\n ];\r\n\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n farmerPreviousSubsidies = [];\r\n farmerId: any;\r\n innerWidth: number;\r\n\r\n showSubsidyArea: boolean = false;\r\n ipAddress: any = '000.000.000';\r\n minDate: Date;\r\n maxDate: Date;\r\n yearArray:any[]=[]\r\n public loading: boolean = false;\r\n constructor(private flDetailService: FarmerLandDetailService, \r\n private fApplicationService: FarmersApplicationService, \r\n private confirmationService: ConfirmationService, \r\n private primengConfig: PrimeNGConfig, \r\n private service: MessageService, \r\n private _formBuilder: FormBuilder, \r\n private ofService: OnFarmMiService, \r\n private messageService: MessageService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event) {\r\n this.innerWidth = window.innerWidth;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n let today = new Date();\r\n let month = today.getMonth();\r\n let year = today.getFullYear();\r\n let prevMonth = (month === 0) ? 11 : month -1;\r\n let prevYear = (prevMonth === 11) ? year - 8 : year-7;\r\n let nextMonth = (month === 11) ? 0 : month + 1;\r\n let nextYear = (nextMonth === 0) ? year : year;\r\n this.minDate = new Date();\r\n this.minDate.setMonth(prevMonth);\r\n this.minDate.setFullYear(prevYear);\r\n this.maxDate = new Date();\r\n this.maxDate.setMonth(nextMonth);\r\n this.maxDate.setFullYear(nextYear);\r\n this.innerWidth = window.innerWidth;\r\n // console.log(this.minDate.getFullYear(),\"minDate.............\")\r\n for(let i=this.minDate.getFullYear();i<=this.maxDate.getFullYear();i++){\r\n this.yearArray.push({name:i.toString(),code:i.toString()});\r\n }\r\n // console.log(this.yearArray,\"this.yearArray\")\r\n this.items = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel();\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf();\r\n }\r\n },\r\n ];\r\n\r\n this.onFarmMIForm = this._formBuilder.group({\r\n yearSubsudy: ['', []],\r\n balanceArea: ['', [Validators.required]],\r\n departmentSubsidy: ['', []],\r\n componentMaster: ['', []],\r\n isSubsidyAvailabe: ['', [Validators.required]],\r\n landDetails: ['', [Validators.required]],\r\n subsidyArea: ['']\r\n });\r\n this.f.balanceArea.disable();\r\n this.primengConfig.ripple = true;\r\n this.loadOnFramMI();\r\n this.loadComponentMaster();\r\n this.loadData();\r\n this.getPastSubsidiesByFarmerId();\r\n }\r\n\r\n getPastSubsidiesByFarmerId() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let mobile = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n if (this.farmerId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.ofService.GetFarmerPastSubsidyByFarmerId(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI', this.farmerId, new Date(), 'Success');\r\n\r\n this.farmerPreviousSubsidies = data;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI', this.farmerId, new Date(), err);\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: `Data error! Farmer Previous Subsidies not loaded. ${err}` });\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n loadData() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (farmerData) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.flDetailService.getNotUsedLandsByFarmerID(farmerData?.['Farmer_ID'])\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if (data.length > 0) {\r\n this.lstFarmerLandModel = data;\r\n this.lstFarmerLandModel.forEach(function (value) {\r\n value.description = \"Morabba: \" + value.MorabbaNo + \", Killa\" + value.KillaNo\r\n });\r\n }\r\n else{\r\n this.service.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: `Data error! Farmer Land Details not loaded. ${err}` });\r\n }\r\n });\r\n }\r\n }\r\n\r\n changeLD() {\r\n console.log(\"this.selectedLandDetail\", this.selectedLandDetail)\r\n\r\n this.KillaNo = this.selectedLandDetail.KillaNo;\r\n this.MorabbaNo = this.selectedLandDetail.MorabbaNo;\r\n // let balanceArea = this.selectedLandDetail.TotalArea - this.f.balanceArea.value\r\n // this.f.balanceArea.setValue(balanceArea);\r\n this.f.balanceArea.setValue(0);\r\n this.getAreaByLandId(this.selectedLandDetail.LandID);\r\n }\r\n\r\n getAreaByLandId(landId){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.flDetailService.getAreaByLandId(landId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n let area = data[0].Area;\r\n // console.log(\"Area\", area)\r\n this.f.subsidyArea.setValue(area);\r\n this.showSubsidyArea = true;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: `Data error! Area is not fetched by Land Id. ${err}` });\r\n }\r\n });\r\n }\r\n\r\n filterLandDetails(event: any) {\r\n console.log(event);\r\n\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.lstFarmerLandModel.length; i++) {\r\n const wq = this.lstFarmerLandModel[i];\r\n\r\n if (wq.MorabbaNo.toString().indexOf(query) == 0) {\r\n filtered.push(wq);\r\n }\r\n }\r\n\r\n this.filteredLandDetails = filtered;\r\n console.log(this.filteredLandDetails);\r\n\r\n }\r\n\r\n loadOnFramMI() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please complete the farmer details first.' });\r\n return;\r\n }\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n // this.loader.start();\r\n this.loading = true;\r\n this.ofService.GetOnFarmMi(farmerData?.['Farmer_ID'])\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if (data.Table.length > 0) {\r\n this.lstOnFarmMiModel = data.Table.map(res => {\r\n return {\r\n landDetailsToDisplay: 'Village Name:' +res.VillageName + ' - Killa No:'+ res.Killa_No + ' - Morabba No:'+ res.Morabba_No,\r\n ...res\r\n }\r\n })\r\n }\r\n else if(data.Table.length == 0){\r\n this.lstOnFarmMiModel = [];\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: `Data error! Farm Mi Details not loaded. ${err}` });\r\n\r\n }\r\n });\r\n }\r\n\r\n loadWaterQuality() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.ofService.GetWaterQuality().subscribe(res => {\r\n this.waterQualityList = res;\r\n this.filteredWaterQuality = [...this.waterQualityList]\r\n\r\n })\r\n // this.loader.close();\r\n this.loading = false;\r\n }\r\n\r\n loadComponentMaster() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.fApplicationService.getComponentMaster().subscribe(res => {\r\n this.componentMasterList = res;\r\n this.filteredComponentMaster = [...this.componentMasterList]\r\n\r\n })\r\n // this.loader.close();\r\n this.loading = false;\r\n }\r\n\r\n get f() {\r\n return this.onFarmMIForm.controls;\r\n }\r\n\r\n filterComponentMaster(event: any) {\r\n console.log(event);\r\n\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.componentMasterList.length; i++) {\r\n const wq = this.componentMasterList[i];\r\n if (wq.Program_Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(wq);\r\n }\r\n }\r\n\r\n this.filteredComponentMaster = filtered;\r\n console.log(this.filteredComponentMaster);\r\n\r\n }\r\n\r\n openNew() {\r\n this.editFarmMiModel = undefined;\r\n this.f.yearSubsudy.reset();\r\n this.f.balanceArea.reset();\r\n this.f.departmentSubsidy.reset();\r\n this.f.landDetails.reset();\r\n this.f.componentMaster.reset();\r\n // this.f.yearSubsudy.setValue(this.editFarmMiModel.year_subsidy);\r\n // this.f.balanceArea.setValue(this.editFarmMiModel.bal_Area);\r\n // this.f.departmentSubsidy.setValue(this.editFarmMiModel.dept_subsidy);\r\n // this.f.landDetails.setValue(this.editFarmMiModel.land_ID);\r\n this.selectedLandDetail = 0;\r\n this.selectedcompMaster = 0;\r\n\r\n this.submitted = false;\r\n this.productDialog = true;\r\n }\r\n\r\n onSubmit() {\r\n this.submitted = true;\r\n\r\n // stop here if form is invalid\r\n if (this.onFarmMIForm.invalid) {\r\n return;\r\n }\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (!farmerData) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Please complete the farmer details first.' });\r\n return;\r\n }\r\n\r\n this.onFarmMiModel = new OnFarmMiModel();\r\n this.onFarmMiModel.farmerID = farmerData?.['Farmer_ID'];\r\n this.onFarmMiModel.land_ID = this.f.landDetails.value.LandID;\r\n this.onFarmMiModel.water_Quality = \"1\";\r\n this.onFarmMiModel.isSubsidyAvail = this.isSubsidyAvailabe;\r\n this.onFarmMiModel.year_subsidy = this.isSubsidyAvailabe == 1 ? this.f.yearSubsudy.value : '0';\r\n this.onFarmMiModel.bal_Area = this.f.balanceArea.value;\r\n this.onFarmMiModel.dept_subsidy = this.isSubsidyAvailabe == 1 ? this.f.departmentSubsidy.value : '';\r\n this.onFarmMiModel.component = this.f.componentMaster.value.Program_Id;\r\n this.onFarmMiModel.user_ID = sessionStorage.getItem('abyUserID') ? sessionStorage.getItem('abyUserID') : sessionStorage.getItem(\"userID\");\r\n this.onFarmMiModel.network_ID = this.ipAddress;\r\n this.onFarmMiModel.terminal_ID = this.ipAddress;\r\n\r\n \r\n let mobile = farmerConfData.get('farmerPh') ? farmerConfData.get('farmerPh') : ''; \r\n // console.log(this.onFarmMiModel,\"this.onFarmMiModel\")\r\n if (this.editFarmMiModel != null) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.onFarmMiModel.farmerID = this.editFarmMiModel.Farmer_ID;\r\n this.onFarmMiModel.land_ID = this.editFarmMiModel.Land_ID;\r\n this.ofService.UpdateOnFarmMi(this.onFarmMiModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.loadOnFramMI();\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI Updated', this.farmerId, new Date(), resp, this.onFarmMiModel);\r\n\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: 'Farm Mi saved Successfully.' });\r\n this.productDialog = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI Updated', this.farmerId, new Date(), err, this.onFarmMiModel);\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: `Data error! Farm Mi Details not saved. ${err}` });\r\n\r\n }\r\n });\r\n }\r\n else {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.ofService.InsertOnFarmMi(this.onFarmMiModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.loadOnFramMI();\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI Inserted', this.farmerId, new Date(), JSON.stringify(resp), this.onFarmMiModel);\r\n\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: 'Farm Mi saved Successfully.' });\r\n this.productDialog = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI Inserted', this.farmerId, new Date(), err, this.onFarmMiModel);\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: `Data error! Farm Mi Details not saved. ${err}` });\r\n\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n hideDialog() {\r\n this.productDialog = false;\r\n this.submitted = false;\r\n this.f.subsidyArea.reset();\r\n this.showSubsidyArea = false;\r\n }\r\n\r\n editProduct(bank: any) {\r\n this.editFarmMiModel = new OnFarmMiModel();\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n let farmMi = { ...bank };\r\n this.f.yearSubsudy.setValue(farmMi.Year_subsidy);\r\n this.f.balanceArea.setValue(farmMi.Bal_Area);\r\n this.f.departmentSubsidy.setValue(farmMi.Dept_Subsidy);\r\n this.f.landDetails.setValue(farmMi.Land_ID);\r\n let val = this.lstFarmerLandModel.filter(x => x.LandID == farmMi.Land_ID)[0];\r\n this.selectedLandDetail = val;\r\n this.f.componentMaster.setValue(farmMi.Component);\r\n this.selectedcompMaster = this.componentMasterList.filter(x => x.Program_Name == farmMi.Component)[0];\r\n this.isSubsidyAvailabe = farmMi.Is_Subsidy_Avail;\r\n this.editFarmMiModel = bank;\r\n this.productDialog = true;\r\n\r\n }\r\n deleteProduct(bank: OnFarmMiModel) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let mobile = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n // console.log('selectedcompMaster', this.selectedcompMaster);\r\n // console.log('deleteeeeproductdetails', bank);\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n this.onFarmMiModel = new OnFarmMiModel();\r\n this.onFarmMiModel.farmerID = farmerData?.['Farmer_ID'];\r\n this.onFarmMiModel.landID = bank.Land_ID;\r\n this.onFarmMiModel.user_ID = sessionStorage.getItem('abyUserID') ? sessionStorage.getItem('abyUserID') : sessionStorage.getItem(\"userID\");\r\n this.onFarmMiModel.network_ID = this.ipAddress;\r\n this.onFarmMiModel.terminal_ID = this.ipAddress;\r\n this.onFarmMiModel.year_subsidy = bank.Year_subsidy;\r\n this.onFarmMiModel.component = JSON.stringify(bank.ComponentID);\r\n this.ofService.DeleteOnFarmMi(this.onFarmMiModel)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: JSON. stringify(res) });\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI Deleted', this.farmerId, new Date(), res, this.onFarmMiModel);\r\n this.loadOnFramMI();\r\n\r\n },\r\n error: (err) => {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(mobile, 'On Farm MI Deleted', this.farmerId, new Date(), err, this.onFarmMiModel);\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n exportExcel() {\r\n import(\"xlsx\").then(xlsx => {\r\n const worksheet = xlsx.utils.json_to_sheet(this.lstOnFarmMiModel);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, \"onFarmMi\");\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n downloadSheetAsPdf() {\r\n\r\n this.cols = [\r\n // { field: 'farmerName', header: 'Farmers Name'},\r\n { field: 'Land_ID', header: 'Land' },\r\n { field: 'Year_subsidy', header: 'Year Subsidy' },\r\n { field: 'Water_Quality', header: 'Water Quailty' },\r\n { field: 'Bal_Area', header: 'Balance Area' },\r\n { field: 'Dept_Subsidy', header: 'Department Subsidy' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.lstOnFarmMiModel);\r\n doc.save('onFarmMi.pdf');\r\n })\r\n })\r\n }\r\n\r\n subsidyAreachange(event: any) {\r\n let balanceArea = this.selectedLandDetail.Total_Area - this.f.subsidyArea.value\r\n this.f.balanceArea.setValue(balanceArea);\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
{{'MANAGE_FARM_MI'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'LAND_DETAILS'| translate}}\r\n \r\n \r\n \r\n {{'YEAR_SUBSIDY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'BALANCE_AREA'| translate}}\r\n \r\n \r\n \r\n {{'DEPARTMENT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.landDetailsToDisplay}}\r\n {{product.Year_subsidy}}\r\n \r\n {{product.Bal_Area}}\r\n {{product.Dept_Subsidy}}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{lstOnFarmMiModel ? lstOnFarmMiModel.length : 0 }} {{'LAND_DETAILS_ADDED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n\r\n
\r\n
{{'LAND_DETAILS_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'SYETEM_INSTALLED_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
{{'DEPARTMANT_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
{{'YEAR_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
{{'YEAR_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_AREA_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { FarmerDetails } from 'src/app/models/farmer-details.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\n\r\n@Component({\r\n selector: 'personal-details',\r\n templateUrl: './personal-details.component.html',\r\n styleUrls: ['./personal-details.component.scss'],\r\n providers: [MessageService, DatePipe]\r\n\r\n})\r\nexport class PersonalDetailsComponent implements OnInit {\r\n farmersDetailsForm: FormGroup;\r\n filteredVillage: any[];\r\n isSubmitted = false;\r\n isLoading = false;\r\n villageList: { Code: number, Name: string }[];\r\n famerID: string = '';\r\n genderType: string;\r\n selectedVillage: any;\r\n isEditable: any;\r\n todayDate: Date;\r\n farmerData: any;\r\n ipAddress: any = '000.000.000';\r\n isCasteCertificateMandatory: boolean = false;\r\n isCasteCertificteOptional: boolean = false;\r\n isAadharVerified: boolean = false;\r\n showAadharVerDialog: boolean = false;\r\n aadharNumber: any;\r\n aadharVerOTP: number;\r\n timer: number = 60;\r\n intervalId: any;\r\n\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public openPPIDDialog: boolean = false;\r\n // public isMemberIdFound: boolean = false;\r\n // public PPPIdValue: any;\r\n public memberIdOTPValue: any;\r\n public pppIDData: any;\r\n public showPPPIdValidationBox: boolean = true;\r\n public isAadharNumberFound: boolean = false;\r\n public isPPPDataNotValidated: boolean = true;\r\n\r\n public fetchedFamilyData: any;\r\n public fetchedMemberId: any;\r\n public fetchedFamilyId: any;\r\n\r\n public showStatusMessage: boolean = false;\r\n public statusMessageText: any = 'nothingggg';\r\n public isErrorStatus: boolean = false;\r\n public farmerMobileNo: any;\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private datePipe: DatePipe,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n this.farmerMobileNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n this.getIP();\r\n this.todayDate = new Date();\r\n this.farmersDetailsForm = this._fb.group({\r\n farmersName: ['', Validators.required],\r\n fathersName: ['', Validators.required],\r\n mothersName: ['', Validators.required],\r\n gender: ['', Validators.required],\r\n dob: ['', Validators.required],\r\n pppId: ['', [Validators.required, Validators.minLength(8), Validators.maxLength(8)]],\r\n aadharNo: ['', [Validators.required, Validators.minLength(12), Validators.maxLength(12)]],\r\n aadharPhotoPath: ['', Validators.required],\r\n mobileNo: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(10)]],\r\n caste: ['', Validators.required],\r\n address: ['', Validators.required],\r\n pincode: ['', Validators.required],\r\n emailId: ['', Validators.compose([Validators.required, Validators.email])],\r\n village: [this.selectedVillage, Validators.required],\r\n pppPhotoPath: ['', Validators.required],\r\n farmersPhotoPath: ['', Validators.required],\r\n casteCertificate: ['', Validators.required],\r\n mfmbNo: ['', [Validators.required, Validators.minLength(8), Validators.maxLength(8)]],\r\n });\r\n this.LoadFarmerDetails();\r\n // this.loader.start();\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // this.loader.close();\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n\r\n if (this.farmerData?.Village_Code) {\r\n let village = this.villageList?.filter(val => val?.Code === this.farmerData?.Village_Code)[0]\r\n this.farmersFormControls.village.setValue(village?.Name);\r\n this.selectedVillage = village;\r\n }\r\n\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n this.getCasteMaster()\r\n\r\n }\r\n getCasteMaster() {\r\n // this.loader.start();\r\n this._personalDetalSer.getCasteMatserData().subscribe(res => {\r\n // this.loader.close();\r\n })\r\n }\r\n LoadFarmerDetails() {\r\n // this.loader.start();\r\n this.isLoading = true;\r\n let phNo = this.farmerMobileNo;\r\n let sub = this._personalDetalSer.getFarmerDetails(phNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.isLoading = false;\r\n if (data) {\r\n this.activityRecordService.activityRecord(phNo, 'Personal Details', '', new Date(), 'Success');\r\n let farmerData = data.Table[0];\r\n if (farmerData) {\r\n // this.loader.start();\r\n this.isLoading = true;\r\n this.farmerData = farmerData;\r\n this.isEditable = farmerData.IsEdit;\r\n // let dob = farmerData.DOB.split('T')[0].split('-');\r\n\r\n this.farmersFormControls.pppId.setValue(farmerData.PPP_ID);\r\n this.farmersFormControls.farmersName.setValue(farmerData.Name);\r\n this.farmersFormControls.fathersName.setValue(farmerData.Father_name);\r\n this.farmersFormControls.mothersName.setValue(farmerData.Mother_Name);\r\n this.farmersFormControls.address.setValue(farmerData.Address);\r\n this.farmersFormControls.mobileNo.setValue(farmerData.Mobile);\r\n // this.farmersFormControls.dob.setValue(dob[2] + '-' + dob[1] + '-' + dob[0]);\r\n this.farmersFormControls.dob.setValue(new Date(farmerData.DOB));\r\n this.farmersFormControls.pincode.setValue(farmerData.Pin_Code);\r\n this.farmersFormControls.emailId.setValue(farmerData.Email_ID);\r\n this.farmersFormControls.aadharNo.setValue(farmerData.Aadhar_No);\r\n if (farmerData.Aadhar_No && farmerData.Aadhar_No != null) {\r\n this.isAadharNumberFound = true;\r\n this.aadharNumber = farmerData.Aadhar_No;\r\n } else {\r\n this.isAadharNumberFound = false;\r\n this.aadharNumber = null;\r\n }\r\n this.farmersFormControls.caste.setValue(farmerData.Caste_Code);\r\n this.onCasteChange('', farmerData.Caste_Code)\r\n // if(farmerData?.Caste_Code == 3){\r\n // this.isCasteCertificateMandatory = true;\r\n // }else if(farmerData?.Caste_Code){\r\n // this.isCasteCertificteOptional = true;\r\n // }else{\r\n // this.isCasteCertificateMandatory = false;\r\n // this.isCasteCertificteOptional = false;\r\n // }\r\n // this.farmersFormControls.idProof.setValue(farmerData.IDproof_Type);\r\n this.farmersFormControls.gender.setValue(farmerData.Gender);\r\n this.farmersFormControls.mfmbNo.setValue(farmerData.MFMBNo);\r\n this.genderType = farmerData.Gender;\r\n this.farmersFormControls.farmersPhotoPath.setValue(farmerData.Farmer_Photo);\r\n if (farmerData?.CasteCertificate_Path) {\r\n this.farmersFormControls.casteCertificate.setValue(farmerData.CasteCertificate_Path);\r\n }\r\n // this.farmersFormControls.idProofPhotoPath.setValue(farmerData.ID_Proof_FilePath);\r\n this.farmersFormControls.aadharPhotoPath.setValue(farmerData.Aadhaar_Copy_Upload);\r\n this.farmersFormControls.pppPhotoPath.setValue(farmerData.ID_Proof_FilePath)\r\n let village = this.villageList?.filter(val => val?.Code === farmerData?.Village_Code)[0]\r\n this.farmersFormControls.village.setValue(village?.Name);\r\n this.selectedVillage = village;\r\n if (farmerData?.IsAadharValidated == 1) {\r\n this.isAadharVerified = true;\r\n } else {\r\n this.isAadharVerified = false;\r\n }\r\n setTimeout(() => {\r\n // this.loader.close();\r\n this.isLoading = false;\r\n }, 2000)\r\n\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.isLoading = false;\r\n this.activityRecordService.activityRecord(phNo, 'Personal Details', '', new Date(), err);\r\n\r\n this.farmersFormControls.mobileNo.setValue(phNo);\r\n // this.router.navigate(['/personal-details']);\r\n }\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n\r\n // if (farmerData) {\r\n // let dob = farmerData.DOB.split('T')[0].split('-');\r\n\r\n // this.farmersFormControls.pppId.setValue(farmerData.PPP_ID);\r\n // this.farmersFormControls.farmersName.setValue(farmerData.Name);\r\n // this.farmersFormControls.fathersName.setValue(farmerData.Father_name);\r\n // this.farmersFormControls.mothersName.setValue(farmerData.Mother_Name);\r\n // this.farmersFormControls.address.setValue(farmerData.Address);\r\n // this.farmersFormControls.mobileNo.setValue(farmerData.Mobile);\r\n // this.farmersFormControls.dob.setValue(dob[1] + '-' + dob[2] + '-' + dob[0]);\r\n // // this.farmersFormControls.dob.setValue(farmerData.DOB);\r\n // this.farmersFormControls.pincode.setValue(farmerData.Pin_Code);\r\n // this.farmersFormControls.emailId.setValue(farmerData.Email_ID);\r\n // this.farmersFormControls.aadharNo.setValue(farmerData.Aadhar_No);\r\n // this.farmersFormControls.caste.setValue(farmerData.Caste_Code);\r\n // this.farmersFormControls.gender.setValue(farmerData.Gender);\r\n // this.farmersFormControls.village.setValue(farmerData.Village_Code);\r\n // this.farmersFormControls.idProof.setValue(farmerData.IDproof_Type);\r\n\r\n // }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get farmersFormControls() {\r\n return this.farmersDetailsForm.controls;\r\n }\r\n filterVillage(event: any) {\r\n\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n\r\n }\r\n\r\n onUpdateDoc() {\r\n this.isSubmitted = true;\r\n let val = this.farmersDetailsForm.value;\r\n let isAutomatedData = this.farmerData?.IsAutomatedData == 1 ? 1 : 0;\r\n const data = this.mapDataToFarmersModel(isAutomatedData);\r\n if (!(val.pppPhotoPath == '' || val.aadharPhotoPath == '')) {\r\n this._update(data);\r\n }\r\n }\r\n\r\n onFarmersFormSubmit() {\r\n this.isSubmitted = true;\r\n\r\n // if(this.farmersDetailsForm.valid && !this.isAadharVerified){\r\n // this.messageService.add({ severity: 'error', summary: 'Aadhar Error', detail: 'Verify your Aadhar number' });\r\n // return;\r\n // }\r\n\r\n if (this.farmersDetailsForm.valid) {\r\n // this.isLoading = true;\r\n\r\n const data = this.mapDataToFarmersModel(0);\r\n\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (farmerData) {\r\n this._update(data);\r\n } else {\r\n this._insert(data);\r\n }\r\n }\r\n }\r\n\r\n _update(data_) {\r\n let phNo = this.farmerMobileNo;\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(data_))\r\n }\r\n\r\n this.loader.start();\r\n // let reqBody = this.cryptoJsService.EncryptPayload(data_)\r\n this._personalDetalSer.updateFarmersData(reqBodyFinal).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n \r\n if (data == \"Farmer Details Updated Successfully!\") {\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Details updated Successfully.' });\r\n this._personalDetalSer.getFarmerDetails(this.farmersDetailsForm.controls.mobileNo.value)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n farmerconfData.set('farmerDetails', data.Table[0]);\r\n\r\n const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n\r\n setTimeout(()=> {\r\n location.reload();\r\n }, 1500)\r\n }\r\n }\r\n });\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), data, JSON.stringify(data_))\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Farmer Details not saved.' });\r\n this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), err, JSON.stringify(data_));\r\n }\r\n });\r\n }\r\n\r\n _insert(data_) {\r\n let phNo = this.farmerMobileNo;\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(data_))\r\n }\r\n\r\n this.loader.start();\r\n // let reqBody = this.cryptoJsService.EncryptPayload(data_)\r\n this._personalDetalSer.postFarmersData(reqBodyFinal).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n this._personalDetalSer.getFarmerDetails(this.farmersDetailsForm.controls.mobileNo.value)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data) {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n farmerconfData.set('farmerDetails', data.Table[0]);\r\n\r\n const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n }\r\n }\r\n });\r\n if (data == \"Farmer Details Saved Successfully! \") {\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Details saved Successfully.' });\r\n location.reload();\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: data });\r\n }\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Insert Personal Details', '', new Date(), data, data_);\r\n\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Farmer Details not saved.' });\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Insert Personal Details', '', new Date(), err, data_);\r\n }\r\n });\r\n\r\n }\r\n\r\n mapDataToFarmersModel(isautomatedData): FarmerDetails {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n if (farmerData) {\r\n this.famerID = farmerData?.['Farmer_ID'];\r\n }\r\n let data: FarmerDetails = {};\r\n //The below snippet converts the DOB into required format to populate 'data.dob' below\r\n let DOB: Date;\r\n let values = this.farmersDetailsForm.controls.dob.value.toString().split('-');\r\n if (values.length) {\r\n //Replacing DD MM to MM DD Format.\r\n values.splice(1, 0, values.shift());\r\n DOB = values.join(\" \");\r\n }\r\n\r\n\r\n data.farmerID = this.famerID;\r\n data.ppP_ID = this.farmersDetailsForm.value['pppId'];\r\n data.farmerphoto_path = this.farmersDetailsForm.value['farmersPhotoPath'];\r\n data.casteCertificate_Path = this.farmersDetailsForm.value['casteCertificate'];\r\n data.name = this.farmersDetailsForm.value['farmersName'];\r\n data.farmerFatherName = this.farmersDetailsForm.value['fathersName'];\r\n data.farmerMotherName = this.farmersDetailsForm.value['mothersName'];\r\n data.address = this.farmersDetailsForm.value['address'];\r\n data.mobileno = this.farmersDetailsForm.value['mobileNo'];\r\n data.ppP_path = this.farmersDetailsForm.value['pppPhotoPath'];\r\n data.dob = DOB ? this.toISOLocal(new Date(DOB)).replace(/.\\d+Z$/g, \"\") : this.toISOLocal(new Date((this.farmersDetailsForm.controls.dob.value))).replace(/.\\d+Z$/g, \"\");\r\n data.pincode = this.farmersDetailsForm.value['pincode'];;\r\n data.emailid = this.farmersDetailsForm.value['emailId'];\r\n data.aadharno = this.farmersDetailsForm.value['aadharNo'];\r\n data.aadhar_path = this.farmersDetailsForm.value['aadharPhotoPath'];\r\n data.castcode = this.farmersDetailsForm.value['caste'];\r\n data.gender = this.farmersDetailsForm.value['gender'];\r\n data.villagecode = this.farmersDetailsForm.value['village'].Code;\r\n data.mfmbNo = this.farmersDetailsForm.value['mfmbNo'];\r\n data.idproof = \"aadhar\";\r\n data.active = '1';\r\n data.userID = sessionStorage.getItem('abyUserID') ? sessionStorage.getItem('abyUserID') : sessionStorage.getItem(\"userID\");\r\n data.area_Already_Apply = 0;\r\n data.fid = '123451111';\r\n data.network_ID = this.ipAddress;\r\n data.terminal_ID = this.ipAddress;\r\n data.is_Atal = sessionStorage.getItem(\"isAtalBhujal\") === '1' || sessionStorage.getItem(\"isVendor\") === '1' ? true : false;\r\n data.isAutomatedData = isautomatedData;\r\n data.autoId = 0;\r\n data.memberId = '';\r\n\r\n return data;\r\n }\r\n\r\n onFarmerPhotoUpload(event) {\r\n this.messageService.add({ severity: 'info', summary: 'Success', detail: 'File Uploaded with Auto Mode' });\r\n }\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n let phNo = this.farmerMobileNo;\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.farmersDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n\r\n })\r\n uploadElement.clear();\r\n\r\n }\r\n\r\n getVillageData() {\r\n this.loader.start();\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n this.loader.close();\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n }\r\n\r\n toISOLocal(d) {\r\n var z = n => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n\r\n return d.getFullYear() + '-'\r\n + z(d.getMonth() + 1) + '-' +\r\n z(d.getDate());\r\n }\r\n\r\n getIP() {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let ipAddress = farmerConfData.get('ipAddress');\r\n\r\n if (ipAddress) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n\r\n farmerConfData.set('ipAddress', this.ipAddress)\r\n\r\n const dataF = JSON.stringify(Array.from(farmerConfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF)); \r\n });\r\n }\r\n }\r\n\r\n onCasteChange(event, ...value) {\r\n this.isCasteCertificateMandatory = false;\r\n let val = 0;\r\n if (value.length > 0) {\r\n val = value[0];\r\n } else {\r\n val = this.farmersDetailsForm.value['caste'];\r\n }\r\n if (val == 1) {\r\n this.isCasteCertificteOptional = false;\r\n this.isCasteCertificateMandatory = false;\r\n this.farmersDetailsForm.controls['casteCertificate'].clearValidators();\r\n this.farmersDetailsForm.controls['casteCertificate'].updateValueAndValidity();\r\n this.farmersFormControls.casteCertificate.setValue('');\r\n } else if (val == 2) {\r\n this.isCasteCertificteOptional = true;\r\n this.isCasteCertificateMandatory = false;\r\n this.farmersDetailsForm.controls['casteCertificate'].clearValidators();\r\n this.farmersDetailsForm.controls['casteCertificate'].updateValueAndValidity();\r\n this.farmersFormControls.casteCertificate.setValue('');\r\n } else {\r\n this.isCasteCertificteOptional = false;\r\n this.isCasteCertificateMandatory = true;\r\n this.farmersDetailsForm.controls['casteCertificate'].setValidators(Validators.required);\r\n this.farmersDetailsForm.controls['casteCertificate'].updateValueAndValidity();\r\n }\r\n }\r\n\r\n verifyAadhar() {\r\n // this.aadharNumber = this.farmersDetailsForm.value['aadharNo'];\r\n this.validateAadharNumber(this.aadharNumber);\r\n // this.showAadharVerDialog = true;\r\n // this.startTimer();\r\n }\r\n\r\n validateAadharNumber(aadharNumber) {\r\n let phNo = this.farmerMobileNo;\r\n this.loader.start();\r\n this._personalDetalSer.validateAadhar(aadharNumber).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data == \"OTP sent\") {\r\n this.showAadharVerDialog = true;\r\n this.startTimer();\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'OTP Sent Successfully.' });\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number', '', new Date(), data, aadharNumber);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number(error)', '', new Date(), err, aadharNumber);\r\n }\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.showAadharVerDialog = false;\r\n this.aadharVerOTP = null;\r\n }\r\n\r\n submitOTP() {\r\n this.validateOTP(this.aadharNumber, this.aadharVerOTP)\r\n }\r\n\r\n validateOTP(aadharNumber, otp) {\r\n let phNo = this.farmerMobileNo;\r\n this.loader.start();\r\n this._personalDetalSer.validateOTP(aadharNumber, otp, '').pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.startsWith('s') || data.startsWith('S')) {\r\n this.isAadharVerified = true;\r\n this.hideDialog();\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Aadhar Validated Successfully.' });\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate OTP For Aadhar Verification', '', new Date(), data, aadharNumber);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n this.activityRecordService.activityRecord(phNo, 'Validate OTP For Aadhar Verification', '', new Date(), err, aadharNumber);\r\n }\r\n });\r\n }\r\n\r\n\r\n startTimer(): void {\r\n this.intervalId = setInterval(() => {\r\n if (this.timer > 0) {\r\n this.timer--;\r\n } else {\r\n clearInterval(this.intervalId);\r\n }\r\n }, 1000);\r\n }\r\n\r\n resendOTP(): void {\r\n // Reset timer\r\n this.timer = 60;\r\n // Start timer again\r\n this.startTimer();\r\n }\r\n\r\n editAadharNumber() {\r\n this.hideDialog();\r\n }\r\n\r\n findMemberIdFromUID() {\r\n this.showStatusMessage = true;\r\n this.getMemberIdFromUID();\r\n }\r\n\r\n clearPPPIdData() {\r\n // this.isMemberIdFound = false;\r\n // this.PPPIdValue = null;\r\n this.memberIdOTPValue = null;\r\n // this.pppIDData = null;\r\n this.showPPPIdValidationBox = true;\r\n this.fetchedFamilyData = null;\r\n this.statusMessageText = null;\r\n this.showStatusMessage = false;\r\n }\r\n\r\n hidePPIDDialog() {\r\n this.openPPIDDialog = false;\r\n this.clearPPPIdData();\r\n }\r\n\r\n // sendPPIDOTP(){\r\n getMemberIdFromUID() {\r\n let phNo = this.farmerMobileNo;\r\n this.loader.start();\r\n // this._personalDetalSer.getFamilyIdByUID(this.aadharNumber).pipe(first())\r\n this._personalDetalSer.getFamilyIdByUID('', '200411089222').pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.message == \"Record Match\") {\r\n\r\n this.isErrorStatus = false;\r\n this.statusMessageText = 'PPP Id fetched from Aadhar Number. Verifying it...'\r\n\r\n this.fetchedFamilyData = data.result[0];\r\n this.fetchedMemberId = this.fetchedFamilyData.memberid;\r\n this.fetchedFamilyId = this.fetchedFamilyData.familyid;\r\n\r\n this.verifyPPPId(this.famerID, this.fetchedFamilyId);\r\n // this.isMemberIdFound = true;\r\n\r\n this.messageService.add({ severity: 'success', summary: 'Successful', detail: 'Family Id Fetched' });\r\n } else {\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n\r\n this.messageService.add({ severity: 'info', summary: data.message, detail: data });\r\n }\r\n\r\n // this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number', '', new Date(), data, aadharNumber);\r\n },\r\n error: (err) => {\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n\r\n // this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number(error)', '', new Date(), err, aadharNumber);\r\n }\r\n });\r\n }\r\n\r\n verifyPPPId(farmerId, familyId) {\r\n this.loader.start();\r\n this._personalDetalSer.getVerifyPPPID(farmerId, familyId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n data = data[0].Column1;\r\n // if(data == \"Record matched\"){\r\n if (data == \"Record not matched\") {\r\n this.openPPIDDialog = true;\r\n\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data;\r\n\r\n this.sendOTPforMEMID();\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: data });\r\n } else {\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error', detail: data });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n this.openPPIDDialog = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n sendOTPforMEMID() {\r\n this.loader.start();\r\n this._personalDetalSer.OTPRequestforMEMID(this.fetchedMemberId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data == \"OTP Sent to registered mobile No.\") {\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data;\r\n\r\n this.messageService.add({ severity: 'success', summary: 'OTP Sent', detail: data });\r\n } else {\r\n this.openPPIDDialog = false;\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n\r\n this.messageService.add({ severity: 'error', summary: 'OTP Not Sent', detail: data });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.openPPIDDialog = false;\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n onClickBack() {\r\n this.showPPPIdValidationBox = true;\r\n this.clearPPPIdData();\r\n }\r\n\r\n onSubmitMemIdOTP() {\r\n this.loader.start();\r\n this._personalDetalSer.verifyOTPRequestForMID(this.fetchedMemberId, null, this.memberIdOTPValue).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.message == \"Record Match\") {\r\n\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data.message;\r\n\r\n this.pppIDData = data.result;\r\n\r\n this.isPPPDataNotValidated = false;\r\n this.openPPIDDialog = false;\r\n\r\n this.messageService.add({ severity: 'success', summary: data.status, detail: data.message });\r\n } else {\r\n\r\n this.isErrorStatus = true;\r\n this.statusMessageText = data.message;\r\n\r\n this.messageService.add({ severity: 'error', summary: data.status, detail: data.message });\r\n\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n
\r\n {{ 'Loading Farmer details...' | translate }}\r\n
\r\n
\r\n
\r\n
{{'Data from PPP Portal' | translate}}
\r\n\r\n
\r\n
\r\n \r\n \r\n {{pppIDData.familyID}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.memberID}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.fullName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.dob}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.gender}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.casteCategoryName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.fatherFullName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.motherFullName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.houseNo}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.streetNo}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.address_LandMark}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.tehsilName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.districtName}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.pinCode}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.totalIncome}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{pppIDData.familyIncome}}\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n

e-KYC Successfully Completed

\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'FATHERS_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'MOTHERS_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DATE_OF_BIRTH_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{'MOBILE_NO_IS_REQUIRED' | translate}}
\r\n \r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
{{'MBILE_NO_SHOULD_CONTAIN' | translate}}
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \"Farmer's\r\n

{{farmersFormControls.farmersName.value }}

\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'ADDRESS_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_NAME_IS_REQUIRED' | translate}}
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'PINCODE_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MFMB_NO_REQUIRED' | translate}}
\r\n
{{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'AADHAR_NO_IS_REQUIRED' | translate}}
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'AADHAR_NO_SHOULD_CONTAIN_ONLY_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'PPP_ID_IS_REQUIRED' | translate}}
\r\n
{{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
{{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'AADHAR_PHOTO_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'PPP_PHOTO_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
{{'FARMERS_DETAILS' | translate}}
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_NAME_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
{{'FARMERS_PHOTO_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
{{'FATHERS_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'MOTHERS_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'DATE_OF_BIRTH_IS_REQUIRED' | translate}}
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'EMAIL_ID_IS_REQUIRED' | translate}}
\r\n
{{'EMAIL_IS_INVALID' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n {{farmersDetailsForm.controls.mobileNo.value}}\r\n
\r\n\r\n
\r\n
{{'MOBILE_NO_IS_REQUIRED' | translate}}
\r\n\r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
{{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
{{'MBILE_NO_SHOULD_CONTAIN' | translate}}
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'CASTE_CERTIFICATE_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
{{'ADDRESS_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_NAME_IS_REQUIRED' | translate}}
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'PINCODE_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MFMB_NO_REQUIRED' | translate}}
\r\n
{{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'MFMB_NO_REQUIRED_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
{{'AADHAR_NO_IS_REQUIRED' | translate}}
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
{{'AADHAR_NO_SHOULD_CONTAIN_ONLY_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
{{'AADHAR_PHOTO_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'PPP_ID_IS_REQUIRED' | translate}}
\r\n
{{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
{{'PPP_ID_SHOULD_BE_OF_8DIGITS' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
{{'PPP_PHOTO_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \"bg\"\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
0\">Resend OTP in: {{ timer }} Seconds
\r\n Resend OTP\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n
","import { DatePipe, PercentPipe } from '@angular/common';\r\nimport { Component, HostListener, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { crop_Datas } from 'src/app/models/farmer-land.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\ninterface UploadEvent {\r\n originalEvent: Event;\r\n files: File[];\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'app-vendor-budget-details',\r\n templateUrl: './vendor-budget-details.component.html',\r\n styleUrls: ['./vendor-budget-details.component.scss'],\r\n providers: [DatePipe]\r\n})\r\nexport class VendorBudgetDetailsComponent implements OnInit {\r\n public outletMasterData: any;\r\n public selectedOutlet: any = null;\r\n public selectedOutletToGetData: any = null;\r\n public selectedBenefitedArea: any = null;\r\n public VendorTableData: any;\r\n public selectedBenefitedAreaToGetData: any = null;\r\n public agreementNo: any = null;\r\n public agreementNoToGetData: any = null;\r\n public ipAddress: any;\r\n public isSubmitted: boolean = false;\r\n public userId: any;\r\n public contractorId: any;\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n public xslxToJsonDataPersonal: any[] = [];\r\n public xslxToJsonDataLand: any[] = [];\r\n public xslxToJsonDataBank: any[] = [];\r\n public uploadFile: any;\r\n public personalDetailsCols: any[];\r\n public landDetailsCols: any[];\r\n public bankDetailsCols: any[];\r\n public showViewDocDialog: boolean = false;\r\n public personalDetailsForm: FormGroup;\r\n public updatePersonalDetailsForm: FormGroup;\r\n public addedPersonalData: any[] = [];\r\n public todayDate: Date;\r\n public filteredVillage: any[];\r\n public villageList: any;\r\n public isCasteCertificteOptional: boolean = false;\r\n public isCasteCertificateMandatory: boolean = false;\r\n // public farmerLandForm: FormGroup;\r\n public cropMergeList: any;\r\n public nodes2: any[];\r\n public cropTypeList: any[];\r\n public submitted: boolean = false;\r\n public valRadio: boolean = false;\r\n selectedNodes1: any[] = [];\r\n selectedCorpModelList: any;\r\n selectedCorpModel: crop_Datas;\r\n blockSpace: RegExp = /^[^\\s,]([^,]*[^\\s,])?$/;\r\n public addedLandData: any = [];\r\n public landDocArray: any = [];\r\n public uploadedlandFiles: any[] = [];\r\n public uploadedAadharFiles: any[] = [];\r\n public selectedcompMaster: any;\r\n public contractorOutletList = [];\r\n public componentMasterList = [];\r\n public farmerCategoryList = [];\r\n public departmentList = [\r\n { name: 'Agriculture', code: 'Agriculture' },\r\n { name: 'Horticulture', code: 'Horticulture' },\r\n { name: 'MICADA 1.0', code: 'MICADA' },\r\n ];\r\n public yearArray: any = [];\r\n public innerWidth: number;\r\n public showSubsidyArea: boolean = false;\r\n public minDate: Date;\r\n public maxDate: Date;\r\n public addedFarmerData: any = [];\r\n public DataForm: any = [];\r\n public estimationDetailsForm: FormGroup;\r\n public filteredmiVendorList: any = [];\r\n public miVendorList: any = [];\r\n public category: any;\r\n public component: any;\r\n public sizePrice: any;\r\n public estimationTableData: any = [];\r\n expandedRows: any = {};\r\n public hideGetDataButton: boolean = false;\r\n public farmerPastSubsidyList: any = [];\r\n public totalPortableAreaCount: any = 0;\r\n public totalPortableCount: any = 0;\r\n public totalMiniAreaCount: any = 0;\r\n public totalMiniCount: any = 0;\r\n public totalDripAreaCount: any = 0;\r\n public totalDripCount: any = 0;\r\n public programWiseData: any = [];\r\n public agreementNoList: any = [];\r\n public showErrMsgOfInvArea: boolean = false;\r\n public invAreaMsg: any;\r\n public showUpdatePersonalDialog: boolean = false;\r\n public selectedApplicationNo: any;\r\n public selectedFarmerId: any;\r\n public loadedEstimateDatafromServer: any = [];\r\n public chunkList: any = [];\r\n public chunkIdToGetData: any;\r\n public selectedFarmerForEstimation: any = [];\r\n constructor(\r\n private loader: AppLoaderService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private ipService: IpAddressService,\r\n private fb: FormBuilder,\r\n private fApplicationService: FarmersApplicationService,\r\n private vendorService: VendorDashboardService,\r\n private jeService: JEService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event) {\r\n this.innerWidth = window.innerWidth;\r\n }\r\n getEmail: any;\r\n getMobile: any;\r\n getVendor: any;\r\n vendorDetails: any;\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n this.contractorId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.vendorData();\r\n this.getVendorFullDetailsByEmail();\r\n this.getContractorOutletList(this.contractorId, 0, '');\r\n this.getIP();\r\n this.getFarmerCategoryList();\r\n this.getYearList();\r\n this.loadComponentMaster();\r\n this.estimationDetailsForm = this.fb.group({\r\n // vendor: ['', [Validators.required]],\r\n // mobileNo: ['', [Validators.required]],\r\n programmeName: ['', [Validators.required]],\r\n category: ['', [Validators.required]],\r\n component: ['', [Validators.required]],\r\n sizePrice: ['', [Validators.required]],\r\n // price: [0, Validators.required],\r\n cmL_Certificate: ['', Validators.required],\r\n // email: ['', [Validators.required]],\r\n cmlSerialNo: ['', Validators.required],\r\n cmlValidity: ['', Validators.required],\r\n // gstAmount: [{ value: 0, disabled: true }],\r\n // gstRate: [{ value: 18, disabled: true }],\r\n // calculatedPrice: [{ value: 0, disabled: true }]\r\n });\r\n // this.onPriceChanges();\r\n // this.onChanges();\r\n }\r\n\r\n populateData() {\r\n // this.estimationDetailsForm.patchValue({\r\n // vendor: this.getVendor,\r\n // mobileNo: this.getMobile,\r\n // email: this.getEmail\r\n // });\r\n }\r\n\r\n getVendorFullDetailsByEmail() {\r\n this.jeService.getVendorFullDetailsByEmail(this.userId).subscribe({\r\n next: (data) => {\r\n this.vendorDetails = data;\r\n // this.vendorFormData = data.personalDetails.$values[0];\r\n this.VendorTableData = data.componentDetails.$values;\r\n // this.vendorAttachmentData = data.attachmentDetails.$values;\r\n // Handle your form display logic here\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n // setTimeout(()=> this.onClickBack(), 1300);\r\n }\r\n });\r\n }\r\n\r\n vendorData() {\r\n this.jeService.getVendorFullDetailsByEmail(this.userId).subscribe({\r\n next: (data1) => {\r\n\r\n this.getMobile = data1.personalDetails.$values[0].Mobile;\r\n this.getEmail = data1.personalDetails.$values[0].Email_ID;\r\n this.getVendor = data1.personalDetails.$values[0].Vendor_Name;\r\n\r\n // this.populateData();\r\n }\r\n });\r\n }\r\n\r\n onPriceChanges() {\r\n this.estimationDetailsForm.get('price').valueChanges.subscribe((price) => {\r\n const gstAmount = 0.18 * price;\r\n this.estimationDetailsForm.patchValue({\r\n gstAmount: gstAmount.toFixed(2)\r\n });\r\n });\r\n }\r\n\r\n onChanges(): void {\r\n this.estimationDetailsForm.valueChanges.subscribe(val => {\r\n this.calculatePrice();\r\n });\r\n }\r\n\r\n calculatePrice(): void {\r\n const price = this.estimationDetailsForm.get('price')?.value || 0;\r\n const gstAmount = this.estimationDetailsForm.get('gstAmount')?.value || 0;\r\n const calculatedPrice1 = parseFloat(price) + parseFloat(gstAmount);\r\n this.estimationDetailsForm.patchValue({\r\n calculatedPrice: calculatedPrice1\r\n }, { emitEvent: false });\r\n }\r\n\r\n // get f() {\r\n // return this.farmerLandForm.controls;\r\n // }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n getYearList() {\r\n let today = new Date();\r\n let month = today.getMonth();\r\n let year = today.getFullYear();\r\n let prevMonth = month === 0 ? 11 : month - 1;\r\n let prevYear = prevMonth === 11 ? year - 8 : year - 7;\r\n let nextMonth = month === 11 ? 0 : month + 1;\r\n let nextYear = nextMonth === 0 ? year : year;\r\n this.minDate = new Date();\r\n this.minDate.setMonth(prevMonth);\r\n this.minDate.setFullYear(prevYear);\r\n this.maxDate = new Date();\r\n this.maxDate.setMonth(nextMonth);\r\n this.maxDate.setFullYear(nextYear);\r\n this.innerWidth = window.innerWidth;\r\n\r\n for (\r\n let i = this.minDate.getFullYear();\r\n i <= this.maxDate.getFullYear();\r\n i++\r\n ) {\r\n this.yearArray.push({ name: i.toString(), code: i.toString() });\r\n }\r\n }\r\n\r\n onSelectOutlet() {\r\n this.selectedBenefitedArea = this.selectedOutlet?.CCA_A;\r\n }\r\n\r\n onSelectOutletToGetData() {\r\n this.agreementNoToGetData = null;\r\n this.agreementNoList = [];\r\n this.chunkList = [];\r\n this.agreementNoToGetData = null;\r\n this.chunkIdToGetData = null;\r\n\r\n this.selectedBenefitedAreaToGetData = this.selectedOutletToGetData?.CCA_A;\r\n let conId = this.selectedOutletToGetData?.ContractorCode;\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n this.getAgreementNumberList(conId, outletId, this.userId, '');\r\n }\r\n\r\n getAgreementNumberList(contractorId, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getAgreementByContractor(contractorId, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.agreementNoList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.agreementNoList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectBenefitedArea() {\r\n\r\n }\r\n\r\n getContractorOutletList(contractorId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getOutletByContractor(contractorId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.contractorOutletList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.contractorOutletList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getFarmerCategoryList() {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getFarmerCategory()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.farmerCategoryList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.farmerCategoryList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n loadComponentMaster() {\r\n setTimeout(() => {\r\n (this.componentMasterList = [\r\n {\r\n Program_Id: 1,\r\n Program_Name: 'Portable Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 2,\r\n Program_Name: 'Mini Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 3,\r\n Program_Name: 'Drip',\r\n Active: true,\r\n },\r\n ])\r\n }, 100);\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n // public setCurrentPosition() {\r\n // if ('geolocation' in navigator) {\r\n // navigator.geolocation.getCurrentPosition((position) => {\r\n // this.showPosition(position);\r\n // });\r\n // }\r\n // }\r\n\r\n // showPosition(position) {\r\n\r\n // let geocoder = new google.maps.Geocoder();\r\n // let latlng = {\r\n // lat: position.coords.latitude,\r\n // lng: position.coords.longitude,\r\n // };\r\n // this.f.latitude.setValue(position.coords.latitude);\r\n // this.f.longitude.setValue(position.coords.longitude);\r\n // }\r\n\r\n getSelectedCorpType() {\r\n this.selectedCorpModel = new crop_Datas();\r\n this.selectedCorpModelList = [];\r\n let selectedLabels = [];\r\n\r\n this.selectedCorpModelList = this.selectedNodes1.map((val) => ({\r\n type_of_crop_ID: val.parentData,\r\n crop_ID: val.data,\r\n }));\r\n }\r\n\r\n onCropSelect(val) {\r\n if (val.value.length > 4) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Crop Limit Exceeds',\r\n detail: 'Maximun 4 crop is allowed',\r\n });\r\n }\r\n }\r\n\r\n onAadharUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, sessionStorage.getItem('officeCode'), formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedAadharFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedAadharFiles.push(file);\r\n\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Aadhar Uploaded Successfully',\r\n });\r\n this.personalDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onUpdateAadharUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, sessionStorage.getItem('officeCode'), formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedAadharFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedAadharFiles.push(file);\r\n\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Aadhar Uploaded Successfully',\r\n });\r\n this.updatePersonalDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onLandUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, sessionStorage.getItem('officeCode'), formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedlandFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedlandFiles.push(file);\r\n\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded Successfully',\r\n });\r\n // this.farmerLandForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onSelectSubsidyAvail(val) {\r\n\r\n if (val == 1) {\r\n this.personalDetailsForm.controls['installedSystem'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['yearSubsudy'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.personalDetailsForm.controls['onCostSubsidyBased'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['departmentSubsidy'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n } else {\r\n this.personalDetailsForm.controls['installedSystem'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['yearSubsudy'].clearValidators();\r\n this.personalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.personalDetailsForm.controls['onCostSubsidyBased'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.personalDetailsForm.controls['departmentSubsidy'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n\r\n // this.personalDetailsForm.controls.installedSystem.setValue('');\r\n }\r\n }\r\n\r\n onSelectSubsidyAvailUpdate(val) {\r\n\r\n if (val == 1) {\r\n this.updatePersonalDetailsForm.controls['installedSystem'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['onCostSubsidyBased'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['departmentSubsidy'].setValidators(\r\n Validators.required\r\n );\r\n this.updatePersonalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n } else {\r\n this.updatePersonalDetailsForm.controls['installedSystem'].clearValidators();\r\n this.updatePersonalDetailsForm.controls[\r\n 'installedSystem'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].clearValidators();\r\n this.updatePersonalDetailsForm.controls['yearSubsudy'].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['onCostSubsidyBased'].clearValidators();\r\n this.updatePersonalDetailsForm.controls[\r\n 'onCostSubsidyBased'\r\n ].updateValueAndValidity();\r\n this.updatePersonalDetailsForm.controls['departmentSubsidy'].clearValidators();\r\n this.updatePersonalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n\r\n // this.updatePersonalDetailsForm.controls.installedSystem.setValue('');\r\n }\r\n }\r\n\r\n onSelectOnCostS(val) {\r\n if (val == 1) {\r\n this.personalDetailsForm.controls['departmentSubsidy'].setValidators(\r\n Validators.required\r\n );\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n } else {\r\n this.personalDetailsForm.controls['departmentSubsidy'].clearValidators();\r\n this.personalDetailsForm.controls[\r\n 'departmentSubsidy'\r\n ].updateValueAndValidity();\r\n }\r\n }\r\n\r\n onSubmitPersonalDetails() {\r\n\r\n\r\n if (this.personalDetailsForm.valid) {\r\n // this.addedPersonalData.push(this.personalDetailsForm.value);\r\n // this.personalDetailsForm.reset();\r\n } else {\r\n this.personalDetailsForm.markAllAsTouched();\r\n }\r\n }\r\n\r\n onAddFarmerForm() {\r\n this.onSubmitPersonalDetails();\r\n\r\n\r\n if (this.selectedOutlet == null) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Select Outlet.',\r\n });\r\n return;\r\n }\r\n\r\n if (this.agreementNo == null) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Enter Agreement No.',\r\n });\r\n return;\r\n }\r\n\r\n\r\n if (this.personalDetailsForm.invalid) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Fill Personal Details Properly.',\r\n });\r\n return;\r\n }\r\n\r\n if (this.addedLandData.length == 0) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Fill Land Detail.',\r\n });\r\n return;\r\n }\r\n\r\n let personalDetails = this.personalDetailsForm.value;\r\n let addedLandDetails = this.addedLandData;\r\n\r\n let farmerDeatils = {\r\n landDetailsData: addedLandDetails,\r\n contractorId: this.contractorId,\r\n outletId: this.selectedOutlet?.OutletId,\r\n agreementNo: this.agreementNo,\r\n name: personalDetails?.name,\r\n farmerFatherName: personalDetails?.fatherName,\r\n ppP_ID: personalDetails?.pppId,\r\n aadharno: personalDetails?.aadharNo,\r\n aadhar_path: personalDetails?.aadharPhotoPath,\r\n mobileno: personalDetails?.mobileNo,\r\n castcode: personalDetails?.casteCode,\r\n villagecode: personalDetails?.villageCode?.Code,\r\n mfmbNo: personalDetails?.mfmbNo,\r\n farmerCategory: personalDetails?.farmerCategory?.AutoID,\r\n proposedSystemToBeInstalled: personalDetails?.componentMaster?.Program_Id,\r\n\r\n isSubsidyAvailabe: personalDetails?.isSubsidyAvailabe\r\n ? personalDetails?.isSubsidyAvailabe\r\n : 0,\r\n installedSystem: personalDetails?.installedSystem?.Program_Id\r\n ? personalDetails?.installedSystem?.Program_Id\r\n : 0,\r\n yearSubsudy: personalDetails?.yearSubsudy\r\n ? personalDetails?.yearSubsudy\r\n : '',\r\n onCostSubsidyBased: personalDetails?.onCostSubsidyBased\r\n ? personalDetails?.onCostSubsidyBased\r\n : 0,\r\n departmentSubsidy: personalDetails?.departmentSubsidy\r\n ? personalDetails?.departmentSubsidy\r\n : '',\r\n\r\n network_ID: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n };\r\n\r\n this.submitFarmerData([farmerDeatils]);\r\n // this.addedFarmerData.push(farmerDeatils);\r\n\r\n\r\n // this.personalDetailsForm.reset();\r\n // this.uploadedAadharFiles = [];\r\n // this.addedLandData = [];\r\n }\r\n\r\n onUpdatePersonalDetails() {\r\n\r\n\r\n if (this.updatePersonalDetailsForm.valid) {\r\n this.updatePersonalDetails();\r\n // this.addedPersonalData.push(this.personalDetailsForm.value);\r\n // this.personalDetailsForm.reset();\r\n } else {\r\n this.updatePersonalDetailsForm.markAllAsTouched();\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Fill Personal Details Properly.',\r\n });\r\n return;\r\n }\r\n }\r\n\r\n submitFarmerData(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .insertFarmerDataByContractor(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n\r\n if (res == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Details submitted successfully.',\r\n });\r\n\r\n this.personalDetailsForm.reset();\r\n this.uploadedAadharFiles = [];\r\n this.addedLandData = [];\r\n // this.selectedOutlet = null;\r\n // this.agreementNo = null;\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res,\r\n });\r\n }\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Submit(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${res}`, JSON.stringify(reqBody));\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Submit Error(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${err}`, JSON.stringify(reqBody));\r\n },\r\n });\r\n }\r\n\r\n\r\n updatePersonalDetails() {\r\n\r\n let updatedPersonalDetails = this.updatePersonalDetailsForm.value;\r\n\r\n\r\n\r\n let reqBoady = {\r\n FarmerId: this.selectedFarmerId,\r\n // contractorId: this.contractorId,\r\n // outletId: this.selectedOutlet?.OutletId,\r\n // agreementNo: this.agreementNo,\r\n name: updatedPersonalDetails?.name,\r\n farmerFatherName: updatedPersonalDetails?.fatherName,\r\n ppP_ID: updatedPersonalDetails?.pppId,\r\n aadharno: updatedPersonalDetails?.aadharNo,\r\n aadhar_path: updatedPersonalDetails?.aadharPhotoPath,\r\n mobileno: updatedPersonalDetails?.mobileNo,\r\n castcode: updatedPersonalDetails?.casteCode,\r\n villagecode: updatedPersonalDetails?.villageCode?.Code,\r\n mfmbNo: updatedPersonalDetails?.mfmbNo,\r\n farmerCategory: updatedPersonalDetails?.farmerCategory,\r\n proposedSystemToBeInstalled: updatedPersonalDetails?.componentMaster,\r\n\r\n isSubsidyAvailabe: updatedPersonalDetails?.isSubsidyAvailabe ? updatedPersonalDetails?.isSubsidyAvailabe : 0,\r\n installedSystem: updatedPersonalDetails?.installedSystem ? updatedPersonalDetails?.installedSystem : 0,\r\n yearSubsudy: updatedPersonalDetails?.yearSubsudy ? updatedPersonalDetails?.yearSubsudy : '',\r\n onCostSubsidyBased: updatedPersonalDetails?.onCostSubsidyBased ? updatedPersonalDetails?.onCostSubsidyBased : 0,\r\n departmentSubsidy: updatedPersonalDetails?.departmentSubsidy ? updatedPersonalDetails?.departmentSubsidy : '',\r\n\r\n network_ID: this.ipAddress,\r\n terminal_ID: this.ipAddress,\r\n };\r\n\r\n // this.submitFarmerData([farmerDeatils]);\r\n\r\n this.updateFarmerPersonalData(reqBoady);\r\n }\r\n\r\n updateFarmerPersonalData(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .updateFarmerPersonalDetails(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n\r\n if (res == 'Personal details updated successfully.') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res,\r\n });\r\n\r\n this.updatePersonalDetailsForm.reset();\r\n this.uploadedAadharFiles = [];\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Error Message',\r\n detail: res,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Update (Personal Details)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${res}`, JSON.stringify(reqBody));\r\n\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Update Error(Personal Details)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${err}`, JSON.stringify(reqBody));\r\n },\r\n });\r\n }\r\n\r\n clearFormData() {\r\n this.personalDetailsForm.reset();\r\n this.uploadedAadharFiles = [];\r\n this.addedLandData = [];\r\n this.farmerPastSubsidyList = [];\r\n }\r\n\r\n onClickGetFarmerData() {\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n let chunkId = this.chunkIdToGetData?.ChunkId ? this.chunkIdToGetData?.ChunkId : 0;\r\n\r\n this.estimationTableData = [];\r\n this.addedFarmerData = [];\r\n\r\n if (outletId && agreementNo) {\r\n if (chunkId != 0) {\r\n this.getEPCFarmerDetails(agreementNo, outletId, chunkId);\r\n // this.getEPCEstimationDetails(this.contractorId, outletId, agreementNo, chunkId);\r\n } else {\r\n this.getEPCFarmerDetails(agreementNo, outletId, chunkId);\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Select Outlet and Agreement Number.',\r\n });\r\n }\r\n }\r\n\r\n // getEPCEstimationDetails(contractorId, outletId, agreementNo, chunkId) {\r\n // this.loader.start();\r\n // this.vendorService\r\n // .getContractorEstimation(contractorId, outletId, agreementNo, chunkId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // // this.hideGetDataButton = false;\r\n // this.loader.close();\r\n\r\n // let resp: any = data;\r\n // if (resp.length > 0) {\r\n // this.loadedEstimateDatafromServer = resp;\r\n // let respArr = resp.map((val) => this.estimationTableData.push({\r\n // programmeId: val?.ProgramID,\r\n // programmeName: val?.Program_Name,\r\n // CatID: val?.catId,\r\n // CatName: val?.category,\r\n // ComponentID: val?.ComponentID,\r\n // ComponentName: val?.Component,\r\n // // SizeID: estimationVal?.sizePrice?.sizeId,\r\n // // SizePriceName: estimationVal?.sizePrice?.sizeAndPrice,\r\n // Size: val?.Size,\r\n // SizeID: val?.SizeId,\r\n // Quantity: val?.Quantity,\r\n // // CoveredArea: val?.CoveredArea\r\n // }))\r\n\r\n // // this.estimationTableData.concat(respArr);\r\n\r\n // } else {\r\n // this.loadedEstimateDatafromServer = [];\r\n // this.estimationTableData = [];\r\n // if (this.chunkIdToGetData) {\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Data Not Found',\r\n // });\r\n // }\r\n // }\r\n // },\r\n // error: (err) => {\r\n // // this.hideGetDataButton = false;\r\n // this.loadedEstimateDatafromServer = [];\r\n // this.estimationTableData = [];\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n\r\n getEPCFarmerDetails(agreementNo, outletId, chunkId) {\r\n this.loader.start();\r\n this.vendorService\r\n .getEPCDetails(agreementNo, outletId, chunkId, this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n let resp: any = data;\r\n if (resp.length > 0) {\r\n this.hideGetDataButton = true;\r\n this.calValidationForEstimation(resp);\r\n this.addedFarmerData = data;\r\n } else {\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n calValidationForEstimation(data) {\r\n this.totalPortableAreaCount = 0;\r\n this.totalPortableCount = 0;\r\n this.totalMiniAreaCount = 0;\r\n this.totalMiniCount = 0;\r\n this.totalDripAreaCount = 0;\r\n this.totalDripCount = 0;\r\n\r\n data.map((val) => {\r\n\r\n if (val.ProposedSystem == 'Portable Sprinkler') {\r\n this.totalPortableAreaCount += parseFloat(val.TotalArea);\r\n this.totalPortableCount += 1;\r\n } else if (val.ProposedSystem == 'Mini Sprinkler') {\r\n this.totalMiniAreaCount += parseFloat(val.TotalArea);\r\n this.totalMiniCount += 1;\r\n } else if (val.ProposedSystem == 'Drip') {\r\n this.totalDripAreaCount += parseFloat(val.TotalArea);\r\n this.totalDripCount += 1;\r\n }\r\n });\r\n\r\n this.programWiseData = [\r\n {\r\n progName: 'Portable Sprinkler',\r\n totaAreaCount: this.totalPortableAreaCount,\r\n totalCount: this.totalPortableCount,\r\n },\r\n {\r\n progName: 'Mini Sprinkler',\r\n totaAreaCount: this.totalMiniAreaCount,\r\n totalCount: this.totalMiniCount,\r\n },\r\n {\r\n progName: 'Drip',\r\n totaAreaCount: this.totalDripAreaCount,\r\n totalCount: this.totalDripCount,\r\n },\r\n ];\r\n\r\n this.componentMasterList = [\r\n {\r\n Program_Id: 1,\r\n Program_Name: 'Portable Sprinkler',\r\n Active: true,\r\n disabled: this.totalPortableAreaCount == 0\r\n },\r\n {\r\n Program_Id: 2,\r\n Program_Name: 'Mini Sprinkler',\r\n Active: true,\r\n disabled: this.totalMiniAreaCount == 0\r\n },\r\n {\r\n Program_Id: 3,\r\n Program_Name: 'Drip',\r\n Active: true,\r\n disabled: this.totalDripAreaCount == 0\r\n },\r\n ]\r\n }\r\n\r\n public reqbody: any[];\r\n\r\n onSubmitForm() {\r\n this.loader.start();\r\n this.reqbody = this.estimationTableData.map(data => {\r\n return {\r\n ...data,\r\n mI_System: data.mI_System.Program_Id,\r\n vendorId: JSON.stringify(this.contractorId)\r\n };\r\n });\r\n\r\n this.vendorService\r\n .insertVendorComponentDetails(this.reqbody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.estimationTableData = [];\r\n this.selectedFarmerForEstimation = [];\r\n\r\n this.clearGetData();\r\n } else if (data.startsWith('Violation of PRIMARY KEY')) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'You have added the same component multiple times. Please remove the duplicate one.',\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n getVendorList(programId) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getAllMIvenders(programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.miVendorList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miVendorList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n filterMIVendor(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.miVendorList.length; i++) {\r\n const vendor = this.miVendorList[i];\r\n if (vendor.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendor);\r\n }\r\n }\r\n this.filteredmiVendorList = filtered;\r\n }\r\n\r\n onSelectProgramme() {\r\n this.estimationDetailsForm.controls['category'].reset();\r\n this.category = [];\r\n this.estimationDetailsForm.controls['component'].reset();\r\n this.component = [];\r\n this.estimationDetailsForm.controls['sizePrice'].reset();\r\n this.sizePrice = [];\r\n\r\n let vendor = 0;\r\n let programme = this.estimationDetailsForm.controls['programmeName'].value;\r\n this.getCategoryDropdown(vendor, programme?.Program_Id);\r\n }\r\n\r\n getCategoryDropdown(vendorId, programId) {\r\n const reqBody = {\r\n VendorRegId: vendorId,\r\n ProgramId: programId,\r\n };\r\n this.loader.start();\r\n this.vendorService\r\n .getCategory(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.category = res.$values;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.category = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectCategory() {\r\n this.estimationDetailsForm.controls['component'].reset();\r\n this.component = [];\r\n this.estimationDetailsForm.controls['sizePrice'].reset();\r\n this.sizePrice = [];\r\n let programme = this.estimationDetailsForm.controls['programmeName'].value;\r\n let category = this.estimationDetailsForm.controls['category'].value;\r\n let vendor = 0;\r\n this.getComponentDropdown(\r\n vendor,\r\n programme?.Program_Id,\r\n category?.categoryId\r\n );\r\n }\r\n\r\n getComponentDropdown(vendorId, programId, categoryId) {\r\n const reqBody = {\r\n VendorRegId: vendorId,\r\n ProgramId: programId,\r\n CategoryId: categoryId,\r\n };\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .getComponent(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.component = res.$values;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.component = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectComponent() {\r\n this.estimationDetailsForm.controls['sizePrice'].reset();\r\n this.sizePrice = [];\r\n let programme = this.estimationDetailsForm.controls['programmeName'].value;\r\n let category = this.estimationDetailsForm.controls['category'].value;\r\n let vendor = 0;\r\n let component = this.estimationDetailsForm.controls['component'].value;\r\n\r\n this.getSizeAndPriceDropdown(\r\n vendor,\r\n programme?.Program_Id,\r\n category?.categoryId,\r\n component?.componentId\r\n );\r\n }\r\n\r\n getSizeAndPriceDropdown(vendorRegId, programId, categoryId, componentId) {\r\n const reqBody = {\r\n VendorRegId: vendorRegId,\r\n ProgramId: programId,\r\n CategoryId: categoryId,\r\n ComponentId: componentId,\r\n };\r\n\r\n this.loader.start();\r\n this.vendorService\r\n .getSizeAndPrice(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.sizePrice = res.$values.map((val) => ({\r\n ...val,\r\n sizeOnly: val?.sizeAndPrice.split('and')[0],\r\n }));\r\n\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.sizePrice = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectSizePrice() {\r\n\r\n\r\n let sizePrice = this.estimationDetailsForm.controls['sizePrice'].value;\r\n\r\n }\r\n addEstimateData() {\r\n if(this.estimationDetailsForm.invalid){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Fill all the details properly and upload the document',\r\n });\r\n }\r\n if (this.estimationDetailsForm.valid) {\r\n const newData = this.estimationDetailsForm.getRawValue();\r\n\r\n // Store the gstRate value before resetting\r\n const gstRateValue = this.estimationDetailsForm.get('gstRate')?.value;\r\n const ven = this.estimationDetailsForm.get('vendor')?.value;\r\n const emai = this.estimationDetailsForm.get('email')?.value;\r\n const mob = this.estimationDetailsForm.get('mobileNo')?.value;\r\n\r\n this.DataForm = {\r\n vendorName: this.getVendor,\r\n mobile: this.getMobile,\r\n mI_System: newData.programmeName,\r\n component_Cat: newData.category.categoryName,\r\n component: newData.component.componentName,\r\n component_Size: newData.sizePrice.sizeOnly,\r\n price: parseFloat(newData.price),\r\n cML_SrNo: newData.cmlSerialNo,\r\n cmL_Certificate: newData.cmL_Certificate,\r\n cML_Validity: newData.cmlValidity,\r\n gST_Amnt: parseFloat(newData.gstAmount),\r\n gST_Rate: parseFloat(newData.gstRate),\r\n calculated_Price: parseFloat(newData.calculatedPrice),\r\n email_ID: this.getEmail\r\n };\r\n\r\n this.estimationTableData.push(this.DataForm);\r\n\r\n // Reset the form except gstRate\r\n this.estimationDetailsForm.reset();\r\n\r\n // Restore the gstRate value after reset\r\n this.estimationDetailsForm.get('gstRate')?.setValue(gstRateValue);\r\n this.estimationDetailsForm.get('vendor')?.setValue(ven);\r\n this.estimationDetailsForm.get('mobileNo')?.setValue(mob);\r\n this.estimationDetailsForm.get('email')?.setValue(emai);\r\n\r\n }\r\n }\r\n\r\n\r\n onDeleteEstimationRow(val, index) {\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n // message: `Do you want to remove Estimation of Vendor: ${val?.vendor} and Amount ${val?.Amount}?`,\r\n message: `Do you want to remove estimation?`,\r\n header: 'Delete Confirmation',\r\n icon: 'pi pi-info-circle',\r\n acceptButtonStyleClass: 'p-button-danger p-button-text',\r\n rejectButtonStyleClass: 'p-button-text p-button-text',\r\n acceptIcon: 'none',\r\n rejectIcon: 'none',\r\n\r\n accept: () => {\r\n this.estimationTableData.splice(index, 1);\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n },\r\n });\r\n }\r\n\r\n toggleRow(rowData: any) {\r\n if (this.expandedRows[rowData.landDetails]) {\r\n delete this.expandedRows[rowData.landDetails];\r\n } else {\r\n this.expandedRows[rowData.landDetails] = true;\r\n }\r\n }\r\n\r\n onRowSelect(val) {\r\n\r\n let farmerDataArr = val.data\r\n this.selectedFarmerForEstimation = [farmerDataArr];\r\n\r\n this.calValidationForEstimation(this.selectedFarmerForEstimation);\r\n if (!this.chunkIdToGetData) {\r\n this.estimationTableData = [];\r\n }\r\n }\r\n\r\n onRowUnselect(val) {\r\n\r\n this.selectedFarmerForEstimation = [];\r\n this.calValidationForEstimation(this.selectedFarmerForEstimation);\r\n this.estimationTableData = [];\r\n }\r\n\r\n clearGetData() {\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.estimationDetailsForm.reset();\r\n this.category = [];\r\n this.component = [];\r\n this.sizePrice = [];\r\n\r\n this.selectedOutletToGetData = null;\r\n this.selectedBenefitedAreaToGetData = null;\r\n this.agreementNoList = [];\r\n this.agreementNoToGetData = null;\r\n this.chunkList = [];\r\n this.chunkIdToGetData = null;\r\n\r\n this.estimationTableData = [];\r\n\r\n this.selectedFarmerForEstimation = [];\r\n }\r\n\r\n editPersonalDetails(val) {\r\n this.showUpdatePersonalDialog = true;\r\n\r\n this.selectedApplicationNo = val.APP_ID;\r\n this.selectedFarmerId = val.Farmer_ID;\r\n\r\n\r\n this.updatePersonalDetailsForm.patchValue({ name: val.Name });\r\n this.updatePersonalDetailsForm.patchValue({ fatherName: val.Father_name });\r\n this.updatePersonalDetailsForm.patchValue({ mobileNo: val.Mobile });\r\n\r\n this.updatePersonalDetailsForm.patchValue({ mfmbNo: val.MFMBNo });\r\n this.updatePersonalDetailsForm.patchValue({ pppId: val.PPP_ID });\r\n this.updatePersonalDetailsForm.patchValue({ casteCode: val.Caste_Code });\r\n\r\n\r\n // let village = this.villageList?.filter(val => val?.Code === val?.Village_Code)[0];\r\n let village = this.villageList?.find(({ val }) => val?.Code === val?.Village_Code);\r\n\r\n // this.updatePersonalDetailsForm.villageCode.setValue(village?.Name);\r\n // this.selectedVillage = village;\r\n\r\n this.updatePersonalDetailsForm.patchValue({ villageCode: village });\r\n this.updatePersonalDetailsForm.patchValue({ componentMaster: val.ProposedSystemId });\r\n this.updatePersonalDetailsForm.patchValue({ farmerCategory: val.FarmerCategory });\r\n\r\n this.updatePersonalDetailsForm.patchValue({ aadharNo: val.Aadhar_No });\r\n this.updatePersonalDetailsForm.patchValue({ aadharPhotoPath: val.Aadhaar_Copy_Upload });\r\n this.updatePersonalDetailsForm.patchValue({ isSubsidyAvailabe: val.IsSubsidyAvailabe });\r\n\r\n this.onSelectSubsidyAvailUpdate(val.IsSubsidyAvailabe);\r\n\r\n this.updatePersonalDetailsForm.patchValue({ installedSystem: val.InstalledSystem1 });\r\n this.updatePersonalDetailsForm.patchValue({ yearSubsudy: val.YearSubsudy });\r\n this.updatePersonalDetailsForm.patchValue({ onCostSubsidyBased: val.OnCostSubsidyBased });\r\n this.updatePersonalDetailsForm.patchValue({ departmentSubsidy: val.DepartmentSubsidy });\r\n }\r\n\r\n deletePersonalDetails(val) {\r\n\r\n let reqBody = {\r\n appId: val?.APP_ID,\r\n contractorId: this.contractorId,\r\n agreementNo: this.agreementNoToGetData?.AgreementNo,\r\n outletId: this.selectedOutletToGetData?.OutletId,\r\n ChunkId: this.chunkIdToGetData?.ChunkId ? this.chunkIdToGetData?.ChunkId : 0,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress\r\n }\r\n\r\n\r\n this.delConfirmatioMsg(reqBody);\r\n }\r\n\r\n delConfirmatioMsg(reqBody) {\r\n this.confirmationService.confirm({\r\n target: event.target as EventTarget,\r\n message: `Do you want to delete ${reqBody?.appId} record? Once you delete this farmer data, estimation should also be deleted.`,\r\n header: 'Delete Confirmation',\r\n icon: 'pi pi-info-circle',\r\n acceptButtonStyleClass: \"p-button-danger p-button-text\",\r\n rejectButtonStyleClass: \"p-button-text p-button-text\",\r\n acceptIcon: \"none\",\r\n rejectIcon: \"none\",\r\n\r\n accept: () => {\r\n this.deleteFarmerPersonalData(reqBody);\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'info', summary: 'Rejected', detail: 'You have rejected' });\r\n }\r\n });\r\n }\r\n\r\n deleteFarmerPersonalData(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .deleteFarmerPersonalDetails(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n\r\n let resp: any = res;\r\n if (resp == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n\r\n this.hideGetDataButton = false;\r\n this.addedFarmerData = [];\r\n this.programWiseData = [];\r\n this.estimationTableData = [];\r\n\r\n this.clearGetData();\r\n\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Error Message',\r\n detail: resp,\r\n });\r\n }\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Delete(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${resp}`, JSON.stringify(reqBody));\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'EPC Work Delete Error(Farmer Data)', `${reqBody?.outletId}_${reqBody?.agreementNo}`, new Date(), `${err}`, JSON.stringify(reqBody));\r\n },\r\n });\r\n }\r\n\r\n onCloseUpdatePerDialog() {\r\n this.showUpdatePersonalDialog = false;\r\n }\r\n\r\n onClickAgreementNo() {\r\n let outletId = this.selectedOutletToGetData?.OutletId;\r\n let contractorId = this.selectedOutletToGetData?.ContractorCode;\r\n let agreementNo = this.agreementNoToGetData?.AgreementNo;\r\n\r\n this.getChunkIdsList(contractorId, agreementNo, outletId, this.userId, '');\r\n }\r\n\r\n getChunkIdsList(contractorId, agreementNo, outletId, userId, status) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getChunkIds(contractorId, agreementNo, outletId, userId, status)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.chunkList = res.map(val => ({\r\n ...val,\r\n combineData: `${val?.ChunkId}. ${val?.FarmerName} (${val?.AppId})`\r\n }));\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.chunkList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.estimationDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n })\r\n uploadElement.clear();\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

{{\r\n 'Item Details' | translate }}

\r\n
\r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n {{'CATEGORY_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n {{'COMPONENT_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n {{'SIZE_PRICE_IS_REQUIRED' | translate}}\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n {{'CML_SERIAL_NO_IS_REQUIRED' | translate}}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'CML_VALIDITY_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_CML_DOCUMENT\" | translate }}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
0\" class=\"card dashboardTable\" style=\"margin: 5px;\">\r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n {{'MI_SYSTEM'| translate}}\r\n {{'COMPONENT_CATEGORY'| translate}}\r\n {{'COMPONENT'| translate}}\r\n {{'COMPONENT_SIZE'| translate}}\r\n \r\n {{'CML_SERIAL_NO'| translate}}\r\n {{'CML_VALIDITY'| translate}}\r\n \r\n {{'ACTIONS'| translate}}\r\n\r\n \r\n \r\n \r\n \r\n {{rowIndex + 1}}\r\n \r\n {{product.mI_System.Program_Name}}\r\n {{product.component_Cat}}\r\n {{product.component}}\r\n {{product.component_Size}}\r\n \r\n {{product.cML_SrNo}}\r\n {{product.cML_Validity | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
0\" class=\"button-container-submit\">\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n {{ \"Component Details\" | translate }}\r\n \r\n
\r\n\r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'CATEGORY_'| translate}}\r\n {{'COMPONENT'| translate}}\r\n {{'COMPONENT_SIZE'| translate}}\r\n \r\n {{'CML Sr No'| translate}}\r\n {{'CML Validity'| translate}}\r\n {{'CML Certificate'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n \r\n \r\n {{consolidateData?.Component_Cat}}\r\n {{consolidateData?.Component}}\r\n {{consolidateData?.Component_Size}}\r\n \r\n {{consolidateData?.CML_SrNo }}\r\n {{consolidateData?.CML_Validity | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { BankDetail } from '../bank-details/bankDetails';\r\nimport { VendorDetails } from 'src/app/models/vendor-details.model';\r\n\r\n@Component({\r\n selector: 'app-vendor-details',\r\n templateUrl: './vendor-details.component.html',\r\n styleUrls: ['./vendor-details.component.scss'],\r\n providers: [MessageService, DatePipe]\r\n})\r\nexport class VendorDetailsComponent implements OnInit {\r\n farmersDetailsForm: FormGroup;\r\n filteredVillage: any[];\r\n vendorType:string;\r\n isSubmitted = false;\r\n isLoading = false;\r\n villageList: { Code: number, Name: string }[];\r\n vendorID: string = '';\r\n genderType: string;\r\n selectedVillage: any;\r\n isEditable: any;\r\n todayDate: Date;\r\n farmerData: any;\r\n ipAddress: any = '000.000.000';\r\n isCasteCertificateMandatory: boolean = false;\r\n isCasteCertificteOptional: boolean = false;\r\n isAadharVerified: boolean = false;\r\n isPanVerified:boolean=false;\r\n showAadharVerDialog: boolean = false;\r\n aadharNumber: any;\r\n panNumber:any;\r\n emdNumber:any;\r\n bankName:any;\r\n aadharVerOTP: number;\r\n timer: number = 60;\r\n intervalId: any;\r\n bankAccount={bankName:'',ifscCode:''};\r\n\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public openPPIDDialog: boolean = false;\r\n // public isMemberIdFound: boolean = false;\r\n // public PPPIdValue: any;\r\n public memberIdOTPValue: any;\r\n public pppIDData: any;\r\n public showPPPIdValidationBox: boolean = true;\r\n public isAadharNumberFound: boolean = false;\r\n public isPPPDataNotValidated: boolean = true;\r\n\r\n public fetchedFamilyData: any;\r\n public fetchedMemberId: any;\r\n public fetchedFamilyId: any;\r\n\r\n public showStatusMessage: boolean = false;\r\n public statusMessageText: any = 'nothingggg';\r\n public isErrorStatus: boolean = false;\r\n filteredBankList: any[];\r\n bankList: any;\r\n bnk: any;\r\n selectedVendorType: string;\r\n vendorTypes = [\r\n { label: 'Vendor', value: 'vendor' },\r\n { label: 'Supplier', value: 'supplier' }\r\n ];\r\n constructor(\r\n private productService: BankDetailService,\r\n private _fb: FormBuilder, \r\n private _personalDetalSer: FarmersDetailsService, \r\n private messageService: MessageService, \r\n private datePipe: DatePipe,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getBankNameList();\r\n this.getIP();\r\n this.todayDate = new Date();\r\n this.farmersDetailsForm = this._fb.group({\r\n vendorType:['',Validators.required],\r\n vendorsName: ['', Validators.required],\r\n address: ['', Validators.required],\r\n mobileNo: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(10)]],\r\n dob: [null, Validators.required],\r\n pincode: ['', Validators.required],\r\n emailId: ['', Validators.compose([Validators.required, Validators.email])],\r\n panNumber: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(10), Validators.pattern('[A-Z]{5}[0-9]{4}[A-Z]{1}')]],\r\n village: [this.selectedVillage, Validators.required],\r\n accountNumber:['',Validators.required],\r\n bankName:['',Validators.required],\r\n ifscCode:['',Validators.required],\r\n gstNumber:['',[Validators.required, Validators.minLength(15), Validators.maxLength(15),Validators.pattern(/^[0-9]{2}[A-Z]{5}[0-9]{4}[A-Z]{1}[1-9A-Z]{1}Z[0-9A-Z]{1}$/)]],\r\n bIS_Certificate_path:['', Validators.required],\r\n exp_Certificate: ['', Validators.required],\r\n undertaking_path: ['', Validators.required],\r\n bank_Gurantee: ['', Validators.required],\r\n pAN_path: ['', Validators.required],\r\n demand_Draft_path: ['', Validators.required],\r\n aadhaar_No: ['', [Validators.required, Validators.minLength(12), Validators.maxLength(12)]],\r\n aadhaar_path: ['', Validators.required],\r\n gST_Certificate_path: ['', Validators.required],\r\n tradeMark_Doc: ['', Validators.required],\r\n registration_Certificate_path: ['', Validators.required],\r\n predispatch_Report_path: ['', Validators.required],\r\n });\r\n this.selectedVendorType = 'vendor';\r\n this.LoadFarmerDetails();\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n\r\n if (this.farmerData?.Village_Code) {\r\n let village = this.villageList?.filter(val => val?.Code === this.farmerData?.Village_Code)[0]\r\n this.farmersFormControls.village.setValue(village?.Name);\r\n this.selectedVillage = village;\r\n }\r\n\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n // let phNo = sessionStorage.getItem('vendorPh');\r\n // this.farmersFormControls.mobileNo.setValue(phNo);\r\n // console.log(phNo);\r\n this.getCasteMaster()\r\n }\r\n get f() {\r\n return this.farmersDetailsForm.controls;\r\n }\r\n onVendorTypeChange(value: string) {\r\n this.selectedVendorType = value;\r\n if (value === 'vendor') {\r\n this.farmersDetailsForm.get('vendorsName').setValidators(Validators.required);\r\n this.farmersDetailsForm.get('supplierName').clearValidators();\r\n } else {\r\n this.farmersDetailsForm.get('supplierName').setValidators(Validators.required);\r\n this.farmersDetailsForm.get('vendorsName').clearValidators();\r\n }\r\n this.farmersDetailsForm.get('vendorsName').updateValueAndValidity();\r\n this.farmersDetailsForm.get('supplierName').updateValueAndValidity();\r\n }\r\n getCasteMaster() {\r\n this._personalDetalSer.getCasteMatserData().subscribe(res => {\r\n })\r\n }\r\n filterBank(event: any) {\r\n console.log(event);\r\n\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.bankList.length; i++) {\r\n const bank = this.bankList[i];\r\n if (bank.Bank_NAME.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(bank);\r\n }\r\n }\r\n\r\n this.filteredBankList = filtered;\r\n console.log(this.filteredBankList);\r\n }\r\n getBankNameList() {\r\n this.productService.getAllBankNames().subscribe((data) => {\r\n console.log(data);\r\n if (data) {\r\n this.bankList = data;\r\n this.filteredBankList = data;\r\n console.log(this.bankList);\r\n // this.LoadFarmerDetails();\r\n }\r\n });\r\n }\r\n\r\n LoadFarmerDetails() {\r\n this.isLoading = true;\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this.farmersFormControls.mobileNo.setValue(phNo);\r\n let sub = this._personalDetalSer.getVendorDetails(phNo)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.isLoading = false;\r\n if (data && data.length > 0) {\r\n this.activityRecordService.activityRecord(phNo, 'vendor Details', '', new Date(), 'Success');\r\n let farmerData = data[0];\r\n if (farmerData) {\r\n this.farmerData = farmerData;\r\n this.isEditable = farmerData.IsEdit;\r\n this.farmersFormControls.vendorType.setValue(farmerData.Vendor_TypeId);\r\n this.farmersFormControls.vendorsName.setValue(farmerData.Vendor_Name);\r\n this.farmersFormControls.gstNumber.setValue(farmerData.gST_No);\r\n this.farmersFormControls.address.setValue(farmerData.Address);\r\n this.farmersFormControls.dob.setValue(farmerData.DOB ? new Date(farmerData.DOB) : null);\r\n this.farmersFormControls.pincode.setValue(farmerData.Pincode);\r\n this.farmersFormControls.emailId.setValue(farmerData.Email_ID);\r\n this.farmersFormControls.accountNumber.setValue(farmerData.Account_No);\r\n this.farmersFormControls.panNumber.setValue(farmerData.PAN_No);\r\n this.farmersFormControls.pAN_path.setValue(farmerData.pAN_path);\r\n this.farmersFormControls.bIS_Certificate_path.setValue(farmerData.bIS_Certificate_path);\r\n this.bnk = this.bankList?.find(val => val?.Bank_NAME == farmerData.Bank_Name);\r\n this.farmersFormControls.exp_Certificate.setValue(farmerData.exp_Certificate);\r\n this.farmersFormControls.undertaking_path.setValue(farmerData.undertaking_path);\r\n this.farmersFormControls.bank_Gurantee.setValue(farmerData.bank_Gurantee);\r\n this.farmersFormControls.demand_Draft_path.setValue(farmerData.demand_Draft_path);\r\n this.farmersFormControls.aadhaar_No.setValue(farmerData.aadhaar_No);\r\n this.farmersFormControls.aadhaar_path.setValue(farmerData.aadhaar_path);\r\n this.farmersFormControls.gST_Certificate_path.setValue(farmerData.gST_Certificate_path);\r\n this.farmersFormControls.tradeMark_Doc.setValue(farmerData.tradeMark_Doc);\r\n this.farmersFormControls.registration_Certificate_path.setValue(farmerData.registration_Certificate_path);\r\n this.farmersFormControls.predispatch_Report_path.setValue(farmerData.predispatch_Report_path);\r\n this.farmersFormControls.bankName.setValue(this.bnk?.bankName);\r\n this.bankAccount.bankName = this.bnk;\r\n this.farmersFormControls.ifscCode.setValue(farmerData.iFSC_Code);\r\n let village = this.villageList?.find(val => val?.Code === farmerData?.Village);\r\n this.farmersFormControls.village.setValue(village?.Name);\r\n this.selectedVillage = village;\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n this.isLoading = false;\r\n this.activityRecordService.activityRecord(phNo, 'Vendor Details', '', new Date(), err);\r\n this.farmersFormControls.mobileNo.setValue(phNo);\r\n }\r\n });\r\n this.subscriptions.push(sub);\r\n }\r\n \r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get farmersFormControls() {\r\n return this.farmersDetailsForm.controls;\r\n }\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n onFarmersFormSubmit() {\r\n this.isSubmitted = true;\r\n if (this.farmersDetailsForm.valid) {\r\n this.isLoading = true;\r\n const data = this.mapDataToFarmersModel();\r\n let farmerData = JSON.parse(window.sessionStorage.getItem('vendorDetails'));\r\n if (farmerData) {\r\n this._insert(data)\r\n } else {\r\n this._insert(data)\r\n }\r\n }\r\n }\r\n\r\n _update(data_) {\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this.loader.start();\r\n this._personalDetalSer.postVendersData(data_).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n this._personalDetalSer.getFarmerDetails(this.farmersDetailsForm.controls.mobile.value)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data) {\r\n location.reload();\r\n window.sessionStorage.setItem(\"vendorDetails\", JSON.stringify(data.Table[0]));\r\n }\r\n }\r\n });\r\n if (data == \"Farmer Details Updated Successfully!\") {\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Details updated Successfully.' });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: data });\r\n }\r\n this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), data, JSON.stringify(data_))\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Farmer Details not saved.' });\r\n this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), err, JSON.stringify(data_));\r\n }\r\n });\r\n }\r\n\r\n _insert(data_) {\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this.loader.start();\r\n this._personalDetalSer.postVendersData(data_).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n this._personalDetalSer.getVendorDetails(this.farmersDetailsForm.controls.mobile.value)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data) {\r\n location.reload();\r\n window.sessionStorage.setItem(\"VendorDetails\", JSON.stringify(data.Table[0]));\r\n }\r\n }\r\n });\r\n if (data == \"Vendor Details Inserted Successfully!\") {\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Vendor Details inserted Successfully.' });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: data });\r\n }\r\n this.activityRecordService.activityRecord(phNo, 'Insert Personal Details', '', new Date(), data, JSON.stringify(data_))\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.isLoading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Vendors Details not saved.' });\r\n this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), err, JSON.stringify(data_));\r\n }\r\n });\r\n }\r\n\r\n mapDataToFarmersModel(): VendorDetails {\r\n let farmerData = JSON.parse(window.sessionStorage.getItem('vendorDetails'));\r\n if (farmerData) {\r\n this.vendorID = farmerData.Vendor_ID;\r\n }\r\n let data: VendorDetails = {};\r\n let DOB: Date;\r\n let values = this.farmersDetailsForm.controls.dob.value.toString().split('-');\r\n if (values.length) {\r\n values.splice(1, 0, values.shift());\r\n DOB = values.join(\"-\");\r\n }\r\n data.vendorId = this.vendorID;\r\n data.vendor_TypeId=this.farmersDetailsForm.value['vendorType'];\r\n data.vendor_Name = this.farmersDetailsForm.value['vendorsName'];\r\n data.address = this.farmersDetailsForm.value['address'];\r\n data.mobile = this.farmersDetailsForm.value['mobileNo'];\r\n data.dOI = DOB ? this.toISOLocal(new Date(DOB)).replace(/.\\d+Z$/g, \"\") : this.toISOLocal(new Date((this.farmersDetailsForm.controls.dob.value))).replace(/.\\d+Z$/g, \"\");\r\n data.pincode = this.farmersDetailsForm.value['pincode'];;\r\n data.email_ID = this.farmersDetailsForm.value['emailId'];\r\n data.pAN_No=this.farmersDetailsForm.value['panNumber'];\r\n data.pAN_path=this.farmersDetailsForm.value['pAN_path'];\r\n data.bIS_Certificate_path=this.farmersDetailsForm.value['bIS_Certificate_path'];\r\n data.exp_Certificate=this.farmersDetailsForm.value['exp_Certificate'];\r\n data.undertaking_path=this.farmersDetailsForm.value['undertaking_path'];\r\n data.bank_Gurantee=this.farmersDetailsForm.value['bank_Gurantee'];\r\n data.demand_Draft_path=this.farmersDetailsForm.value['demand_Draft_path'];\r\n data.taN_No=this.farmersDetailsForm.value['aadhaar_No'];\r\n data.taN_path=this.farmersDetailsForm.value['aadhaar_path'];\r\n data.gST_Certificate_path=this.farmersDetailsForm.value['gST_Certificate_path'];\r\n data.gST_No=this.farmersDetailsForm.value['gstNumber'];\r\n data.tradeMark_Doc=this.farmersDetailsForm.value['tradeMark_Doc'];\r\n data.registration_Certificate_path=this.farmersDetailsForm.value['registration_Certificate_path'];\r\n data.predispatch_Report_path=this.farmersDetailsForm.value['predispatch_Report_path'];\r\n data.village = this.farmersDetailsForm.value['village'].Code;\r\n data.iFSC_Code=this.farmersDetailsForm.value['ifscCode'];\r\n data.bank_Name=this.farmersDetailsForm.value['bankName'].Bank_NAME;\r\n data.account_No=this.farmersDetailsForm.value['accountNumber'];\r\n return data;\r\n }\r\n\r\n onFarmerPhotoUpload(event) {\r\n this.messageService.add({ severity: 'info', summary: 'Success', detail: 'File Uploaded with Auto Mode' });\r\n }\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.farmersDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n })\r\n uploadElement.clear();\r\n\r\n }\r\n\r\n getVillageData() {\r\n this.loader.start();\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n this.loader.close();\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n }\r\n\r\n toISOLocal(d) {\r\n var z = n => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n return d.getFullYear() + '-'\r\n + z(d.getMonth() + 1) + '-' +\r\n z(d.getDate());\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n verifyAadhar(){\r\n this.validateAadharNumber(this.aadharNumber);\r\n }\r\n\r\n validateAadharNumber(aadharNumber){\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this.loader.start();\r\n this._personalDetalSer.validateAadhar(aadharNumber).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == \"OTP sent\") {\r\n this.showAadharVerDialog = true;\r\n this.startTimer();\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'OTP Sent Successfully.' });\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number', '', new Date(), data, aadharNumber);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(phNo, 'Validate Aadhar Number(error)', '', new Date(), err, aadharNumber);\r\n }\r\n });\r\n }\r\n\r\n hideDialog(){\r\n this.showAadharVerDialog = false;\r\n this.aadharVerOTP = null;\r\n }\r\n\r\n submitOTP(){\r\n this.validateOTP(this.aadharNumber, this.aadharVerOTP)\r\n }\r\n\r\n validateOTP(aadharNumber, otp){\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this.loader.start();\r\n this._personalDetalSer.validateOTP(aadharNumber, otp, '').pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.startsWith('s') || data.startsWith('S')) {\r\n this.isAadharVerified = true;\r\n this.hideDialog();\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Aadhar Validated Successfully.' });\r\n } else {\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: data });\r\n }\r\n this.activityRecordService.activityRecord(phNo, 'Validate OTP For Aadhar Verification', '', new Date(), data, aadharNumber);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n this.activityRecordService.activityRecord(phNo, 'Validate OTP For Aadhar Verification', '', new Date(), err, aadharNumber);\r\n }\r\n });\r\n }\r\n\r\n\r\n startTimer(): void {\r\n this.intervalId = setInterval(() => {\r\n if (this.timer > 0) {\r\n this.timer--;\r\n } else {\r\n clearInterval(this.intervalId);\r\n }\r\n }, 1000);\r\n }\r\n\r\n resendOTP(): void {\r\n this.timer = 60;\r\n this.startTimer();\r\n }\r\n\r\n editAadharNumber(){\r\n this.hideDialog();\r\n }\r\n\r\n findMemberIdFromUID(){\r\n this.showStatusMessage = true;\r\n this.getMemberIdFromUID();\r\n }\r\n\r\n clearPPPIdData(){\r\n this.memberIdOTPValue = null;\r\n this.showPPPIdValidationBox = true;\r\n this.fetchedFamilyData = null;\r\n this.statusMessageText = null;\r\n this.showStatusMessage = false;\r\n }\r\n\r\n hidePPIDDialog(){\r\n this.openPPIDDialog = false;\r\n this.clearPPPIdData();\r\n }\r\n\r\n getMemberIdFromUID(){\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this.loader.start(); \r\n this._personalDetalSer.getFamilyIdByUID('', '200411089222').pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data.message == \"Record Match\") {\r\n this.isErrorStatus = false;\r\n this.statusMessageText = 'PPP Id fetched from Aadhar Number. Verifying it...'\r\n this.fetchedFamilyData = data.result[0];\r\n this.fetchedMemberId = this.fetchedFamilyData.memberid;\r\n this.fetchedFamilyId = this.fetchedFamilyData.familyid;\r\n this.verifyPPPId(this.vendorID, this.fetchedFamilyId);\r\n this.messageService.add({ severity: 'success', summary: 'Successful', detail: 'Family Id Fetched' });\r\n } else {\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n this.messageService.add({ severity: 'info', summary: data.message, detail: data });\r\n }\r\n },\r\n error: (err) => {\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n verifyPPPId(vendorId, familyId){\r\n this.loader.start();\r\n this._personalDetalSer.getVerifyPPPID(vendorId, familyId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n data = data[0].Column1;\r\n if(data == \"Record not matched\"){\r\n this.openPPIDDialog = true;\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data;\r\n this.sendOTPforMEMID();\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: data });\r\n }else{\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n this.messageService.add({ severity: 'error', summary: 'Error', detail: data });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n this.openPPIDDialog = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n sendOTPforMEMID (){\r\n this.loader.start();\r\n this._personalDetalSer.OTPRequestforMEMID(this.fetchedMemberId).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data == \"OTP Sent to registered mobile No.\"){\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data;\r\n this.messageService.add({ severity: 'success', summary: 'OTP Sent', detail: data });\r\n }else{\r\n this.openPPIDDialog = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${data}. Please try again.`\r\n this.messageService.add({ severity: 'error', summary: 'OTP Not Sent', detail: data });\r\n } \r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.openPPIDDialog = false;\r\n this.isErrorStatus = true;\r\n this.statusMessageText = `${err}. Please try again.`\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n\r\n onClickBack(){\r\n this.showPPPIdValidationBox = true;\r\n this.clearPPPIdData();\r\n }\r\n\r\n onSubmitMemIdOTP(){\r\n this.loader.start();\r\n this._personalDetalSer.verifyOTPRequestForMID(this.fetchedMemberId, null, this.memberIdOTPValue).pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if(data.message == \"Record Match\"){\r\n this.isErrorStatus = false;\r\n this.statusMessageText = data.message;\r\n this.pppIDData = data.result;\r\n this.isPPPDataNotValidated = false;\r\n this.openPPIDDialog = false;\r\n this.messageService.add({ severity: 'success', summary: data.status , detail: data.message });\r\n }else{\r\n this.isErrorStatus = true;\r\n this.statusMessageText = data.message;\r\n this.messageService.add({ severity: 'error', summary: data.status , detail: data.message });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: err });\r\n }\r\n });\r\n }\r\n public loading: boolean = false;\r\n farmerId: any;\r\n bankAccountList: VendorDetails[] = [];\r\n getBankList() {\r\n this.loading = true;\r\n this.productService\r\n .getBankDetails(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n let d = data ?? [];\r\n this.bankAccountList = d.map((res) => {\r\n return {\r\n accountHolderName: res.Account_Holder_Name,\r\n accountNumber: res.Account_NO,\r\n bankName: this.bankList\r\n .filter((d) => d.BANK_ID === res.Bank_ID)\r\n .map((d) => d.Bank_NAME)[0],\r\n ifscCode: res.IFSC_code,\r\n image: res.Passbook_Copy_Upload,\r\n ...res,\r\n };\r\n });\r\n console.log(this.bankAccountList);\r\n },\r\n error: () => {\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Bank Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n \r\n}\r\n\r\n","\r\n\r\n
\r\n
\r\n
\r\n {{ \"VENDORS_DETAILS\" | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"VENDOR_TYPE_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ \"VENDOR_NAME_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {{\r\n farmersDetailsForm.controls.mobileNo.value\r\n }}\r\n
\r\n\r\n \r\n
\r\n {{ \"MOBILE_NO_IS_REQUIRED\" | translate }}\r\n
\r\n\r\n
\r\n {{ \"MOBILE_NO_SHOULD_BE_OF_10_DIGITS\" | translate }}\r\n
\r\n
\r\n {{ \"MOBILE_NO_SHOULD_BE_OF_10_DIGITS\" | translate }}\r\n
\r\n
\r\n {{ \"MBILE_NO_SHOULD_CONTAIN\" | translate }}\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n {{ \"ACCOUNT_NUMBER_IS_REQUIRED\" | translate }}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{ \"DATE_OF_BIRTH_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {{ \"EMAIL_ID_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n {{ \"EMAIL_IS_INVALID\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{ \"PAN_NO_IS_REQUIRED\" | translate }}\r\n
\r\n \r\n {{ \"PAN_NO_IS_SHOULD_BE_OF_10_DIGITS\" | translate }}\r\n \r\n \r\n {{ \"PAN_NO_IS_SHOULD_BE_OF_10_DIGITS\" | translate }}\r\n \r\n \r\n {{ \"INVALID_PAN_NO\" | translate }}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{ \"AADHAR_NO_IS_REQUIRED\" | translate }}\r\n
\r\n \r\n {{ \"AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS\" | translate }}\r\n \r\n \r\n {{ \"AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS\" | translate }}\r\n \r\n \r\n {{ \"AADHAR_NO_SHOULD_CONTAIN_ONLY_DIGITS\" | translate }}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"AADHAR_PHOTO_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n {{ \"GST_NUMBER_IS_REQUIRED\" | translate }}\r\n
\r\n \r\n {{ \"GST_NO_IS_SHOULD_BE_OF_15_DIGITS\" | translate }}\r\n \r\n \r\n {{ \"GST_NO_IS_SHOULD_BE_OF_15_DIGITS\" | translate }}\r\n \r\n \r\n {{ \"INVALID_GST_NO\" | translate }}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {{ \"CHOOSE_AND_UPLOAD_LAND_DOCUMENT\" | translate }}\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n {{ \"ADDRESS_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n {{ \"VILLAGE_NAME_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n {{ \"PINCODE_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n {{ \"CLICK_HERE_TO_EDIT_AADHAR_NUMBER\" | translate }}\r\n
\r\n\r\n \r\n\r\n
\r\n
0\">\r\n Resend OTP in: {{ timer }} Seconds\r\n
\r\n Resend OTP\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { VendorRegistrationsComponent } from 'src/app/components/vendor-registrations/vendor-registrations.component'\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { Location } from '@angular/common';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { first } from 'rxjs';\r\n@Component({\r\n selector: 'app-vendor-personal-details',\r\n templateUrl: './vendor-personal-details.component.html',\r\n styleUrls: ['./vendor-personal-details.component.scss'],\r\n providers: [VendorRegistrationsComponent]\r\n})\r\nexport class VendorPersonalDetailsComponent implements OnInit {\r\n vendorDetails: any;\r\n vendorFormData:any;\r\n VendorTableData:any;\r\n vendorAttachmentData:any;\r\n basicDetailsForm: FormGroup;\r\n public tableHeaderName = 'Completed Apps';\r\n miCompletedReport: MenuItem[];\r\n imageError: string = 'Document Not Found.';\r\n // @Input() mobilenumberEmitInput: any;\r\n\r\n public emailId: any;\r\n public deptRemarks: any;\r\n public statusList: any = [];\r\n public selectedStatus: any;\r\n public userId: any;\r\n public contractorId: any;\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService,\r\n private jeService: JEService, \r\n private veReg: VendorRegistrationsComponent, \r\n private location: Location,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n setTimeout(() => {\r\n this.statusList = [\r\n {\r\n name: 'Approve',\r\n id: 1\r\n },\r\n {\r\n name: 'Reject',\r\n id: 0\r\n }\r\n ]\r\n }, 200)\r\n \r\n // this.route.queryParams.subscribe(params => {\r\n // //const encryptedMobile = params['Mobile'];\r\n // const encryptedMobile = params['email'];\r\n // if (encryptedMobile) {\r\n // this.emailId = this.cryptoJsService.DecryptData(encryptedMobile);\r\n // this.getVendorFullDetailsByEmail(this.emailId);\r\n // }else{\r\n // }\r\n // });\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n this.contractorId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.getVendorFullDetailsByEmail();\r\n }\r\n\r\n getVendorFullDetailsByEmail() {\r\n this.jeService.getVendorFullDetailsByEmail(this.userId).subscribe({\r\n next: (data) => {\r\n this.vendorDetails = data;\r\n this.vendorFormData = data.personalDetails.$values[0];\r\n // this.VendorTableData = data.componentDetails.$values;\r\n this.vendorAttachmentData = data.attachmentDetails.$values;\r\n // Handle your form display logic here\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n });\r\n }\r\n removeAttachment(index: number) {\r\n if (confirm('Are you sure you want to remove this attachment?')) {\r\n this.vendorAttachmentData.splice(index, 1);\r\n }\r\n }\r\n}","\r\n
\r\n \r\n
","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first, Subscription } from 'rxjs';\r\nimport { VendorSignUp } from 'src/app/models/vendor-details.model';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { TicketService } from 'src/app/services/ticketservice';\r\n\r\n@Component({\r\n selector: 'app-vendor-signup',\r\n templateUrl: './vendor-signup.component.html',\r\n styleUrls: ['./vendor-signup.component.scss'],\r\n providers: [MessageService, TicketService],\r\n})\r\nexport class VendorSignupComponent implements OnInit {\r\n items: MenuItem[];\r\n activeIndex: number = 0;\r\n vendorForm: FormGroup;\r\n otpValidationForm: FormGroup;\r\n subscription: Subscription;\r\n countries: { code: string; name: string }[] = []\r\n vendorTypes = [\r\n { name: 'Manufacturer', code: 'manufacturer' },\r\n { name: 'Supplier', code: 'supplier' },\r\n ];\r\n indiaStates: string[] = [\r\n 'Andhra Pradesh',\r\n 'Arunachal Pradesh',\r\n 'Assam',\r\n 'Bihar',\r\n 'Chhattisgarh',\r\n 'Goa',\r\n 'Gujarat',\r\n 'Haryana',\r\n 'Himachal Pradesh',\r\n 'Jharkhand',\r\n 'Karnataka',\r\n 'Kerala',\r\n 'Madhya Pradesh',\r\n 'Maharashtra',\r\n 'Manipur',\r\n 'Meghalaya',\r\n 'Mizoram',\r\n 'Nagaland',\r\n 'Odisha',\r\n 'Punjab',\r\n 'Rajasthan',\r\n 'Sikkim',\r\n 'Tamil Nadu',\r\n 'Telangana',\r\n 'Tripura',\r\n 'Uttar Pradesh',\r\n 'Uttarakhand',\r\n 'West Bengal',\r\n 'Chandigarh',\r\n 'Dadra and Nagar Haveli and Daman and Diu',\r\n 'Lakshadweep',\r\n 'Delhi',\r\n 'Puducherry',\r\n 'Ladakh',\r\n 'Jammu and Kashmir',\r\n ];\r\n isIndiaSelected: boolean = false;\r\n bankList: any;\r\n filteredStates: any[] = [];\r\n selectedCountryCode: string;\r\n // uploadOptions = [\r\n // { name: 'Aadhar', code: 'aadhar_path' },\r\n // { name: 'PAN', code: 'pan_path' },\r\n // { name: 'BIS Certificate', code: 'BIS_Certificate_path' },\r\n // { name: 'Bank Guarantee', code: 'Bank_Guarantee_path' },\r\n // { name: 'Demand Draft', code: 'Demand_Draft_path' },\r\n // { name: 'TAN', code: 'TAN_path' },\r\n // { name: 'GST Certificate', code: 'GST_Certificate_path' },\r\n // { name: 'Trade Mark', code: 'TradeMark_Doc' },\r\n // { name: 'Registration Certificate', code: 'Registration_Certificate_path' },\r\n // { name: 'Undertaking', code: 'Undertaking_path' },\r\n // { name: 'Predispatch Report', code: 'Predispatch_Report_path' },\r\n // { name: 'Experience Certificate', code: 'Experience_Certificate' },\r\n // { name: 'Other', code: 'other' },\r\n // ];\r\n uploadOptions: any = [];\r\n documentList: any = [];\r\n filteredBankList: any[];\r\n selectedFile: File | null = null;\r\n bankAccount = { bankName: '', ifscCode: '' };\r\n todayDate: Date;\r\n\r\n public otpSentMessage: any = null;\r\n public openValidationDialog: boolean = false;\r\n public isEmailVerified: boolean = false;\r\n public isMobileVerified: boolean = false;\r\n public validationType: any = null;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private productService: BankDetailService,\r\n private ticketService: TicketService,\r\n private messageService: MessageService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private loader: AppLoaderService,\r\n private activityRecordService: ActivityRecordService,\r\n public router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.getBankNameList();\r\n this.getUploadOptions();\r\n setTimeout(() => {\r\n this.loadCountries();\r\n }, 100)\r\n this.items = [\r\n { label: 'Autentication' },\r\n { label: 'Basic Information' },\r\n { label: 'Upload Supporting Documents' },\r\n ];\r\n\r\n this.otpValidationForm = this.formBuilder.group({\r\n otp: ['',\r\n [\r\n Validators.required, \r\n ],\r\n ],\r\n })\r\n\r\n this.vendorForm = this.formBuilder.group({\r\n email: ['', [Validators.required, Validators.email]],\r\n password: ['', [Validators.required, Validators.minLength(8)]],\r\n confirmPassword: ['', Validators.required],\r\n vendorType: ['', Validators.required],\r\n vendorName: ['', Validators.required],\r\n gstNumber: [\r\n '',\r\n [Validators.required, Validators.pattern(/^[A-Z0-9]{15}$/)],\r\n ],\r\n country: ['', Validators.required],\r\n state: ['', Validators.required],\r\n address: ['', Validators.required],\r\n city: ['', Validators.required],\r\n dob: [null, Validators.required],\r\n mobile: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(10)]],\r\n panNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(10),\r\n Validators.maxLength(10),\r\n Validators.pattern('[A-Z]{5}[0-9]{4}[A-Z]{1}'),\r\n ],\r\n ],\r\n tanNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(10),\r\n Validators.maxLength(10),\r\n Validators.pattern('[A-Z]{4}[0-9]{5}[A-Z]{1}'),\r\n ],\r\n ],\r\n bankAccountNumber: ['', Validators.required],\r\n bankName: ['', Validators.required],\r\n iFSCCode: ['', Validators.required],\r\n // aadhaar_No: [\r\n // '',\r\n // [\r\n // Validators.required,\r\n // Validators.minLength(12),\r\n // Validators.maxLength(12),\r\n // ],\r\n // ],\r\n }, {\r\n validator: this.passwordMatchValidator('password', 'confirmPassword')\r\n });\r\n // });\r\n\r\n // this.filteredStates = this.indiaStates;\r\n // this.vendorForm.get('state').valueChanges.subscribe(stateCode => {\r\n // this.selectCountryByState(stateCode);\r\n // });\r\n this.vendorForm.addControl(\r\n 'documentType',\r\n this.formBuilder.control('')\r\n );\r\n\r\n this.ticketService.paymentComplete$.subscribe((personalInformation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Order submitted',\r\n detail: `Dear ${personalInformation.firstname} ${personalInformation.lastname}, your order is completed.`,\r\n });\r\n });\r\n }\r\n\r\n loadCountries() {\r\n this.countries = [\r\n { code: 'IN', name: 'India' },\r\n { code: 'AF', name: 'Afghanistan' },\r\n { code: 'AL', name: 'Albania' },\r\n { code: 'DZ', name: 'Algeria' },\r\n { code: 'AD', name: 'Andorra' },\r\n { code: 'AO', name: 'Angola' },\r\n { code: 'AG', name: 'Antigua and Barbuda' },\r\n { code: 'AR', name: 'Argentina' },\r\n { code: 'AM', name: 'Armenia' },\r\n { code: 'AU', name: 'Australia' },\r\n { code: 'AT', name: 'Austria' },\r\n { code: 'AZ', name: 'Azerbaijan' },\r\n { code: 'BS', name: 'Bahamas' },\r\n { code: 'BH', name: 'Bahrain' },\r\n { code: 'BD', name: 'Bangladesh' },\r\n { code: 'BB', name: 'Barbados' },\r\n { code: 'BY', name: 'Belarus' },\r\n { code: 'BE', name: 'Belgium' },\r\n { code: 'BZ', name: 'Belize' },\r\n { code: 'BJ', name: 'Benin' },\r\n { code: 'BT', name: 'Bhutan' },\r\n { code: 'BO', name: 'Bolivia' },\r\n { code: 'BA', name: 'Bosnia and Herzegovina' },\r\n { code: 'BW', name: 'Botswana' },\r\n { code: 'BR', name: 'Brazil' },\r\n { code: 'BN', name: 'Brunei' },\r\n { code: 'BG', name: 'Bulgaria' },\r\n { code: 'BF', name: 'Burkina Faso' },\r\n { code: 'BI', name: 'Burundi' },\r\n { code: 'CV', name: 'Cabo Verde' },\r\n { code: 'KH', name: 'Cambodia' },\r\n { code: 'CM', name: 'Cameroon' },\r\n { code: 'CA', name: 'Canada' },\r\n { code: 'CF', name: 'Central African Republic' },\r\n { code: 'TD', name: 'Chad' },\r\n { code: 'CL', name: 'Chile' },\r\n { code: 'CN', name: 'China' },\r\n { code: 'CO', name: 'Colombia' },\r\n { code: 'KM', name: 'Comoros' },\r\n { code: 'CG', name: 'Congo (Congo-Brazzaville)' },\r\n { code: 'CR', name: 'Costa Rica' },\r\n { code: 'HR', name: 'Croatia' },\r\n { code: 'CU', name: 'Cuba' },\r\n { code: 'CY', name: 'Cyprus' },\r\n { code: 'CZ', name: 'Czechia (Czech Republic)' },\r\n { code: 'CD', name: 'Democratic Republic of the Congo' },\r\n { code: 'DK', name: 'Denmark' },\r\n { code: 'DJ', name: 'Djibouti' },\r\n { code: 'DM', name: 'Dominica' },\r\n { code: 'DO', name: 'Dominican Republic' },\r\n { code: 'EC', name: 'Ecuador' },\r\n { code: 'EG', name: 'Egypt' },\r\n { code: 'SV', name: 'El Salvador' },\r\n { code: 'GQ', name: 'Equatorial Guinea' },\r\n { code: 'ER', name: 'Eritrea' },\r\n { code: 'EE', name: 'Estonia' },\r\n { code: 'SZ', name: 'Eswatini (formerly Swaziland)' },\r\n { code: 'ET', name: 'Ethiopia' },\r\n { code: 'FJ', name: 'Fiji' },\r\n { code: 'FI', name: 'Finland' },\r\n { code: 'FR', name: 'France' },\r\n { code: 'GA', name: 'Gabon' },\r\n { code: 'GM', name: 'Gambia' },\r\n { code: 'GE', name: 'Georgia' },\r\n { code: 'DE', name: 'Germany' },\r\n { code: 'GH', name: 'Ghana' },\r\n { code: 'GR', name: 'Greece' },\r\n { code: 'GD', name: 'Grenada' },\r\n { code: 'GT', name: 'Guatemala' },\r\n { code: 'GN', name: 'Guinea' },\r\n { code: 'GW', name: 'Guinea-Bissau' },\r\n { code: 'GY', name: 'Guyana' },\r\n { code: 'HT', name: 'Haiti' },\r\n { code: 'HN', name: 'Honduras' },\r\n { code: 'HU', name: 'Hungary' },\r\n { code: 'IS', name: 'Iceland' },\r\n { code: 'ID', name: 'Indonesia' },\r\n { code: 'IR', name: 'Iran' },\r\n { code: 'IQ', name: 'Iraq' },\r\n { code: 'IE', name: 'Ireland' },\r\n { code: 'IL', name: 'Israel' },\r\n { code: 'IT', name: 'Italy' },\r\n { code: 'JM', name: 'Jamaica' },\r\n { code: 'JP', name: 'Japan' },\r\n { code: 'JO', name: 'Jordan' },\r\n { code: 'KZ', name: 'Kazakhstan' },\r\n { code: 'KE', name: 'Kenya' },\r\n { code: 'KI', name: 'Kiribati' },\r\n { code: 'KW', name: 'Kuwait' },\r\n { code: 'KG', name: 'Kyrgyzstan' },\r\n { code: 'LA', name: 'Laos' },\r\n { code: 'LV', name: 'Latvia' },\r\n { code: 'LB', name: 'Lebanon' },\r\n { code: 'LS', name: 'Lesotho' },\r\n { code: 'LR', name: 'Liberia' },\r\n { code: 'LY', name: 'Libya' },\r\n { code: 'LI', name: 'Liechtenstein' },\r\n { code: 'LT', name: 'Lithuania' },\r\n { code: 'LU', name: 'Luxembourg' },\r\n { code: 'MG', name: 'Madagascar' },\r\n { code: 'MW', name: 'Malawi' },\r\n { code: 'MY', name: 'Malaysia' },\r\n { code: 'MV', name: 'Maldives' },\r\n { code: 'ML', name: 'Mali' },\r\n { code: 'MT', name: 'Malta' },\r\n { code: 'MH', name: 'Marshall Islands' },\r\n { code: 'MR', name: 'Mauritania' },\r\n { code: 'MU', name: 'Mauritius' },\r\n { code: 'MX', name: 'Mexico' },\r\n { code: 'FM', name: 'Micronesia' },\r\n { code: 'MD', name: 'Moldova' },\r\n { code: 'MC', name: 'Monaco' },\r\n { code: 'MN', name: 'Mongolia' },\r\n { code: 'ME', name: 'Montenegro' },\r\n { code: 'MA', name: 'Morocco' },\r\n { code: 'MZ', name: 'Mozambique' },\r\n { code: 'MM', name: 'Myanmar (formerly Burma)' },\r\n { code: 'NA', name: 'Namibia' },\r\n { code: 'NR', name: 'Nauru' },\r\n { code: 'NP', name: 'Nepal' },\r\n { code: 'NL', name: 'Netherlands' },\r\n { code: 'NZ', name: 'New Zealand' },\r\n { code: 'NI', name: 'Nicaragua' },\r\n { code: 'NE', name: 'Niger' },\r\n { code: 'NG', name: 'Nigeria' },\r\n { code: 'KP', name: 'North Korea' },\r\n { code: 'MK', name: 'North Macedonia' },\r\n { code: 'NO', name: 'Norway' },\r\n { code: 'OM', name: 'Oman' },\r\n { code: 'PK', name: 'Pakistan' },\r\n { code: 'PW', name: 'Palau' },\r\n { code: 'PS', name: 'Palestine State' },\r\n { code: 'PA', name: 'Panama' },\r\n { code: 'PG', name: 'Papua New Guinea' },\r\n { code: 'PY', name: 'Paraguay' },\r\n { code: 'PE', name: 'Peru' },\r\n { code: 'PH', name: 'Philippines' },\r\n { code: 'PL', name: 'Poland' },\r\n { code: 'PT', name: 'Portugal' },\r\n { code: 'QA', name: 'Qatar' },\r\n { code: 'RO', name: 'Romania' },\r\n { code: 'RU', name: 'Russia' },\r\n { code: 'RW', name: 'Rwanda' },\r\n { code: 'KN', name: 'Saint Kitts and Nevis' },\r\n { code: 'LC', name: 'Saint Lucia' },\r\n { code: 'VC', name: 'Saint Vincent and the Grenadines' },\r\n { code: 'WS', name: 'Samoa' },\r\n { code: 'SM', name: 'San Marino' },\r\n { code: 'ST', name: 'Sao Tome and Principe' },\r\n { code: 'SA', name: 'Saudi Arabia' },\r\n { code: 'SN', name: 'Senegal' },\r\n { code: 'RS', name: 'Serbia' },\r\n { code: 'SC', name: 'Seychelles' },\r\n { code: 'SL', name: 'Sierra Leone' },\r\n { code: 'SG', name: 'Singapore' },\r\n { code: 'SK', name: 'Slovakia' },\r\n { code: 'SI', name: 'Slovenia' },\r\n { code: 'SB', name: 'Solomon Islands' },\r\n { code: 'SO', name: 'Somalia' },\r\n { code: 'ZA', name: 'South Africa' },\r\n { code: 'KR', name: 'South Korea' },\r\n { code: 'SS', name: 'South Sudan' },\r\n { code: 'ES', name: 'Spain' },\r\n { code: 'LK', name: 'Sri Lanka' },\r\n { code: 'SD', name: 'Sudan' },\r\n { code: 'SR', name: 'Suriname' },\r\n { code: 'SE', name: 'Sweden' },\r\n { code: 'CH', name: 'Switzerland' },\r\n { code: 'SY', name: 'Syria' },\r\n { code: 'TJ', name: 'Tajikistan' },\r\n { code: 'TZ', name: 'Tanzania' },\r\n { code: 'TH', name: 'Thailand' },\r\n { code: 'TL', name: 'Timor-Leste' },\r\n { code: 'TG', name: 'Togo' },\r\n { code: 'TO', name: 'Tonga' },\r\n { code: 'TT', name: 'Trinidad and Tobago' },\r\n { code: 'TN', name: 'Tunisia' },\r\n { code: 'TR', name: 'Turkey' },\r\n { code: 'TM', name: 'Turkmenistan' },\r\n { code: 'TV', name: 'Tuvalu' },\r\n { code: 'UG', name: 'Uganda' },\r\n { code: 'UA', name: 'Ukraine' },\r\n { code: 'AE', name: 'United Arab Emirates' },\r\n { code: 'GB', name: 'United Kingdom' },\r\n { code: 'US', name: 'United States of America' },\r\n { code: 'UY', name: 'Uruguay' },\r\n { code: 'UZ', name: 'Uzbekistan' },\r\n { code: 'VU', name: 'Vanuatu' },\r\n { code: 'VA', name: 'Vatican City' },\r\n { code: 'VE', name: 'Venezuela' },\r\n { code: 'VN', name: 'Vietnam' },\r\n { code: 'YE', name: 'Yemen' },\r\n { code: 'ZM', name: 'Zambia' },\r\n { code: 'ZW', name: 'Zimbabwe' },\r\n\r\n // ... Add other countries here\r\n ];\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n onCountryChange(event: any): void {\r\n const selectedCountry = event.value.name;\r\n if (selectedCountry === 'India') {\r\n this.isIndiaSelected = true;\r\n let va = [];\r\n this.indiaStates.forEach((x) => {\r\n va.push({ code: x, name: x });\r\n });\r\n this.filteredStates = va;\r\n this.vendorForm.get('state').setValue(null);\r\n } else {\r\n this.isIndiaSelected = false;\r\n this.filteredStates = [];\r\n this.vendorForm.get('state').setValue('');\r\n }\r\n console.log('Filtered States:', this.filteredStates);\r\n }\r\n\r\n // checkPasswords(group: FormGroup) {\r\n // const password = group.get('password').value;\r\n // const confirmPassword = group.get('confirmPassword').value;\r\n // return password === confirmPassword ? null : { notMatching: true };\r\n // }\r\n passwordMatchValidator(password: string, confirmPassword: string) {\r\n return (formGroup: AbstractControl): { [key: string]: boolean } | null => {\r\n const passwordControl = formGroup.get(password);\r\n const confirmPasswordControl = formGroup.get(confirmPassword);\r\n\r\n if (!passwordControl || !confirmPasswordControl) {\r\n return null;\r\n }\r\n\r\n if (confirmPasswordControl.errors && !confirmPasswordControl.errors['notMatching']) {\r\n // Return if another validator has already found an error on the confirmPassword\r\n return null;\r\n }\r\n\r\n if (passwordControl.value !== confirmPasswordControl.value) {\r\n confirmPasswordControl.setErrors({ notMatching: true });\r\n } else {\r\n confirmPasswordControl.setErrors(null);\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n prevPage() {\r\n if (this.activeIndex > 0) {\r\n this.activeIndex--;\r\n }\r\n }\r\n\r\n nextPage() {\r\n if (\r\n (!this.isEmailVerified || \r\n !this.isMobileVerified ||\r\n this.vendorForm.value['password'] == null || this.vendorForm.value['password'] == '' ||\r\n this.vendorForm.value['confirmPassword'] == null || this.vendorForm.value['confirmPassword'] == '' ||\r\n this.vendorForm.value['password'].length < 8 ||\r\n this.vendorForm.value['password'] != this.vendorForm.value['confirmPassword']) &&\r\n this.activeIndex == 0\r\n ) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Fill all required fields with proper validation',\r\n });\r\n\r\n return;\r\n }\r\n console.log(this.vendorForm.invalid)\r\n console.log(this.vendorForm.value)\r\n\r\n if(this.activeIndex as number == 1 && this.vendorForm.invalid){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Fill all required fields.',\r\n });\r\n return;\r\n }\r\n\r\n console.log(this.vendorForm.invalid)\r\n // console.log(this.vendorForm.get('documentType').invalid)\r\n // console.log(this.vendorForm.get('bankName').invalid)\r\n // console.log(this.vendorForm.get('bankName').valid)\r\n if (this.activeIndex < this.items.length - 1) {\r\n this.activeIndex++;\r\n }\r\n }\r\n\r\n getUploadOptions() {\r\n this.loader.start();\r\n this._personalDetalSer\r\n .getVendorRegDocTypeMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.uploadOptions = data;\r\n\r\n } else {\r\n this.uploadOptions = [];\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Upload otpions not loaded. ${data}`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.uploadOptions = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Error! ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n doc: any[];\r\n onUpload(event, docType, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n this.loader.start();\r\n docType = this.vendorForm.controls['documentType'].value;\r\n console.log(docType);\r\n this._personalDetalSer.uploadFile(data, phNo, docType?.DocType).subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.documentList.push({\r\n documentType: docType?.DocType,\r\n attachmentsDoc: resp.data,\r\n });\r\n // this.grievanceForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded Successfully',\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Oops! Someting went wrong.',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n uploadElement.clear();\r\n }\r\n\r\n isImage(path: string): boolean {\r\n return path\r\n ? /\\.(jpg|jpeg|png|gif|bmp|svg|webp)$/.test(path.toLowerCase())\r\n : false;\r\n }\r\n toISOLocal(d) {\r\n var z = (n) => ('0' + n).slice(-2);\r\n var off = d.getTimezoneOffset();\r\n off = Math.abs(off);\r\n return d.getFullYear() + '-' + z(d.getMonth() + 1) + '-' + z(d.getDate());\r\n }\r\n\r\n isSubmitted: boolean = false;\r\n vendorID: string = '';\r\n mapDataToFarmersModel(): VendorSignUp {\r\n let farmerData = JSON.parse(window.sessionStorage.getItem('vendorDetails'));\r\n if (farmerData) {\r\n this.vendorID = farmerData.Vendor_ID;\r\n }\r\n let data: VendorSignUp = {};\r\n let DOB: Date;\r\n let values = this.vendorForm.controls.dob.value.toString().split('-');\r\n if (values.length) {\r\n values.splice(1, 0, values.shift());\r\n DOB = values.join('-');\r\n }\r\n data.vendorId = this.vendorID;\r\n data.vendor_TypeId = this.vendorForm.value['vendorType'].name;\r\n data.vendor_Name = this.vendorForm.value['vendorName'];\r\n data.password = this.vendorForm.value['password'];\r\n data.address = this.vendorForm.value['address'];\r\n data.mobile = this.vendorForm.value['mobile'];\r\n // data.doi = dob ? this.toISOLocal(new Date(DOB)).replace(/.\\d+Z$/g, \"\") : this.toISOLocal(new Date((this.farmersDetailsForm.controls.dob.value))).replace(/.\\d+Z$/g, \"\");\r\n data.doi = DOB\r\n ? this.toISOLocal(new Date(DOB)).replace(/.\\d+Z$/g, '')\r\n : this.toISOLocal(new Date(this.vendorForm.controls.dob.value)).replace(\r\n /.\\d+Z$/g,\r\n ''\r\n );\r\n data.email_ID = this.vendorForm.value['email'];\r\n data.paN_No = this.vendorForm.value['panNo'];\r\n data.taN_No = this.vendorForm.value['tanNo'];\r\n data.gsT_No = this.vendorForm.value['gstNumber'];\r\n data.ifsC_Code = this.vendorForm.value['iFSCCode'];\r\n data.bank_Name = this.vendorForm.value['bankName'].Bank_NAME;\r\n data.account_No = this.vendorForm.value['bankAccountNumber'];\r\n data.country = this.vendorForm.value['country'].name;\r\n data.state = this.vendorForm.value['state'];\r\n data.city = this.vendorForm.value['city'];\r\n data.insertAttachments = this.documentList;\r\n return data;\r\n }\r\n\r\n _insert(data_) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(data_))\r\n }\r\n\r\n let phNo = sessionStorage.getItem('vendorPh');\r\n this.loader.start();\r\n this._personalDetalSer\r\n .postVendersData(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n \r\n if (data == 'Success') {\r\n this.vendorForm.reset();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n setTimeout(() => { this.router.navigate(['new-registration']) }, 3000)\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n this.activityRecordService.activityRecord(\r\n phNo,\r\n 'Insert Personal Details',\r\n '',\r\n new Date(),\r\n data,\r\n JSON.stringify(data_)\r\n );\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // this.isLoading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Vendors Details not saved.',\r\n });\r\n this.activityRecordService.activityRecord(\r\n phNo,\r\n 'Update Personal Details',\r\n '',\r\n new Date(),\r\n err,\r\n JSON.stringify(data_)\r\n );\r\n },\r\n });\r\n }\r\n\r\n isGeneratedFile(data_) {\r\n this._personalDetalSer\r\n .postVendersData(data_)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n // this.isLoading = false;\r\n this._personalDetalSer\r\n .getFarmerDetails(this.vendorForm.controls.mobile.value)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n console.log(data);\r\n if (data) {\r\n location.reload();\r\n window.sessionStorage.setItem(\r\n 'vendorDetails',\r\n JSON.stringify(data.Table[0])\r\n );\r\n }\r\n },\r\n });\r\n if (data == 'Farmer Details Updated Successfully!') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Farmer Details updated Successfully.',\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: data,\r\n });\r\n }\r\n // this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), data, JSON.stringify(data_))\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // this.isLoading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Farmer Details not saved.',\r\n });\r\n // this.activityRecordService.activityRecord(phNo, 'Update Personal Details', '', new Date(), err, JSON.stringify(data_));\r\n },\r\n });\r\n }\r\n onSubmit() {\r\n let allDocumentsUploaded = true;\r\n if (this.vendorForm.valid) {\r\n console.log(this.vendorForm.value);\r\n this.uploadOptions.forEach((option) => {\r\n if (option.Id !== 'Other') {\r\n const filtered = this.documentList.filter(\r\n (doc) => doc.documentType === option.DocType\r\n );\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.DocType + ' is Needed!',\r\n });\r\n allDocumentsUploaded = false;\r\n return;\r\n }\r\n }\r\n });\r\n // if(allDocumentsUploaded==true){\r\n // const data = this.mapDataToFarmersModel();\r\n // let farmerData = JSON.parse(window.sessionStorage.getItem('vendorDetails'));\r\n // if (farmerData) {\r\n // this._insert(data)\r\n // } else {\r\n // this._insert(data)\r\n // }\r\n // }\r\n\r\n if (allDocumentsUploaded) {\r\n const data = this.mapDataToFarmersModel();\r\n // let farmerData = JSON.parse(\r\n // window.sessionStorage.getItem('vendorDetails')\r\n // );\r\n // if (data) {\r\n // this._insert(data);\r\n // } else {\r\n this._insert(data);\r\n // }\r\n\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Form submitted successfully!',\r\n // });\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please fill all the mandatory fields.',\r\n });\r\n }\r\n }\r\n\r\n onFileChange(event: any) {\r\n const file = event.target.files[0];\r\n if (file) {\r\n this.selectedFile = file;\r\n // Handle file upload logic or validation here if needed\r\n } else {\r\n this.selectedFile = null;\r\n }\r\n }\r\n\r\n removeCaptureImg(i) {\r\n this.documentList.splice(i, 1);\r\n console.log(this.documentList, '*****');\r\n }\r\n filterBank(event: any) {\r\n console.log(event);\r\n\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.bankList.length; i++) {\r\n const bank = this.bankList[i];\r\n if (bank.Bank_NAME.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(bank);\r\n }\r\n }\r\n\r\n this.filteredBankList = filtered;\r\n console.log(this.filteredBankList);\r\n }\r\n getBankNameList() {\r\n this.productService.getAllBankNames().subscribe((data) => {\r\n console.log(data);\r\n if (data) {\r\n this.bankList = data;\r\n this.filteredBankList = data;\r\n console.log(this.bankList);\r\n // this.LoadFarmerDetails();\r\n }\r\n });\r\n }\r\n\r\n onClickValidate(val) {\r\n if(val == 'email'){\r\n this.otpValidationForm.get('otp').setValidators([\r\n Validators.required,\r\n Validators.minLength(4),\r\n Validators.maxLength(4),\r\n Validators.pattern('^[0-9]{4}$'),\r\n ]);\r\n this.otpValidationForm.get('otp').updateValueAndValidity();\r\n }else if(val == 'mobile'){\r\n this.otpValidationForm.get('otp').setValidators([\r\n Validators.required,\r\n Validators.minLength(6),\r\n Validators.maxLength(6),\r\n Validators.pattern('^[0-9]{6}$'),\r\n ]);\r\n this.otpValidationForm.get('otp').updateValueAndValidity();\r\n }\r\n \r\n this.validationType = val;\r\n console.log(val)\r\n console.log(this.vendorForm.value)\r\n if (val == 'email') {\r\n let reqBody = {\r\n 'EmailId': this.vendorForm.value['email']\r\n }\r\n\r\n this.getEmailOTP(reqBody);\r\n \r\n } else if (val == 'mobile') {\r\n\r\n let reqBody = {\r\n 'Mobile': this.cryptoJsService.Encrypt(this.vendorForm.value['mobile'])\r\n }\r\n\r\n this.getMobileOTP(reqBody);\r\n }\r\n }\r\n\r\n onSubmitOTP() {\r\n console.log(this.otpValidationForm.value);\r\n if (this.otpValidationForm.valid) {\r\n if (this.validationType == 'email') {\r\n let reqBody = {\r\n 'EmailId': this.vendorForm.value['email'],\r\n 'OTP': this.otpValidationForm.value['otp']\r\n }\r\n\r\n this.submitEmailOTP(reqBody);\r\n } else if (this.validationType == 'mobile') {\r\n console.log(this.vendorForm.value['mobile'])\r\n console.log(this.otpValidationForm.value['otp'])\r\n let reqBody = {\r\n 'MobileNo': this.cryptoJsService.Encrypt(this.vendorForm.value['mobile']),\r\n 'OTP': this.cryptoJsService.Encrypt(this.otpValidationForm.value['otp'])\r\n }\r\n\r\n this.submitMobileOTP(reqBody);\r\n }\r\n }\r\n }\r\n\r\n getEmailOTP(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .getEmailOTPVendorReg(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n \r\n console.log(data)\r\n data = JSON.parse(data)\r\n console.log(data)\r\n data = this.cryptoJsService.DecryptDataPayload(data?.data);\r\n console.log(data)\r\n\r\n if (data.startsWith('OTP sent on') || data.startsWith('OTP already sent')) {\r\n // this.otpSentMessage = `OTP Sucessfully sent on ${reqBody?.EmailId}`;\r\n this.otpSentMessage = `${data} (${reqBody?.EmailId})`;\r\n this.openValidationDialog = true;\r\n this.otpValidationForm.reset();\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n } else {\r\n this.openValidationDialog = false;\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n // this.activityRecordService.activityRecord(\r\n // phNo,\r\n // 'Email OTP sent for vendor registration',\r\n // '',\r\n // new Date(),\r\n // data,\r\n // JSON.stringify(data_)\r\n // );\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.openValidationDialog = false;\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Error! ${err}`,\r\n });\r\n // this.activityRecordService.activityRecord(\r\n // phNo,\r\n // 'Update Personal Details',\r\n // '',\r\n // new Date(),\r\n // err,\r\n // JSON.stringify(data_)\r\n // );\r\n },\r\n });\r\n }\r\n\r\n getMobileOTP(reqBody) {\r\n console.log(reqBody)\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .getMobileOTPVendorReg(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n \r\n data = JSON.parse(data)\r\n data = this.cryptoJsService.DecryptDataPayload(data?.data);\r\n console.log(data)\r\n\r\n if (data.startsWith('OTP sent Successfully') || data.startsWith('Already Sent OTP')) {\r\n // this.otpSentMessage = `OTP Sucessfully sent on ${this.vendorForm.value['mobile']}`;\r\n this.otpSentMessage = `${data} (${this.vendorForm.value['mobile']})`;\r\n this.openValidationDialog = true;\r\n this.otpValidationForm.reset();\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n } else {\r\n this.openValidationDialog = false;\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.openValidationDialog = false;\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Error! ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitEmailOTP(reqBody) {\r\n console.log(reqBody)\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .emailOTPValidationVendorReg(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data == 'Success') {\r\n this.isEmailVerified = true;\r\n this.openValidationDialog = false;\r\n this.otpSentMessage = null;\r\n this.otpValidationForm.reset();\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n } else {\r\n this.isEmailVerified = false;\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.isEmailVerified = false;\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Error! ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitMobileOTP(reqBody) {\r\n console.log(reqBody)\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .mobileOTPValidationVendorReg(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n \r\n // data = JSON.parse(data)\r\n // data = this.cryptoJsService.DecryptDataPayload(data?.data);\r\n // console.log(data)\r\n\r\n if (data == 'Success') {\r\n this.isMobileVerified = true;\r\n this.openValidationDialog = false;\r\n this.otpSentMessage = null;\r\n this.otpValidationForm.reset();\r\n\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n\r\n } else {\r\n this.isMobileVerified = false;\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.isMobileVerified = false;\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Error! ${err}`,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

Authentication

\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n {{ \"MOBILE_NO_IS_REQUIRED\" | translate }}\r\n
\r\n\r\n
\r\n {{ \"MOBILE_NO_SHOULD_BE_OF_10_DIGITS\" | translate }}\r\n
\r\n
\r\n {{ \"MOBILE_NO_SHOULD_BE_OF_10_DIGITS\" | translate }}\r\n
\r\n
\r\n {{ \"MBILE_NO_SHOULD_CONTAIN\" | translate }}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n Password is required.\r\n Password must be at least 8 characters\r\n long.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n Confirm Password is\r\n required.\r\n Passwords do not match.\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n

{{ \"BASIC_INFORMATION\" | translate }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n Registration Type is required.\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{ \"NAME_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ \"Date of Incorporation is required\" | translate }}\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{ \"GST_NUMBER_IS_REQUIRED\" | translate }}\r\n
\r\n
\r\n {{ \"GST_NO_IS_SHOULD_BE_OF_15_DIGITS\" | translate }}\r\n
\r\n
\r\n {{ \"GST_NO_IS_SHOULD_BE_OF_15_DIGITS\" | translate }}\r\n
\r\n
\r\n {{ \"INVALID_GST_NO\" | translate }}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n Address is required.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n City is required.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n Country is required.\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n State is required.\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n
\r\n

Bank Details

\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n TAN Number is required.\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n PAN Number is required.\r\n Invalid PAN Number format.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n Bank Account Number is\r\n required.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n IFSC Code is required.\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n Bank Name is required.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n Upload Supporting Documents\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n Document Type is required.\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{i+1}}.\r\n
\r\n

{{item.documentType ? item.documentType:\r\n item.DocumentType}}

\r\n \r\n \r\n
\r\n \r\n

\r\n {{'VIEW_DOC' |\r\n translate}}\r\n

\r\n \r\n \r\n View PDF\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n {{ otpSentMessage }}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n OTP is required.\r\n OTP must be a 4\r\n digit number.\r\n OTP must be a 6\r\n digit number.\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-rti',\r\n templateUrl: './rti.component.html',\r\n styleUrls: ['./rti.component.scss']\r\n})\r\nexport class RtiComponent implements OnInit {\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n\r\n }\r\n}\r\n","\r\n
1. State Public Information\r\n Officers
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
Sr.No.Name of OfficeDesignation of SPIOTelephone No.
1Head Office, MICADA, HaryanaOfficer on Special Duty 0172 2567034
2MICAD Circle RohtakSuperintending Engineer (SPIO)01262-256006
3MICAD Circle KarnalSuperintending Engineer (SPIO)0184-2271054
4MICAD Circle HisarSuperintending Engineer (SPIO)01662-227369
5MICAD Division RohtakExecutive Engineer(SPIO)01262-254552
6MICAD Division JhajjarExecutive Engineer(SPIO)01251-257076
7MICAD Division JindExecutive Engineer(SPIO)01681-227072
8MICAD Division RewariExecutive Engineer(SPIO)01274-260404
9MICAD Division KaithalExecutive Engineer(SPIO)01746-224337
10MICAD Division KarnalExecutive Engineer(SPIO)0184-2271054
11MICAD Division KurukshetraExecutive Engineer(SPIO)01744-238740
12MICAD Division PanipatExecutive Engineer(SPIO)0180-2650805
13MICAD Division HisarExecutive Engineer(SPIO)01662-235425
14MICAD Division BhiwaniExecutive Engineer(SPIO)01664-244273
15MICAD Division FatehabadExecutive Engineer(SPIO)01667-227125
16MICAD Division SirsaExecutive Engineer(SPIO)01666-244129

\r\n\r\n
2. Assistant State Public\r\n Information Officers:
\r\n\r\n

1. Head\r\n office level Executive Engineer (Works)

\r\n

2. MICAD\r\n Circle level concerned Superintendent/Circle Head Draftsman\r\n

\r\n

3. MICAD\r\n Division level concerned Deputy Superintendent/Divisional\r\n Head Draftsman

\r\n\r\n
3. Appellate Authority(1st) Chief\r\n Engineer, MICADA Haryana Panchkula
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { SdoService } from 'src/app/services/sdo.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-sdo',\r\n templateUrl: './sdo.component.html',\r\n styleUrls: ['./sdo.component.scss']\r\n})\r\nexport class SdoComponent implements OnInit {\r\n public Data: any;\r\n autoId: any;\r\n application: any;\r\n \r\n\r\n constructor( private tokenService: TokenService,private messageService: MessageService,\r\n private sdoService: SdoService, private router: Router,private cryptoJsService: CryptoJsService,private loader: AppLoaderService) { }\r\n\r\n ngOnInit(): void {\r\n this.loadData();\r\n }\r\n loadData() {\r\n //let sessionToken = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n //let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.autoId= JSON.parse(payload)?.sub;\r\n // if (this.autoId) {\r\n // let encryptedAutoId = this.cryptoJsService.Encrypt(this.autoId.toString());\r\n // this.router.navigate(['view', 'form'], { queryParams: { autoId: encryptedAutoId } });\r\n // }else{\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n // }\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.autoId= JSON.parse(payload)?.sub;\r\n this.loader.start();\r\n this.sdoService\r\n .getAppForPhysicalVerMIDone(this.autoId)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n console.log('Response Data', data);\r\n this.Data = data;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Dashboard not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n selectviewform(form: any) {\r\n if (form.AutoId) {\r\n let encryptedAutoId = this.cryptoJsService.Encrypt(form.AutoId.toString());\r\n this.router.navigate(['sdo', 'view-form'], { queryParams: { autoId: encryptedAutoId } });\r\n }else{\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n

\r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FATHER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VENDOR_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'BOQ_COMPONENT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ESTIMATE_AMOUNT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'TOTAL_AMOUNT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PHYSICALLY_VERIFIED'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS_ENTERED_BY_JE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PLANT_SPACING'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_SHARE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'MI_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n {{'AMOUNT_DEPOSITED_BY_FARMER'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.AppID}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n {{product.FarmerName}}\r\n {{product.VendorName}}\r\n {{product.boqComponent}}\r\n {{product.EstimatedAmount}}\r\n {{product.TotalBilledAmount}}\r\n {{product.PhysicalyVerified}}\r\n {{product.JERemarks}}\r\n {{product.PlantSpacing}}\r\n {{product.FarmerShareAmount}}\r\n {{product.MIArea}}\r\n {{product.AmtPaidByFarmer}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { SdoService } from 'src/app/services/sdo.service';\r\nimport { MessageService, PrimeNGConfig } from 'primeng/api';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-view-form',\r\n templateUrl: './view-form.component.html',\r\n styleUrls: ['./view-form.component.scss']\r\n})\r\nexport class ViewFormComponent implements OnInit {\r\n dataOfPhysicalVerMIDone: any = [];\r\n autoId: any;\r\n items: any[];\r\n\r\n constructor(private tokenService: TokenService, private messageService: MessageService,\r\n private sdoService: SdoService, private route: ActivatedRoute, private router: Router, private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n this.getDataOfPhysicalVerMIDone(this.autoId);\r\n let autoId = 2;\r\n // let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n\r\n // this.sdoService.getAppForPhysicalVerMIDone(autoId)\r\n // .pipe()\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.dataOfPhysicalVerMIDone = data;\r\n // },\r\n // error: () => {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message'});\r\n // }\r\n // });\r\n\r\n }\r\n\r\n\r\n totalPrice = 0;\r\n totalSubsidyAmount = 0;\r\n totalFarmerShare = 0;\r\n getDataOfPhysicalVerMIDone(autoId) {\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = this.cryptoJsService.DecryptData(params?.autoId);\r\n console.log(\"autoId\", this.autoId)\r\n if (this.autoId) {\r\n this.sdoService.getDataOfPhysicalVerMIDone(this.autoId).pipe()\r\n .subscribe({\r\n next: (data: any) => {\r\n console.log('dd', data?.listDataForPhysicalVer)\r\n this.dataOfPhysicalVerMIDone = data;\r\n let sumOfPrice = 0;\r\n let sumOfSubsidy = 0;\r\n let sumOfFarmerShare = 0;\r\n this.dataOfPhysicalVerMIDone.map((row: any) => {\r\n sumOfSubsidy += row.SubsidyToFarmerAmount;\r\n console.log(sumOfSubsidy);\r\n sumOfFarmerShare += row.FarmerShareAmount;\r\n });\r\n this.dataOfPhysicalVerMIDone?.listDataForPhysicalVer.map((row: any) => {\r\n sumOfPrice += row.Price;\r\n console.log(sumOfPrice);\r\n })\r\n this.totalPrice = sumOfPrice;\r\n this.totalSubsidyAmount = sumOfSubsidy;\r\n this.totalFarmerShare = sumOfFarmerShare;\r\n console.log(this.totalPrice);\r\n },\r\n error: () => {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! data not loaded.' });\r\n }\r\n });\r\n\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be empty' });\r\n return;\r\n }\r\n }\r\n );\r\n\r\n\r\n }\r\n\r\n}\r\n","

\r\n
\r\n \r\n
\r\n

{{'FIELD_VERIFICATION_DATA'| translate}}:{{dataOfPhysicalVerMIDone.ProgramName}}

\r\n

{{'DATE_OF_VERIFIED'| translate}}:{{dataOfPhysicalVerMIDone.JEActionDate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'NAME_OF_VENDOR'| translate}}{{'FARMER_REGISTRATION_NO'| translate}}.{{'DISTRICT'| translate}}
{{dataOfPhysicalVerMIDone.VendorName}}{{dataOfPhysicalVerMIDone.AppID}}{{dataOfPhysicalVerMIDone.District}}
\r\n
\r\n
\r\n \r\n

\r\n\r\n \r\n 0\">\r\n
\r\n

{{'PHYSICAL_VERIFICATION'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
{{'S_NO'| translate}}.{{'COMPONENT'| translate}}{{'QUANTITY'| translate}}{{'SIZE'| translate}}{{'PRICE'| translate}}{{'SUBSIDY_AMOUNT'| translate}}{{'FARMER_APP_STATUS'| translate}}
{{i+1}}{{row.component}}{{row.EstimatedQuantity}}{{row.size}}{{row.Price}}{{dataOfPhysicalVerMIDone.SubsidyToFarmerAmount}}{{dataOfPhysicalVerMIDone.FarmerAppStatus}}
{{'TOTAL'| translate}}{{totalPrice}}{{totalSubsidyAmount}}
\r\n
\r\n
\r\n \r\n

\r\n\r\n \r\n 0\">\r\n
\r\n

{{'VENDOR_BOQ'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'S_NO'| translate}}{{'COMPONENT'| translate}}{{'QUANTITY'| translate}}{{'SIZE'| translate}}{{'PRICE'| translate}}{{'SUBSIDY_AMOUNT'| translate}}{{'FARMER_SHARE'| translate}}
{{i+1}}{{row.component}}{{row.EstimatedQuantity}}{{row.size}}{{row.Price}}{{dataOfPhysicalVerMIDone.SubsidyToFarmerAmount}}{{dataOfPhysicalVerMIDone.FarmerShareAmount}}
{{'TOTAL'| translate}}{{totalPrice}}{{totalSubsidyAmount}}{{totalFarmerShare}}
\r\n
\r\n
\r\n \r\n

\r\n\r\n \r\n 0\">\r\n
\r\n

{{'VENDOR_ESTIMATE'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'S_NO'| translate}}{{'COMPONENT'| translate}}{{'QUANTITY'| translate}}{{'SIZE'| translate}}{{'PRICE'| translate}}{{'SUBSIDY_AMOUNT'| translate}}{{'FARMER_SHARE'| translate}}{{'FARMER_APP_STATUS'| translate}}{{'FARMER_VENDOR_STATUS'| translate}}
{{i+1}}{{row.component}}{{row.EstimatedQuantity}}{{row.size}}{{row.Price}}{{dataOfPhysicalVerMIDone.SubsidyToFarmerAmount}}{{dataOfPhysicalVerMIDone.FarmerShareAmount}}{{dataOfPhysicalVerMIDone.farmerAppStatus}}{{dataOfPhysicalVerMIDone.farmerVendorStatus}}
{{'TOTAL'| translate}}{{totalPrice}}{{totalSubsidyAmount}}{{totalFarmerShare}}
\r\n
\r\n\r\n
\r\n \r\n

\r\n\r\n \r\n \r\n
\r\n

{{'BILL_UPLOADED'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'VIEW_BILL'| translate}}
{{'VIEW'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'TOTAL_AMOUNT_COMPONENT'| translate}}{{'AMOUNT_FITTING_ACCESSORIES'| translate}}{{'SUB_TOTAL'| translate}}{{'FARMER_SHARE'| translate}}{{'FARMER_SHARE_DEPOSITED'| translate}}
{{dataOfPhysicalVerMIDone.PhyVerTotalComponentAmount}}{{dataOfPhysicalVerMIDone.PhyVerBilledTransportAmount}}{{dataOfPhysicalVerMIDone.PhyVerTotalComponentAmount}}{{dataOfPhysicalVerMIDone.FarmerShareAmount}}{{dataOfPhysicalVerMIDone.AmtPaidByFarmer}}
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'AREA_MI_INSTALLED'| translate}}{{'PLANT_SPACING_IN'| translate}}{{'CROP_NAME'| translate}}{{'REMARKS_BY_JE'| translate}}
{{dataOfPhysicalVerMIDone.MIArea}}{{dataOfPhysicalVerMIDone.PlantSpacing}}{{dataOfPhysicalVerMIDone.CropName}}{{dataOfPhysicalVerMIDone.JERemarks}}
\r\n
\r\n
\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-statistics',\r\n templateUrl: './statistics.component.html',\r\n styleUrls: ['./statistics.component.scss']\r\n})\r\nexport class StatisticsComponent implements OnInit {\r\n selectedLang :any;\r\n images = [\r\n // {\r\n // previewImageSrc: '../../../assets/home/h-img3.png',\r\n // },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img1.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img2.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img4.png',\r\n },\r\n {\r\n previewImageSrc: '../../../assets/home/h-img5.png',\r\n },\r\n ];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n constructor(private translateService: TranslateService) {}\r\n ngOnInit() {\r\n if(localStorage.getItem('lang')) {\r\n this.selectedLang = localStorage.getItem('lang') ? JSON.parse(localStorage.getItem('lang')) : ''\r\n this.translateService.use(this.selectedLang .code)\r\n }\r\n }\r\n languageChange(event) {\r\n localStorage.setItem('lang', JSON.stringify(event.value))\r\n this.translateService.use(event.value.code)\r\n\r\n }\r\n}\r\n","\r\n

The details of\r\n the projects submitted to GoI, MoWR for approval and inclusion under ISBIG are as under:-\r\n

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Sr.No.Name of ProjectsPhysical Target(CCA in Ha.)\r\n Estimated cost of the Project(Rs. in lakh)Districts to be covered
A On-going Projects
1BCC-II 1,07,675 72984.18 Hisar, Sirsa,\r\n Fatebahad, Ambala, Kaithal, Kanal, Kurukshetra & Jind
2WJC-VI73,14449238.55\r\n Hisar, Rohtak, Jhajjar, Sonepat, Jind, Bhiwani & Panipat
3JLN-II88,70459495.00Jhajjar,\r\n Rewari, Mehandergarh, Bhiwani & Gurgaon
B New Projects
4BCC-III1,71,852111141.06Hisar,\r\n Sirsa, Fatebahad, Ambala, Kaithal, Kanal, Kurukshetra & Jind
\r\n 5WJC-VII75,34149567.71Hisar, Rohtak,\r\n Jhajjar, Sonepat, Jind, Bhiwani & Panipat
6Siwani Project 49,89931834.95\r\n Bhiwani
Total5,66,615374261.45NA

\r\n","// subdidy-details.component.ts\r\n\r\nimport {\r\n Component,\r\n EventEmitter,\r\n OnInit,\r\n Output,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { saveAs } from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs/operators';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Table } from 'primeng/table';\r\n\r\n@Component({\r\n selector: 'app-subdidy-details',\r\n templateUrl: './subdidy-details.component.html',\r\n styleUrls: ['./subdidy-details.component.scss'],\r\n providers: [MessageService],\r\n})\r\nexport class SubdidyDetailsComponent implements OnInit {\r\n @ViewChild('miSurvey') miSurvey!: Table; // Correctly typed ViewChild\r\n @Output() mobilenumberEmit = new EventEmitter();\r\n\r\n public subActionType: string = 'CompletedApps';\r\n public finYear: any;\r\n vendorCode: any;\r\n userType: any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public miCompletedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n public vendorRegId: any;\r\n public micada1Data: any = [];\r\n actionId: any = 18;\r\n public miTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Subsidary Details';\r\n public miCompletedReport: MenuItem[] = [];\r\n public loading: boolean = false;\r\n public items: any[] = [];\r\n public selectedStatus: any;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private jeService: JEService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.finYear = 'All';\r\n this.loadSubsidaryDetails();\r\n\r\n this.miCompletedReport = [\r\n {\r\n label: 'Download Excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel();\r\n },\r\n },\r\n // You can add more export options here if needed\r\n ];\r\n }\r\n\r\n\r\n exportExcel(): void {\r\n // Get the filtered data if a filter is applied; otherwise, use all data\r\n const modelData = this.miSurvey?.filteredValue || this.micada1Data || [];\r\n\r\n if (!modelData.length) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'No Data',\r\n detail: 'No data available to export.',\r\n });\r\n return;\r\n }\r\n\r\n import('xlsx').then((xlsx) => {\r\n const dataToSave = modelData.map((d: any) => ({\r\n 'APP ID': d.AppID,\r\n 'Program Name': d.Program_Name,\r\n Amt: d.Amt,\r\n 'Farmer Name': d.FarmerName,\r\n 'Vendor Name': d.VendorName,\r\n District: d.District,\r\n Block: d.Block,\r\n Village: d.Village,\r\n PlantSpacing: d.PlantSpacing,\r\n RowSpacing: d.RowSpacing,\r\n MIArea: d.MIArea,\r\n }));\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n\r\n this.saveAsExcelFile(excelBuffer, `MI_${this.tableHeaderName}`);\r\n }).catch((error) => {\r\n console.error('Error importing xlsx:', error);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Export Error',\r\n detail: 'An error occurred while exporting the data.',\r\n });\r\n });\r\n }\r\n\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n const EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n const EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n saveAs(data, `${fileName}_export_${new Date().getTime()}${EXCEL_EXTENSION}`);\r\n }\r\n\r\n loadSubsidaryDetails(): void {\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .GetSubsidaryDetails(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (Array.isArray(data) && data.length > 0) {\r\n this.micada1Data = data;\r\n } else {\r\n this.micada1Data = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'No Data',\r\n detail: 'Data Not Found.',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.micada1Data = [];\r\n this.loader.close();\r\n \r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: err?.message || 'An unexpected error occurred.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n refreshTable() {\r\n this.loadSubsidaryDetails();\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
{{tableHeaderName}}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n \r\n {{ 'APP_ID' | translate }}\r\n \r\n \r\n {{ 'PROGRAMME_NAME' | translate }}\r\n \r\n \r\n {{ 'AMOUNT' | translate }}\r\n \r\n \r\n {{ 'FARMER_NAME' | translate }}\r\n \r\n \r\n {{ 'VENDOR_NAME' | translate }}\r\n \r\n \r\n {{ 'DISTRICT' | translate }}\r\n \r\n \r\n {{ 'BLOCK' | translate }}\r\n \r\n \r\n {{ 'VILLAGE' | translate }}\r\n \r\n \r\n {{ 'PLANT_SPACING' | translate }}\r\n \r\n \r\n {{ 'ROW_SPACING' | translate }}\r\n \r\n \r\n {{ 'MI_AREA' | translate }}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ consolidateData?.AppID }}\r\n {{ consolidateData?.Program_Name }}\r\n {{ consolidateData?.Amt | currency:'INR' }}\r\n {{ consolidateData?.FarmerName }}\r\n {{ consolidateData?.VendorName }}\r\n {{ consolidateData?.District }}\r\n {{ consolidateData?.Block }}\r\n {{ consolidateData?.Village }}\r\n {{ consolidateData?.PlantSpacing }}\r\n {{ consolidateData?.RowSpacing }}\r\n {{ consolidateData?.MIArea }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, EventEmitter, OnInit, Output, OnDestroy } from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first, config, shareReplay } from 'rxjs';\r\nimport { ElementRef, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Table } from 'primeng/table';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage1-approved',\r\n templateUrl: './tank-stage1-approved.component.html',\r\n styleUrls: ['./tank-stage1-approved.component.scss']\r\n})\r\nexport class TankStage1ApprovedComponent implements OnInit {\r\n\r\n @ViewChild('tankTable', { static: true }) public tankDataTable: Table;\r\n\r\n num = 0;\r\n pondType = [{ name: 'Bricks Work' }, { name: 'Earth Work' }];\r\n displayTankDialog: boolean = false;\r\n wrongNotificationCheck: boolean = true;\r\n submitEstimateForm: FormGroup;\r\n submitFalseIntimateForm: FormGroup;\r\n appID: any;\r\n //flag:any;\r\n items: any[];\r\n selectedStatus: any;\r\n selectedStatusFalseIntimation: any;\r\n // remarks: any;\r\n isSubmitted: boolean = false;\r\n isLoading = false;\r\n userId: any;\r\n stage: any;\r\n pondList: any;\r\n public dialogData: any;\r\n public tankData: any;\r\n displayFileDialog: boolean;\r\n rotatableFilePath: any;\r\n stage1FalseIntimationremarks: any;\r\n stage1EstimateFormRemarks: string;\r\n read1: any;\r\n embedded: boolean;\r\n canEditPondData: boolean;\r\n // actualSubsidy_Stage1: number;\r\n // appId:number;\r\n actualSubsidy_Stage1: any;\r\n pondSurveyStage1Data: Object;\r\n latPosition: any;\r\n longPosition: any;\r\n PondVerData: any;\r\n // num: number;\r\n\r\n uploadOptions: any[];\r\n selectedCity1: any;\r\n displayCameraComponent: boolean = false;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n appId: any;\r\n // editBilledData: boolean = false;\r\n\r\n public JElatitude: any;\r\n public JElongitude: any;\r\n public remarks: any;\r\n\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n\r\n applicationNo: any;\r\n insertPondAttachments: any = [];\r\n displayCustom: boolean;\r\n activeIndex: number = 0;\r\n XENdisplayCustom: boolean;\r\n XENactiveIndex: number = 0;\r\n selectedRow: any;\r\n capturelist: Array<{ attachmentsDoc: any; documentType: any }>;\r\n Applicant_type: any;\r\n //insertPondAttachments: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n selectedSurveyType: any\r\n xenLogin: boolean = false;\r\n jeLogin: boolean = false;\r\n isDDAssociate: boolean = false;\r\n isDMICADA: boolean = false;\r\n isAdmin: boolean = false;\r\n adminUpdate: boolean = false;\r\n\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public isDD_EW: boolean = false;\r\n public isJE_EW: boolean = false;\r\n public noOfBeneficiary: any;\r\n\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private sanitizer: DomSanitizer,\r\n private cryptoJsService: CryptoJsService,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService\r\n ) {\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n \r\n if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DD Associate')){\r\n this.isDDAssociate = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DMICADA')){\r\n this.isDMICADA = true\r\n }\r\n else if(tokenData && (tokenData.role == 'ADMIN')){\r\n this.isAdmin = true\r\n }\r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n this.canEditPondData = false;\r\n } else {\r\n this.canEditPondData = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n \r\n this.submitEstimateForm = this._fb.group({\r\n topSizeLength: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n topSizeBreadth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n bottomSizeLength: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n bottomSizeBreadth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n depth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n latitude: [{ value: '', disabled: true }],\r\n longitude: [{ value: '', disabled: true }],\r\n volumeOfEarthWork: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n totalCostOfEarthWork: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n amountOfSubsidy: ['', Validators.required],\r\n measurementBookCopyPath: [''],\r\n StateShare_Amount: [{ value: '', disabled: true }],\r\n CenterShare_Amount: [{ value: '', disabled: true }],\r\n ABY: [{ value: '', disabled: true }],\r\n TopUp: [{ value: '', disabled: true }],\r\n Coverage_Area: [{ value: '', disabled: true }],\r\n // this.insertPondAttachments?.attachmentsDoc,\r\n //stage1EstimateFormRemarks: [''],\r\n });\r\n this.submitFalseIntimateForm = this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n let actionId: number;\r\n if (\r\n this.router.url.split('/')[1] == 'department' ||\r\n this.router.url.split('/')[1] == 'admin' ||\r\n this.router.url.split('/')[1] == 'ew-je' ||\r\n this.router.url.split('/')[1] == 'ew-department'\r\n ) {\r\n // actionId = 29;\r\n actionId = 6;\r\n } else {\r\n actionId = 5; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n this.images = this.insertPondAttachments;\r\n\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n this.selectedYear = res;\r\n this.loadData();\r\n \r\n this.tankDataTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.displayCameraComponent = false;\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n this.stage = 1;\r\n // this.loader.start();\r\n this.loading = true;\r\n\r\n this.remarks = null;\r\n \r\n let sub = this.pondService\r\n .getFarmerApplicationForPondVerStage1(this.userId, 'Approved', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Tank Stage-1 Survey(Approved)',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n this.tankData = data;\r\n \r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n }\r\n\r\n this.appVerificationModel = this.tankData;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.tankData = [];\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Tank Stage-1 Survey(Approved)',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'Applicant Type': d.Applicant_type,\r\n 'App type': d.FarmerName,\r\n 'District': d.district,\r\n 'block': d.block,\r\n \"Village\": d.village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.status,\r\n 'Remarks': d.remarks,\r\n 'Current Status': d.Status_Ar,\r\n 'User Type': d.UserType\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'Applicant_type', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'district', header: 'district' },\r\n { field: 'block', header: 'block' },\r\n { field: 'village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'UserType', header: 'User Type' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n get tankFormControls() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n\r\n get falseIntimationFormControls() {\r\n return this.submitFalseIntimateForm.controls;\r\n }\r\n\r\n public prev = false;\r\n public XENprev = false;\r\n selectTankRowData(product) {\r\n if(product?.PondVerificationStatus == '1' && this.isAdmin){\r\n this.adminUpdate = true;\r\n }\r\n this.selectedSurveyType = 1\r\n this.dialogData = [product];\r\n this.appID = product.appID;\r\n this.Applicant_type = product.Applicant_type;\r\n this.noOfBeneficiary = product?.NoOfBeneficiary;\r\n this.displayTankDialog = true; \r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n // this.submitFalseIntimateForm.disabled ? this.submitFalseIntimateForm.enable() : this.submitFalseIntimateForm.disable();\r\n // this.canEditPondData=true;\r\n this.submitEstimateForm.disabled\r\n ? this.submitEstimateForm.enable()\r\n : this.submitEstimateForm.enable();\r\n this.submitFalseIntimateForm.disabled\r\n ? this.submitFalseIntimateForm.enable()\r\n : this.submitFalseIntimateForm.enable();\r\n this.canEditPondData = false;\r\n }\r\n // else\r\n // {\r\n // // this.submitEstimateForm.controls.amountOfSubsidy.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.enable();\r\n // // this.canEditPondData=false;\r\n // // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n // // this.submitFalseIntimateForm.disabled ? this.submitFalseIntimateForm.enable() : this.submitFalseIntimateForm.disable();\r\n // // this.canEditPondData=true;\r\n\r\n // }\r\n this.appId = this.appID;\r\n this.populateAndCalculateData(null);\r\n this.loader.start();\r\n this.pondService\r\n .getPondVerDataByAppIdStage1(this.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Approved) Action Start', this.appID, new Date(), 'Success');\r\n \r\n this.PondVerData = data;\r\n this.loader.close();\r\n if(this.PondVerData.SurveyType == 0) {\r\n this.selectedSurveyType = '0'\r\n } else {\r\n this.selectedSurveyType = 1\r\n }\r\n if((this.router.url.startsWith('/je') && (this.PondVerData?.tankLat == null || this.PondVerData.tankLng == null || this.PondVerData?.tankLat == '' || this.PondVerData.tankLng == '')) || this.router.url.startsWith('/xen')){\r\n this.getGPSCoordinates();\r\n }\r\n if((this.router.url.startsWith('/ew-department'))){\r\n this.isDD_EW = true;\r\n }else{\r\n this.isDD_EW = false;\r\n }\r\n if((this.router.url.startsWith('/ew-je'))){\r\n this.isJE_EW = true;\r\n }else{\r\n this.isJE_EW = false;\r\n }\r\n // this.stage1EstimateFormRemarks = data.Remarks;\r\n sessionStorage.setItem('pondData', JSON.stringify(data));\r\n if(this.jeLogin) {\r\n for (let index = 0; index < this.PondVerData?.listImagePathJE?.length; index++) {\r\n this.PondVerData.listImagePathJE[index].attachmentRawUrl = this.PondVerData.listImagePathJE[index].ImagePath\r\n this.PondVerData.listImagePathJE[index].displayName = this.PondVerData.listImagePathJE[index].DocumentType\r\n this.PondVerData.listImagePathJE[index].attachment = this.PondVerData.listImagePathJE[index].ImagePath\r\n }\r\n this.insertPondAttachments = this.PondVerData?.listImagePathJE;\r\n }\r\n if(this.xenLogin) {\r\n for (let index = 0; index < this.PondVerData?.listImagePathXEN?.length; index++) {\r\n this.PondVerData.listImagePathXEN[index].attachmentRawUrl = this.PondVerData.listImagePathXEN[index].ImagePath\r\n this.PondVerData.listImagePathXEN[index].displayName = this.PondVerData.listImagePathXEN[index].DocumentType\r\n this.PondVerData.listImagePathXEN[index].attachment = this.PondVerData.listImagePathXEN[index].ImagePath\r\n\r\n }\r\n this.insertPondAttachments = this.PondVerData?.listImagePathXEN;\r\n }\r\n this.prev =\r\n Array.isArray(this.PondVerData?.listImagePathJE) &&\r\n this.PondVerData?.listImagePathJE.length > 0;\r\n this.XENprev =\r\n Array.isArray(this.PondVerData?.listImagePathXEN) &&\r\n this.PondVerData?.listImagePathXEN.length > 0;\r\n this.populateAndCalculateData(data);\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Approved) Action Start', this.appID, new Date(), err);\r\n\r\n if(this.router.url.startsWith('/je')){\r\n this.getGPSCoordinates();\r\n }\r\n this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n\r\n // if (product.Stage == 1) {\r\n // this.dialogData = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog = true;\r\n //}\r\n // else {\r\n // console.log(\"error\");\r\n // }\r\n }\r\n\r\n onCloseDialog() {\r\n // this.submitEstimateForm.reset();\r\n // this.displayTankDialog = false;\r\n // this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.displayTankDialog = false;\r\n this.isSubmitted = false;\r\n this.insertPondAttachments = [];\r\n this.adminUpdate = false;\r\n this.remarks = null;\r\n this.stage1EstimateFormRemarks='',\r\n this.latPosition = null;\r\n this.longPosition = null;\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement, step) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n if (step == 1) {\r\n let phNo = 'JEKAITHAL1';\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n \r\n if (resp.data) {\r\n this.tankFormControls.measurementBookCopyPath.setValue(resp.data);\r\n }\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n } else {\r\n this._personalDetalSer\r\n .uploadFile(data, this.appId, formcontrol)\r\n .subscribe((resp: any) => {\r\n \r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateForm.patchValue({\r\n [formcontrol]: resp.data,\r\n });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n }\r\n\r\n PostFalseIntimate(reqBody1) {\r\n this.loader.start();\r\n this.pondService\r\n .PondFalseIntimation(reqBody1)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Approved) Action Submit(False Intimate)', reqBody1?.appID, new Date(), 'Success', reqBody1);\r\n this.loader.close();\r\n \r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: \"Pond false Intimation Added Successfully\",\r\n });\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Approved) Action Submit(False Intimate)', reqBody1?.appID, new Date(), err, reqBody1);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! false Intimation Not Added',\r\n });\r\n }\r\n });\r\n }\r\n\r\n submitFalseIntimate() {\r\n if(this.submitFalseIntimateForm.get('uploadThePhotoTaken').value == ''){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Please Upload Photo',\r\n });\r\n return;\r\n }\r\n this.isSubmitted = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: '1',\r\n status: this.selectedStatusFalseIntimation.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateForm.get('remarks').value,\r\n photoPath: this.submitFalseIntimateForm.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks: this.stage1FalseIntimationremarks ? this.stage1FalseIntimationremarks : \"\",\r\n };\r\n this.PostFalseIntimate(reqBody1);\r\n this.onCloseDialog();\r\n }\r\n\r\n public invalid = false;\r\n submitEstimate() {\r\n this.isSubmitted = true;\r\n // console.log('Image List', this.images);\r\n // console.log('Document List', this.insertPondAttachments);\r\n let isValid = true;\r\n if (this.router.url.startsWith('/je') || (this.xenLogin && this.selectedSurveyType === 1)) {\r\n if (!this.insertPondAttachments || this.insertPondAttachments.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n }\r\n // this.capturelist = [\r\n // {\r\n // attachmentsDoc: this.insertPondAttachments[0].attachment,\r\n // documentType: this.insertPondAttachments[0].displayName,\r\n // },\r\n // ];\r\n }\r\n if (!this.stage1EstimateFormRemarks) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Remarks are required',\r\n });\r\n return;\r\n }\r\n // let body = [];\r\n // this.insertPondAttachments.forEach(document => {\r\n // body.push({\r\n // \"attachmentsDoc\": document?.attachment,\r\n // \"documentType\": document?.displayName,\r\n // })\r\n // })\r\n // console.log(\"body\",body);\r\n // this.insertPondAttachments=body;\r\n\r\n // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n if (this.submitEstimateForm.valid) {\r\n\r\n this.capturelist = []\r\n if(this.insertPondAttachments && this.insertPondAttachments.length > 0) {\r\n for (let index = 0; index < this.insertPondAttachments.length; index++) {\r\n let obj = {\r\n attachmentsDoc: this.insertPondAttachments[index].attachment,\r\n documentType: this.insertPondAttachments[index].displayName,\r\n }\r\n this.capturelist.push(obj)\r\n }\r\n }\r\n // if(this.remarks.invalid)\r\n // {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Remarks is required' });\r\n // return;\r\n // }\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n userID: userId,\r\n status: this.selectedStatus.flag,\r\n stageType: 0,\r\n // actualSubsidy_Stage1:this.estimateCost*0.60,\r\n //stateShare_Amount:parseFloat((this.actualSubsidy_Stage1 * 0.40).toString()),\r\n stateShare_Amount: 0,\r\n // centerShare_Amount:this.actualSubsidy_Stage1 * 0.60,\r\n centerShare_Amount: 0,\r\n ABY: 0,\r\n TopUp: 0,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress,\r\n totalAmtStage2: this.num.toString(),\r\n assistancePaidAtStage2: this.num.toString(),\r\n topLength: this.submitEstimateForm.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateForm.get('topSizeBreadth').value,\r\n topSize: `${\r\n this.submitEstimateForm.get('topSizeLength').value *\r\n this.submitEstimateForm.get('topSizeBreadth').value\r\n }`,\r\n bottomLength: this.submitEstimateForm.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateForm.get('bottomSizeBreadth').value,\r\n bottomSize: `${\r\n this.submitEstimateForm.get('bottomSizeLength').value *\r\n this.submitEstimateForm.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateForm.get('depth').value,\r\n volumeEarthWork: this.submitEstimateForm.get('volumeOfEarthWork').value,\r\n tankLat: this.submitEstimateForm.get('latitude').value ? this.submitEstimateForm.get('latitude').value : this.JElatitude,\r\n tankLng: this.submitEstimateForm.get('longitude').value ? this.submitEstimateForm.get('longitude').value : this.JElongitude,\r\n estimateCost: this.submitEstimateForm.get('totalCostOfEarthWork').value,\r\n actualSubsidy_Stage1:\r\n this.submitEstimateForm.get('amountOfSubsidy').value,\r\n estimateCopy: this.submitEstimateForm.get('measurementBookCopyPath')\r\n .value,\r\n remarks: this.stage1EstimateFormRemarks,\r\n surveyType: this.selectedSurveyType,\r\n // insertPondAttachments: body,\r\n insertPondAttachments: this.capturelist,\r\n //attachmentsDoc: this.\r\n // stateShare_Amount:this.actualSubsidy_Stage1 * 0.40,\r\n // centerShare_Amount:this.actualSubsidy_Stage1 * 0.60,\r\n };\r\n\r\n this.postVendorPondEstimate(reqBody);\r\n // this.onCloseDialog();\r\n }\r\n }\r\n\r\n wrongNotification(submitEstimateForm) {\r\n this.wrongNotificationCheck = !this.wrongNotificationCheck;\r\n\r\n if(!this.wrongNotificationCheck){\r\n this.selectedStatusFalseIntimation = this.items[1];\r\n }\r\n //this.submitEstimateForm.reset();\r\n // this.isSubmitted = false;\r\n\r\n submitEstimateForm = false;\r\n }\r\n\r\n postVendorPondEstimate(reqBody) {\r\n if(!((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || this.selectedSurveyType == 0)){\r\n if(reqBody.tankLat == null || reqBody.tankLng == null){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'GPS Error',\r\n detail: \"Invalid GPS Coordinates. Please enable location access and try again\",\r\n });\r\n return;\r\n }\r\n }\r\n \r\n this.loader.start();\r\n // console.log(this.tankDataTable,\"this.tankDataTable\")\r\n // console.log(reqBody,\"reqBody\")\r\n // let index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n // console.log(index,\"index\")\r\n // console.log(this.tankData,\"this.tankData90\")\r\n // console.log(this.tankData[index],\"123456\")\r\n // console.log(this.tankData,\"this.tankData90\")\r\n // this.tankData.forEach((e,i)=>{\r\n // console.log(i,\".....\",e.appID)\r\n // })\r\n // console.log(this.tankData[index],\"123456\")\r\n // this.tankData.splice(index,1)\r\n // console.log(this.tankData,\"this.tankData12\")\r\n // index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n // console.log(index,\"index\")\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.pondService\r\n //.vendorPondEstimate(reqBody)\r\n .pondSurveyStage1(reqBodyAfterEncypt)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Approved) Action Submit', reqBody?.appID, new Date(), data.toString(), reqBody);\r\n this.loader.close();\r\n this.remarks = null;\r\n \r\n this.pondSurveyStage1Data = data;\r\n if(data == \"S:Successfully Submitted\"){\r\n \r\n let index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n let index1=this.tankDataTable.filteredValue.findIndex(e=>{return e.appID==reqBody.appID})\r\n \r\n this.tankData.splice(index,1)\r\n this.tankDataTable.filteredValue.splice(index1,1)\r\n \r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.displayTankDialog = false; \r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n // this.loadData();\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n this.displayTankDialog = false; \r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Approved) Action Submit', reqBody?.appID, new Date(), err, reqBody);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Pond Estimation Added Successfully',\r\n // });\r\n // },\r\n });\r\n this.loader.close()\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(\r\n this.rotatableFilePath\r\n );\r\n }\r\n onCloseFileDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n\r\n populateAndCalculateData(data) {\r\n this.JElatitude = data?.tankLat;\r\n this.JElongitude = data?.tankLng;\r\n this.remarks = data?.Remarks;\r\n\r\n this.tankFormControls.topSizeLength.setValue(data?.topLength);\r\n this.tankFormControls.topSizeBreadth.setValue(data?.topBreadth);\r\n this.tankFormControls.latitude.setValue(this.latPosition);\r\n this.tankFormControls.longitude.setValue(this.longPosition);\r\n this.tankFormControls.totalCostOfEarthWork.setValue(data?.estimateCost);\r\n this.tankFormControls.depth.setValue(data?.depth);\r\n this.tankFormControls.amountOfSubsidy.setValue(data?.ActualSubsidy_Stage1);\r\n this.tankFormControls.measurementBookCopyPath.setValue(data?.estimateCopy);\r\n this.tankFormControls.bottomSizeLength.setValue(data?.bottomLength);\r\n this.tankFormControls.bottomSizeBreadth.setValue(data?.bottomBreadth);\r\n this.tankFormControls.volumeOfEarthWork.setValue(data?.VolumeEarthWork);\r\n\r\n if(this.router.url.startsWith('/je')){\r\n if(data?.tankLat != null && data.tankLng != null && data?.tankLat != '' && data.tankLng != '')\r\n this.tankFormControls.latitude.setValue(data?.tankLat);\r\n this.tankFormControls.longitude.setValue(data?.tankLng);\r\n }\r\n if(this.router.url.startsWith('/ew-department') || this.router.url.startsWith('/ew-je') || this.router.url.startsWith('/admin')){\r\n this.tankFormControls.StateShare_Amount.setValue(data?.StateShare_Amount);\r\n this.tankFormControls.CenterShare_Amount.setValue(data?.CenterShare_Amount);\r\n this.tankFormControls.TopUp.setValue(data?.TopUp);\r\n this.tankFormControls.ABY.setValue(data?.ABY);\r\n this.tankFormControls.Coverage_Area.setValue(data?.Coverage_Area);\r\n }\r\n }\r\n get hasPrevAttachments() {\r\n return (\r\n Array.isArray(this.PondVerData?.listImagePathJE) &&\r\n this.PondVerData?.listImagePathJE[0].length > 0\r\n );\r\n }\r\n pondSurveyStage1(reqBody) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let body = [];\r\n let element = {\r\n ActualSubsidy_Stage1: this.PondVerData?.ActualSubsidy_Stage1,\r\n appID: this.PondVerData?.App_ID,\r\n centerShare_Amount: this.PondVerData?.CenterShare_Amount,\r\n remarks: this.PondVerData?.Remarks,\r\n stateShare_Amount: this.PondVerData?.StateShare_Amount,\r\n volumeEarthWork: this.PondVerData?.VolumeEarthWork,\r\n bottomBreadth: this.PondVerData?.bottomBreadth,\r\n bottomLength: this.PondVerData?.bottomLength,\r\n bottomSize: this.PondVerData?.bottomSize,\r\n depth: this.PondVerData?.depth,\r\n // \"measurementCopy\": this.PondVerData?.estimateCopy,\r\n estimateCopy: this.PondVerData?.estimateCopy,\r\n // \"totalEstimatedCost\": this.PondVerData?.estimateCost,\r\n estimateCost: this.PondVerData?.estimateCost,\r\n topBreadth: this.PondVerData?.topBreadth,\r\n topLength: this.PondVerData?.topLength,\r\n // \"totalBilledAmount\": parseFloat(this.PondVerData?.TotalBilledAmount),\r\n tankLat: this.PondVerData?.tankLat\r\n ? this.PondVerData?.tankLat\r\n : this.latPosition,\r\n tankLng: this.PondVerData?.tankLng\r\n ? this.PondVerData?.tankLng\r\n : this.longPosition,\r\n // \"insertPondAttachments\": this.PondVerData?.insertPondAttachments[0],\r\n insertPondAttachments: this.PondVerData?.listImagePath,\r\n };\r\n body.push(element);\r\n sessionStorage.setItem('pondReqBody', JSON.stringify(body));\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n this.tankFormControls.latitude.setValue(pos.lat);\r\n this.tankFormControls.longitude.setValue(pos.lng);\r\n }).catch(error => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'GPS Coordinate not fetched. Please enable the location access and try again',\r\n });\r\n });\r\n }\r\n\r\n setCurrentPosition(){\r\n this.latPosition = null;\r\n this.longPosition = null;\r\n this.tankFormControls.latitude.setValue(this.latPosition);\r\n this.tankFormControls.longitude.setValue(this.longPosition);\r\n this.getGPSCoordinates();\r\n }\r\n\r\n _getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n images = [];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/);\r\n var q = Number(parts[1]);\r\n var side =\r\n window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]];\r\n return side * (q / 100);\r\n }\r\n\r\n openCamera() {\r\n this.displayCameraComponent = true;\r\n }\r\n\r\n onCloseCameraDialog() {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n if(!this.insertPondAttachments) {\r\n this.insertPondAttachments = []\r\n }\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], 'camera-captured' + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n\r\n this.route.queryParams.subscribe((params) => {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, 'camera-captured')\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `tankPhotoStage1_${new Date().getTime()}`;\r\n this.insertPondAttachments.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n displayName: fileName,\r\n });\r\n\r\n let documentListObject = {\r\n insertPondAttachments: this.insertPondAttachments,\r\n };\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n } else {\r\n // console.log('Error');\r\n }\r\n });\r\n });\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n\r\n imageClick(index: number) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n }\r\n XENimageClick(index: number) {\r\n this.XENactiveIndex = index;\r\n this.XENdisplayCustom = true;\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.appID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n\r\n // if(application.appID){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n\r\n // const link = this.router.serializeUrl(\r\n // this.router.createUrlTree([\r\n // this.router.url.split('/')[1],\r\n // 'print',\r\n // application.appID,\r\n // ,\r\n // '0',\r\n // '0',\r\n // '0',\r\n // '0',\r\n // ])\r\n // );\r\n // window.open(link, '_blank');\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n getSurveyType(event){\r\n this.selectedSurveyType = event\r\n }\r\n removeCaptureImg(index){\r\n this.insertPondAttachments.splice(index, 1)\r\n }\r\n isEmpty(data:any) {\r\n if(data == null || data == undefined || data == ''){\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n}\r\n\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LISTOF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n\r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'TOTAL_AREA' | translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION' | translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAIL' | translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'CURRENT_STATUS' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n {{product.Applicant_type}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.PendingCompletedDays}}\r\n {{product.LandDetail}}\r\n {{product.DeptRemarks}}\r\n {{product.status}}\r\n {{product.Status_Ar}}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'VOLUME_OF_EARTHWORK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_COST_OF_EARTHWORK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AMOUNT_OF_SUBSIDY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LATITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LONGITUDE_IS_REQUIRED'| translate}}
\r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'| translate}}

\r\n
\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'PLEASE_FILL_THE_DETAILS_ACCORDING_TO_THE_MB_AND_TANK_FOUND_DURING_PHYSICAL_VERIFICATION'| translate}}.\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{'UPLOAD_ATTACHMENT'| translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{item.displayName}} {{item.name}}

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">{{'MESSAGES'| translate}}:

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{ selectedStatusFalseIntimation?.status }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, OnInit, Output, OnDestroy } from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first, config, shareReplay } from 'rxjs';\r\nimport { ElementRef, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Table } from 'primeng/table';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage1-current',\r\n templateUrl: './tank-stage1-current.component.html',\r\n styleUrls: ['./tank-stage1-current.component.scss']\r\n})\r\nexport class TankStage1CurrentComponent implements OnInit {\r\n\r\n @ViewChild('tankTable', { static: true }) public tankDataTable: Table;\r\n\r\n num = 0;\r\n pondType = [{ name: 'Bricks Work' }, { name: 'Earth Work' }];\r\n displayTankDialog: boolean = false;\r\n wrongNotificationCheck: boolean = true;\r\n submitEstimateForm: FormGroup;\r\n submitFalseIntimateForm: FormGroup;\r\n appID: any;\r\n //flag:any;\r\n items: any[];\r\n selectedStatus: any;\r\n selectedStatusFalseIntimation: any;\r\n // remarks: any;\r\n isSubmitted: boolean = false;\r\n isLoading = false;\r\n userId: any;\r\n stage: any;\r\n pondList: any;\r\n public dialogData: any;\r\n public tankData: any;\r\n displayFileDialog: boolean;\r\n rotatableFilePath: any;\r\n stage1FalseIntimationremarks: any;\r\n stage1EstimateFormRemarks: string;\r\n read1: any;\r\n embedded: boolean;\r\n canEditPondData: boolean;\r\n // actualSubsidy_Stage1: number;\r\n // appId:number;\r\n actualSubsidy_Stage1: any;\r\n pondSurveyStage1Data: Object;\r\n latPosition: any;\r\n longPosition: any;\r\n PondVerData: any;\r\n // num: number;\r\n\r\n uploadOptions: any[];\r\n selectedCity1: any;\r\n displayCameraComponent: boolean = false;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n appId: any;\r\n // editBilledData: boolean = false;\r\n\r\n public JElatitude: any;\r\n public JElongitude: any;\r\n public remarks: any;\r\n\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n\r\n applicationNo: any;\r\n insertPondAttachments: any = [];\r\n displayCustom: boolean;\r\n activeIndex: number = 0;\r\n XENdisplayCustom: boolean;\r\n XENactiveIndex: number = 0;\r\n selectedRow: any;\r\n capturelist: Array<{ attachmentsDoc: any; documentType: any }>;\r\n Applicant_type: any;\r\n //insertPondAttachments: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n selectedSurveyType: any\r\n xenLogin: boolean = false;\r\n jeLogin: boolean = false;\r\n isDDAssociate: boolean = false;\r\n isDMICADA: boolean = false;\r\n isAdmin: boolean = false;\r\n adminUpdate: boolean = false;\r\n\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public isDD_EW: boolean = false;\r\n public isJE_EW: boolean = false;\r\n public noOfBeneficiary: any;\r\n\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private sanitizer: DomSanitizer,\r\n private cryptoJsService: CryptoJsService,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService\r\n ) {\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n \r\n if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DD Associate')){\r\n this.isDDAssociate = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DMICADA')){\r\n this.isDMICADA = true\r\n }\r\n else if(tokenData && (tokenData.role == 'ADMIN')){\r\n this.isAdmin = true\r\n }\r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n this.canEditPondData = false;\r\n } else {\r\n this.canEditPondData = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n \r\n this.submitEstimateForm = this._fb.group({\r\n topSizeLength: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n topSizeBreadth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n bottomSizeLength: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n bottomSizeBreadth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n depth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n latitude: [{ value: '', disabled: true }],\r\n longitude: [{ value: '', disabled: true }],\r\n volumeOfEarthWork: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n totalCostOfEarthWork: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n amountOfSubsidy: ['', Validators.required],\r\n measurementBookCopyPath: [''],\r\n StateShare_Amount: [{ value: '', disabled: true }],\r\n CenterShare_Amount: [{ value: '', disabled: true }],\r\n ABY: [{ value: '', disabled: true }],\r\n TopUp: [{ value: '', disabled: true }],\r\n Coverage_Area: [{ value: '', disabled: true }],\r\n // this.insertPondAttachments?.attachmentsDoc,\r\n //stage1EstimateFormRemarks: [''],\r\n });\r\n this.submitFalseIntimateForm = this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n let actionId: number;\r\n if (\r\n this.router.url.split('/')[1] == 'department' ||\r\n this.router.url.split('/')[1] == 'admin' ||\r\n this.router.url.split('/')[1] == 'ew-je' ||\r\n this.router.url.split('/')[1] == 'ew-department'\r\n ) {\r\n // actionId = 29;\r\n actionId = 6;\r\n } else {\r\n actionId = 5; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n this.images = this.insertPondAttachments;\r\n\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.tankDataTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.displayCameraComponent = false;\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n this.stage = 1;\r\n // this.loader.start();\r\n this.loading = true;\r\n\r\n this.remarks = null;\r\n \r\n let sub = this.pondService\r\n .getFarmerApplicationForPondVerStage1(this.userId, 'Current', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Tank Stage-1 Survey(Current)',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n }\r\n \r\n this.appVerificationModel=this.tankData;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.tankData = [];\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Tank Stage-1 Survey(Current)',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'Applicant Type': d.Applicant_type,\r\n 'App type': d.FarmerName,\r\n 'District': d.district,\r\n 'block': d.block,\r\n \"Village\": d.village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.status,\r\n 'Remarks': d.remarks,\r\n 'Current Status': d.Status_Ar,\r\n 'User Type': d.UserType\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'Applicant_type', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'district', header: 'district' },\r\n { field: 'block', header: 'block' },\r\n { field: 'village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'UserType', header: 'User Type' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n get tankFormControls() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n\r\n get falseIntimationFormControls() {\r\n return this.submitFalseIntimateForm.controls;\r\n }\r\n\r\n public prev = false;\r\n public XENprev = false;\r\n selectTankRowData(product) {\r\n if(product?.PondVerificationStatus == '1' && this.isAdmin){\r\n this.adminUpdate = true;\r\n }\r\n this.selectedSurveyType = 1\r\n this.dialogData = [product];\r\n this.appID = product.appID;\r\n this.Applicant_type = product.Applicant_type;\r\n this.noOfBeneficiary = product?.NoOfBeneficiary;\r\n this.displayTankDialog = true; \r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n // this.submitFalseIntimateForm.disabled ? this.submitFalseIntimateForm.enable() : this.submitFalseIntimateForm.disable();\r\n // this.canEditPondData=true;\r\n this.submitEstimateForm.disabled\r\n ? this.submitEstimateForm.enable()\r\n : this.submitEstimateForm.enable();\r\n this.submitFalseIntimateForm.disabled\r\n ? this.submitFalseIntimateForm.enable()\r\n : this.submitFalseIntimateForm.enable();\r\n this.canEditPondData = false;\r\n }\r\n // else\r\n // {\r\n // // this.submitEstimateForm.controls.amountOfSubsidy.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.enable();\r\n // // this.canEditPondData=false;\r\n // // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n // // this.submitFalseIntimateForm.disabled ? this.submitFalseIntimateForm.enable() : this.submitFalseIntimateForm.disable();\r\n // // this.canEditPondData=true;\r\n\r\n // }\r\n this.appId = this.appID;\r\n this.populateAndCalculateData(null);\r\n this.loader.start();\r\n this.pondService\r\n .getPondVerDataByAppIdStage1(this.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Current) Action Start', this.appID, new Date(), 'Success');\r\n \r\n this.PondVerData = data;\r\n this.loader.close();\r\n if(this.PondVerData.SurveyType == 0) {\r\n this.selectedSurveyType = '0'\r\n } else {\r\n this.selectedSurveyType = 1\r\n }\r\n if((this.router.url.startsWith('/je') && (this.PondVerData?.tankLat == null || this.PondVerData.tankLng == null || this.PondVerData?.tankLat == '' || this.PondVerData.tankLng == '')) || this.router.url.startsWith('/xen')){\r\n this.getGPSCoordinates();\r\n }\r\n if((this.router.url.startsWith('/ew-department'))){\r\n this.isDD_EW = true;\r\n }else{\r\n this.isDD_EW = false;\r\n }\r\n if((this.router.url.startsWith('/ew-je'))){\r\n this.isJE_EW = true;\r\n }else{\r\n this.isJE_EW = false;\r\n }\r\n // this.stage1EstimateFormRemarks = data.Remarks;\r\n sessionStorage.setItem('pondData', JSON.stringify(data));\r\n if(this.jeLogin) {\r\n for (let index = 0; index < this.PondVerData?.listImagePathJE?.length; index++) {\r\n this.PondVerData.listImagePathJE[index].attachmentRawUrl = this.PondVerData.listImagePathJE[index].ImagePath\r\n this.PondVerData.listImagePathJE[index].displayName = this.PondVerData.listImagePathJE[index].DocumentType\r\n this.PondVerData.listImagePathJE[index].attachment = this.PondVerData.listImagePathJE[index].ImagePath\r\n }\r\n this.insertPondAttachments = this.PondVerData?.listImagePathJE;\r\n }\r\n if(this.xenLogin) {\r\n for (let index = 0; index < this.PondVerData?.listImagePathXEN?.length; index++) {\r\n this.PondVerData.listImagePathXEN[index].attachmentRawUrl = this.PondVerData.listImagePathXEN[index].ImagePath\r\n this.PondVerData.listImagePathXEN[index].displayName = this.PondVerData.listImagePathXEN[index].DocumentType\r\n this.PondVerData.listImagePathXEN[index].attachment = this.PondVerData.listImagePathXEN[index].ImagePath\r\n\r\n }\r\n this.insertPondAttachments = this.PondVerData?.listImagePathXEN;\r\n }\r\n this.prev =\r\n Array.isArray(this.PondVerData?.listImagePathJE) &&\r\n this.PondVerData?.listImagePathJE.length > 0;\r\n this.XENprev =\r\n Array.isArray(this.PondVerData?.listImagePathXEN) &&\r\n this.PondVerData?.listImagePathXEN.length > 0;\r\n this.populateAndCalculateData(data);\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Current) Action Start', this.appID, new Date(), err);\r\n\r\n if(this.router.url.startsWith('/je')){\r\n this.getGPSCoordinates();\r\n }\r\n this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n\r\n // if (product.Stage == 1) {\r\n // this.dialogData = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog = true;\r\n //}\r\n // else {\r\n // console.log(\"error\");\r\n // }\r\n }\r\n\r\n onCloseDialog() {\r\n // this.submitEstimateForm.reset();\r\n // this.displayTankDialog = false;\r\n // this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.displayTankDialog = false;\r\n this.isSubmitted = false;\r\n this.insertPondAttachments = [];\r\n this.adminUpdate = false;\r\n this.remarks = null;\r\n this.stage1EstimateFormRemarks='',\r\n this.latPosition = null;\r\n this.longPosition = null;\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement, step) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n if (step == 1) {\r\n let phNo = 'JEKAITHAL1';\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n \r\n if (resp.data) {\r\n this.tankFormControls.measurementBookCopyPath.setValue(resp.data);\r\n }\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n } else {\r\n this._personalDetalSer\r\n .uploadFile(data, this.appId, formcontrol)\r\n .subscribe((resp: any) => {\r\n \r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateForm.patchValue({\r\n [formcontrol]: resp.data,\r\n });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n }\r\n\r\n PostFalseIntimate(reqBody1) {\r\n this.loader.start();\r\n this.pondService\r\n .PondFalseIntimation(reqBody1)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Current) Action Submit(False Intimate)', reqBody1?.appID, new Date(), 'Success', reqBody1);\r\n this.loader.close();\r\n \r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: \"Pond false Intimation Added Successfully\",\r\n });\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Current) Action Submit(False Intimate)', reqBody1?.appID, new Date(), err, reqBody1);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! false Intimation Not Added',\r\n });\r\n }\r\n });\r\n }\r\n\r\n submitFalseIntimate() {\r\n if(this.submitFalseIntimateForm.get('uploadThePhotoTaken').value == ''){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Please Upload Photo',\r\n });\r\n return;\r\n }\r\n this.isSubmitted = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: '1',\r\n status: this.selectedStatusFalseIntimation.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateForm.get('remarks').value,\r\n photoPath: this.submitFalseIntimateForm.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks: this.stage1FalseIntimationremarks ? this.stage1FalseIntimationremarks : \"\",\r\n };\r\n this.PostFalseIntimate(reqBody1);\r\n this.onCloseDialog();\r\n }\r\n\r\n public invalid = false;\r\n submitEstimate() {\r\n this.isSubmitted = true;\r\n // console.log('Image List', this.images);\r\n // console.log('Document List', this.insertPondAttachments);\r\n let isValid = true;\r\n if (this.router.url.startsWith('/je') || (this.xenLogin && this.selectedSurveyType === 1)) {\r\n if (!this.insertPondAttachments || this.insertPondAttachments.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n }\r\n // this.capturelist = [\r\n // {\r\n // attachmentsDoc: this.insertPondAttachments[0].attachment,\r\n // documentType: this.insertPondAttachments[0].displayName,\r\n // },\r\n // ];\r\n }\r\n if (!this.stage1EstimateFormRemarks) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Remarks are required',\r\n });\r\n return;\r\n }\r\n // let body = [];\r\n // this.insertPondAttachments.forEach(document => {\r\n // body.push({\r\n // \"attachmentsDoc\": document?.attachment,\r\n // \"documentType\": document?.displayName,\r\n // })\r\n // })\r\n // console.log(\"body\",body);\r\n // this.insertPondAttachments=body;\r\n\r\n // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n if (this.submitEstimateForm.valid) {\r\n\r\n this.capturelist = []\r\n if(this.insertPondAttachments && this.insertPondAttachments.length > 0) {\r\n for (let index = 0; index < this.insertPondAttachments.length; index++) {\r\n let obj = {\r\n attachmentsDoc: this.insertPondAttachments[index].attachment,\r\n documentType: this.insertPondAttachments[index].displayName,\r\n }\r\n this.capturelist.push(obj)\r\n }\r\n }\r\n // if(this.remarks.invalid)\r\n // {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Remarks is required' });\r\n // return;\r\n // }\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n userID: userId,\r\n status: this.selectedStatus.flag,\r\n stageType: 0,\r\n // actualSubsidy_Stage1:this.estimateCost*0.60,\r\n //stateShare_Amount:parseFloat((this.actualSubsidy_Stage1 * 0.40).toString()),\r\n stateShare_Amount: 0,\r\n ABY: 0,\r\n TopUp: 0,\r\n // centerShare_Amount:this.actualSubsidy_Stage1 * 0.60,\r\n centerShare_Amount: 0,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress,\r\n totalAmtStage2: this.num.toString(),\r\n assistancePaidAtStage2: this.num.toString(),\r\n topLength: this.submitEstimateForm.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateForm.get('topSizeBreadth').value,\r\n topSize: `${\r\n this.submitEstimateForm.get('topSizeLength').value *\r\n this.submitEstimateForm.get('topSizeBreadth').value\r\n }`,\r\n bottomLength: this.submitEstimateForm.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateForm.get('bottomSizeBreadth').value,\r\n bottomSize: `${\r\n this.submitEstimateForm.get('bottomSizeLength').value *\r\n this.submitEstimateForm.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateForm.get('depth').value,\r\n volumeEarthWork: this.submitEstimateForm.get('volumeOfEarthWork').value,\r\n tankLat: this.submitEstimateForm.get('latitude').value ? this.submitEstimateForm.get('latitude').value : this.JElatitude,\r\n tankLng: this.submitEstimateForm.get('longitude').value ? this.submitEstimateForm.get('longitude').value : this.JElongitude,\r\n estimateCost: this.submitEstimateForm.get('totalCostOfEarthWork').value,\r\n actualSubsidy_Stage1:\r\n this.submitEstimateForm.get('amountOfSubsidy').value,\r\n estimateCopy: this.submitEstimateForm.get('measurementBookCopyPath')\r\n .value,\r\n remarks: this.stage1EstimateFormRemarks,\r\n surveyType: this.selectedSurveyType,\r\n // insertPondAttachments: body,\r\n insertPondAttachments: this.capturelist,\r\n //attachmentsDoc: this.\r\n // stateShare_Amount:this.actualSubsidy_Stage1 * 0.40,\r\n // centerShare_Amount:this.actualSubsidy_Stage1 * 0.60,\r\n };\r\n\r\n this.postVendorPondEstimate(reqBody);\r\n // this.onCloseDialog();\r\n }\r\n }\r\n\r\n wrongNotification(submitEstimateForm) {\r\n this.wrongNotificationCheck = !this.wrongNotificationCheck;\r\n\r\n if(!this.wrongNotificationCheck){\r\n this.selectedStatusFalseIntimation = this.items[1];\r\n }\r\n //this.submitEstimateForm.reset();\r\n // this.isSubmitted = false;\r\n\r\n submitEstimateForm = false;\r\n }\r\n\r\n postVendorPondEstimate(reqBody) {\r\n if(!((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || this.selectedSurveyType == 0)){\r\n if(reqBody.tankLat == null || reqBody.tankLng == null){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'GPS Error',\r\n detail: \"Invalid GPS Coordinates. Please enable location access and try again\",\r\n });\r\n return;\r\n }\r\n }\r\n \r\n this.loader.start();\r\n // console.log(this.tankDataTable,\"this.tankDataTable\")\r\n // console.log(reqBody,\"reqBody\")\r\n // let index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n // console.log(index,\"index\")\r\n // console.log(this.tankData,\"this.tankData90\")\r\n // console.log(this.tankData[index],\"123456\")\r\n // console.log(this.tankData,\"this.tankData90\")\r\n // this.tankData.forEach((e,i)=>{\r\n // console.log(i,\".....\",e.appID)\r\n // })\r\n // console.log(this.tankData[index],\"123456\")\r\n // this.tankData.splice(index,1)\r\n // console.log(this.tankData,\"this.tankData12\")\r\n // index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n // console.log(index,\"index\")\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.pondService\r\n //.vendorPondEstimate(reqBody)\r\n .pondSurveyStage1(reqBodyAfterEncypt)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Current) Action Submit', reqBody?.appID, new Date(), data.toString(), reqBody);\r\n this.loader.close();\r\n this.remarks = null;\r\n \r\n this.pondSurveyStage1Data = data;\r\n if(data == \"S:Successfully Submitted\"){\r\n \r\n let index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n let index1=this.tankDataTable.filteredValue.findIndex(e=>{return e.appID==reqBody.appID})\r\n \r\n this.tankData.splice(index,1)\r\n this.tankDataTable.filteredValue.splice(index1,1)\r\n \r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.displayTankDialog = false; \r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n // this.loadData();\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n this.displayTankDialog = false; \r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Current) Action Submit', reqBody?.appID, new Date(), err, reqBody);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Pond Estimation Added Successfully',\r\n // });\r\n // },\r\n });\r\n this.loader.close()\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(\r\n this.rotatableFilePath\r\n );\r\n }\r\n onCloseFileDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n\r\n populateAndCalculateData(data) {\r\n this.JElatitude = data?.tankLat;\r\n this.JElongitude = data?.tankLng;\r\n this.remarks = data?.Remarks;\r\n\r\n this.tankFormControls.topSizeLength.setValue(data?.topLength);\r\n this.tankFormControls.topSizeBreadth.setValue(data?.topBreadth);\r\n this.tankFormControls.latitude.setValue(this.latPosition);\r\n this.tankFormControls.longitude.setValue(this.longPosition);\r\n this.tankFormControls.totalCostOfEarthWork.setValue(data?.estimateCost);\r\n this.tankFormControls.depth.setValue(data?.depth);\r\n this.tankFormControls.amountOfSubsidy.setValue(data?.ActualSubsidy_Stage1);\r\n this.tankFormControls.measurementBookCopyPath.setValue(data?.estimateCopy);\r\n this.tankFormControls.bottomSizeLength.setValue(data?.bottomLength);\r\n this.tankFormControls.bottomSizeBreadth.setValue(data?.bottomBreadth);\r\n this.tankFormControls.volumeOfEarthWork.setValue(data?.VolumeEarthWork);\r\n\r\n if(this.router.url.startsWith('/je')){\r\n if(data?.tankLat != null && data.tankLng != null && data?.tankLat != '' && data.tankLng != '')\r\n this.tankFormControls.latitude.setValue(data?.tankLat);\r\n this.tankFormControls.longitude.setValue(data?.tankLng);\r\n }\r\n if(this.router.url.startsWith('/ew-department') || this.router.url.startsWith('/ew-je') || this.router.url.startsWith('/admin')){\r\n this.tankFormControls.StateShare_Amount.setValue(data?.StateShare_Amount);\r\n this.tankFormControls.CenterShare_Amount.setValue(data?.CenterShare_Amount);\r\n this.tankFormControls.TopUp.setValue(data?.TopUp);\r\n this.tankFormControls.ABY.setValue(data?.ABY);\r\n this.tankFormControls.Coverage_Area.setValue(data?.Coverage_Area);\r\n }\r\n }\r\n get hasPrevAttachments() {\r\n return (\r\n Array.isArray(this.PondVerData?.listImagePathJE) &&\r\n this.PondVerData?.listImagePathJE[0].length > 0\r\n );\r\n }\r\n pondSurveyStage1(reqBody) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let body = [];\r\n let element = {\r\n ActualSubsidy_Stage1: this.PondVerData?.ActualSubsidy_Stage1,\r\n appID: this.PondVerData?.App_ID,\r\n centerShare_Amount: this.PondVerData?.CenterShare_Amount,\r\n remarks: this.PondVerData?.Remarks,\r\n stateShare_Amount: this.PondVerData?.StateShare_Amount,\r\n volumeEarthWork: this.PondVerData?.VolumeEarthWork,\r\n bottomBreadth: this.PondVerData?.bottomBreadth,\r\n bottomLength: this.PondVerData?.bottomLength,\r\n bottomSize: this.PondVerData?.bottomSize,\r\n depth: this.PondVerData?.depth,\r\n // \"measurementCopy\": this.PondVerData?.estimateCopy,\r\n estimateCopy: this.PondVerData?.estimateCopy,\r\n // \"totalEstimatedCost\": this.PondVerData?.estimateCost,\r\n estimateCost: this.PondVerData?.estimateCost,\r\n topBreadth: this.PondVerData?.topBreadth,\r\n topLength: this.PondVerData?.topLength,\r\n // \"totalBilledAmount\": parseFloat(this.PondVerData?.TotalBilledAmount),\r\n tankLat: this.PondVerData?.tankLat\r\n ? this.PondVerData?.tankLat\r\n : this.latPosition,\r\n tankLng: this.PondVerData?.tankLng\r\n ? this.PondVerData?.tankLng\r\n : this.longPosition,\r\n // \"insertPondAttachments\": this.PondVerData?.insertPondAttachments[0],\r\n insertPondAttachments: this.PondVerData?.listImagePath,\r\n };\r\n body.push(element);\r\n sessionStorage.setItem('pondReqBody', JSON.stringify(body));\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n this.tankFormControls.latitude.setValue(pos.lat);\r\n this.tankFormControls.longitude.setValue(pos.lng);\r\n }).catch(error => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'GPS Coordinate not fetched. Please enable the location access and try again',\r\n });\r\n });\r\n }\r\n\r\n setCurrentPosition(){\r\n this.latPosition = null;\r\n this.longPosition = null;\r\n this.tankFormControls.latitude.setValue(this.latPosition);\r\n this.tankFormControls.longitude.setValue(this.longPosition);\r\n this.getGPSCoordinates();\r\n }\r\n\r\n _getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n images = [];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/);\r\n var q = Number(parts[1]);\r\n var side =\r\n window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]];\r\n return side * (q / 100);\r\n }\r\n\r\n openCamera() {\r\n this.displayCameraComponent = true;\r\n }\r\n\r\n onCloseCameraDialog() {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n if(!this.insertPondAttachments) {\r\n this.insertPondAttachments = []\r\n }\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], 'camera-captured' + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n\r\n this.route.queryParams.subscribe((params) => {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, 'camera-captured')\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `tankPhotoStage1_${new Date().getTime()}`;\r\n this.insertPondAttachments.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n displayName: fileName,\r\n });\r\n\r\n let documentListObject = {\r\n insertPondAttachments: this.insertPondAttachments,\r\n };\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n } else {\r\n // console.log('Error');\r\n }\r\n });\r\n });\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n\r\n imageClick(index: number) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n }\r\n XENimageClick(index: number) {\r\n this.XENactiveIndex = index;\r\n this.XENdisplayCustom = true;\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.appID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n\r\n // if(application.appID){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n\r\n // const link = this.router.serializeUrl(\r\n // this.router.createUrlTree([\r\n // this.router.url.split('/')[1],\r\n // 'print',\r\n // application.appID,\r\n // ,\r\n // '0',\r\n // '0',\r\n // '0',\r\n // '0',\r\n // ])\r\n // );\r\n // window.open(link, '_blank');\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n getSurveyType(event){\r\n this.selectedSurveyType = event\r\n }\r\n removeCaptureImg(index){\r\n this.insertPondAttachments.splice(index, 1)\r\n }\r\n isEmpty(data:any) {\r\n if(data == null || data == undefined || data == ''){\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LISTOF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n\r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'TOTAL_AREA' | translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION' | translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAIL' | translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'CURRENT_STATUS' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n {{'ACTION' | translate}}\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n {{product.Applicant_type}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.PendingCompletedDays}}\r\n {{product.LandDetail}}\r\n {{product.DeptRemarks}}\r\n {{product.status}}\r\n {{product.Status_Ar}}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}
\r\n
{{'PENDING_BY_ONE_DAY'| translate}}
\r\n
{{'APROVED_ON_TIME'| translate}}
\r\n
{{'DELAYED_APPROVED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
{{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'VOLUME_OF_EARTHWORK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'TOTAL_COST_OF_EARTHWORK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AMOUNT_OF_SUBSIDY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LATITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LONGITUDE_IS_REQUIRED'| translate}}
\r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'| translate}}

\r\n
\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'PLEASE_FILL_THE_DETAILS_ACCORDING_TO_THE_MB_AND_TANK_FOUND_DURING_PHYSICAL_VERIFICATION'| translate}}.\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{'UPLOAD_ATTACHMENT'| translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{item.displayName}} {{item.name}}

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">{{'MESSAGES'| translate}}:

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{ selectedStatusFalseIntimation?.status }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, OnInit, Output, OnDestroy } from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first, config, shareReplay } from 'rxjs';\r\nimport { ElementRef, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Table } from 'primeng/table';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage1-pending',\r\n templateUrl: './tank-stage1-pending.component.html',\r\n styleUrls: ['./tank-stage1-pending.component.scss']\r\n})\r\nexport class TankStage1PendingComponent implements OnInit {\r\n\r\n @ViewChild('tankTable', { static: true }) public tankDataTable: Table;\r\n\r\n num = 0;\r\n pondType = [{ name: 'Bricks Work' }, { name: 'Earth Work' }];\r\n displayTankDialog: boolean = false;\r\n wrongNotificationCheck: boolean = true;\r\n submitEstimateForm: FormGroup;\r\n submitFalseIntimateForm: FormGroup;\r\n appID: any;\r\n //flag:any;\r\n items: any[];\r\n selectedStatus: any;\r\n selectedStatusFalseIntimation: any;\r\n // remarks: any;\r\n isSubmitted: boolean = false;\r\n isLoading = false;\r\n userId: any;\r\n stage: any;\r\n pondList: any;\r\n public dialogData: any;\r\n public tankData: any;\r\n displayFileDialog: boolean;\r\n rotatableFilePath: any;\r\n stage1FalseIntimationremarks: any;\r\n stage1EstimateFormRemarks: string;\r\n read1: any;\r\n embedded: boolean;\r\n canEditPondData: boolean;\r\n // actualSubsidy_Stage1: number;\r\n // appId:number;\r\n actualSubsidy_Stage1: any;\r\n pondSurveyStage1Data: Object;\r\n latPosition: any;\r\n longPosition: any;\r\n PondVerData: any;\r\n // num: number;\r\n\r\n uploadOptions: any[];\r\n selectedCity1: any;\r\n displayCameraComponent: boolean = false;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n appId: any;\r\n // editBilledData: boolean = false;\r\n\r\n public JElatitude: any;\r\n public JElongitude: any;\r\n public remarks: any;\r\n\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n\r\n applicationNo: any;\r\n insertPondAttachments: any = [];\r\n displayCustom: boolean;\r\n activeIndex: number = 0;\r\n XENdisplayCustom: boolean;\r\n XENactiveIndex: number = 0;\r\n SDOdisplayCustom: boolean;\r\n SDOactiveIndex: number = 0;\r\n selectedRow: any;\r\n capturelist: Array<{ attachmentsDoc: any; documentType: any }>;\r\n Applicant_type: any;\r\n //insertPondAttachments: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n selectedSurveyType: any\r\n sdoLogin: boolean = false;\r\n xenLogin: boolean = false;\r\n jeLogin: boolean = false;\r\n isDDAssociate: boolean = false;\r\n isDMICADA: boolean = false;\r\n isAdmin: boolean = false;\r\n adminUpdate: boolean = false;\r\n\r\n appVerificationItems: MenuItem[];\r\n appVerificationModel: any[];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n\r\n public isDD_EW: boolean = false;\r\n public isJE_EW: boolean = false;\r\n public noOfBeneficiary: any;\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private sanitizer: DomSanitizer,\r\n private cryptoJsService: CryptoJsService,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService\r\n ) {\r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n\r\n if (tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')) {\r\n this.xenLogin = true\r\n }\r\n else if (tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')) {\r\n this.jeLogin = true\r\n }\r\n else if (tokenData && tokenData.role == 'SDO') {\r\n this.sdoLogin = true\r\n }\r\n else if (tokenData && (tokenData.role == 'DD Associate')) {\r\n this.isDDAssociate = true\r\n }\r\n else if (tokenData && (tokenData.role == 'DMICADA')) {\r\n this.isDMICADA = true\r\n }\r\n else if (tokenData && (tokenData.role == 'ADMIN')) {\r\n this.isAdmin = true\r\n }\r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n this.canEditPondData = false;\r\n } else {\r\n this.canEditPondData = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n\r\n this.submitEstimateForm = this._fb.group({\r\n topSizeLength: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n topSizeBreadth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n bottomSizeLength: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n bottomSizeBreadth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n depth: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n latitude: [{ value: '', disabled: true }],\r\n longitude: [{ value: '', disabled: true }],\r\n volumeOfEarthWork: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n totalCostOfEarthWork: [\r\n { value: '', disabled: this.canEditPondData },\r\n Validators.required,\r\n ],\r\n amountOfSubsidy: ['', Validators.required],\r\n measurementBookCopyPath: [''],\r\n // this.insertPondAttachments?.attachmentsDoc,\r\n //stage1EstimateFormRemarks: [''],\r\n StateShare_Amount: [{ value: '', disabled: true }],\r\n CenterShare_Amount: [{ value: '', disabled: true }],\r\n ABY: [{ value: '', disabled: true }],\r\n TopUp: [{ value: '', disabled: true }],\r\n Coverage_Area: [{ value: '', disabled: true }],\r\n });\r\n this.submitFalseIntimateForm = this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n let actionId: number;\r\n if (\r\n this.router.url.split('/')[1] == 'department' ||\r\n this.router.url.split('/')[1] == 'admin' ||\r\n this.router.url.split('/')[1] == 'ew-je' ||\r\n this.router.url.split('/')[1] == 'ew-department'\r\n ) {\r\n // actionId = 29;\r\n actionId = 6;\r\n } else {\r\n actionId = 5; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n this.images = this.insertPondAttachments;\r\n\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: data.toString(),\r\n // });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.tankDataTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.displayCameraComponent = false;\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n\r\n this.stage = 1;\r\n // this.loader.start();\r\n this.loading = true;\r\n\r\n this.remarks = null;\r\n\r\n let sub = this.pondService\r\n .getFarmerApplicationForPondVerStage1(this.userId, 'Pending', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Tank Stage-1 Survey(Pending)',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n })\r\n }\r\n\r\n\r\n this.appVerificationModel = this.tankData;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.tankData = [];\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Tank Stage-1 Survey(Pending)',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'Applicant Type': d.Applicant_type,\r\n 'App type': d.FarmerName,\r\n 'District': d.district,\r\n 'block': d.block,\r\n \"Village\": d.village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.status,\r\n 'Remarks': d.remarks,\r\n 'Current Status': d.Status_Ar,\r\n 'User Type': d.UserType\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'Applicant_type', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'district', header: 'district' },\r\n { field: 'block', header: 'block' },\r\n { field: 'village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'UserType', header: 'User Type' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, { styles: { fontSize: 6 } });\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n get tankFormControls() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n\r\n get falseIntimationFormControls() {\r\n return this.submitFalseIntimateForm.controls;\r\n }\r\n\r\n public prev = false;\r\n public XENprev = false;\r\n public SDOprev = false;\r\n selectTankRowData(product) {\r\n if (product?.PondVerificationStatus == '1' && this.isAdmin) {\r\n this.adminUpdate = true;\r\n }\r\n this.selectedSurveyType = 1\r\n this.dialogData = [product];\r\n this.appID = product.appID;\r\n this.Applicant_type = product.Applicant_type;\r\n this.noOfBeneficiary = product?.NoOfBeneficiary;\r\n this.displayTankDialog = true;\r\n if (\r\n this.router.url.startsWith('/je') ||\r\n this.router.url.startsWith('/sdo') ||\r\n this.router.url.startsWith('/xen')\r\n ) {\r\n // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n // this.submitFalseIntimateForm.disabled ? this.submitFalseIntimateForm.enable() : this.submitFalseIntimateForm.disable();\r\n // this.canEditPondData=true;\r\n this.submitEstimateForm.disabled\r\n ? this.submitEstimateForm.enable()\r\n : this.submitEstimateForm.enable();\r\n this.submitFalseIntimateForm.disabled\r\n ? this.submitFalseIntimateForm.enable()\r\n : this.submitFalseIntimateForm.enable();\r\n this.canEditPondData = false;\r\n }\r\n // else\r\n // {\r\n // // this.submitEstimateForm.controls.amountOfSubsidy.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.enable();\r\n // // this.canEditPondData=false;\r\n // // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n // // this.submitFalseIntimateForm.disabled ? this.submitFalseIntimateForm.enable() : this.submitFalseIntimateForm.disable();\r\n // // this.canEditPondData=true;\r\n\r\n // }\r\n this.appId = this.appID;\r\n this.populateAndCalculateData(null);\r\n this.loader.start();\r\n this.pondService\r\n .getPondVerDataByAppIdStage1(this.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Pending) Action Start', this.appID, new Date(), 'Success');\r\n\r\n this.PondVerData = data;\r\n this.loader.close();\r\n if (this.PondVerData.SurveyType == 0) {\r\n this.selectedSurveyType = '0'\r\n } else {\r\n this.selectedSurveyType = 1\r\n }\r\n if ((this.router.url.startsWith('/je') && (this.PondVerData?.tankLat == null || this.PondVerData.tankLng == null || this.PondVerData?.tankLat == '' || this.PondVerData.tankLng == '')) || this.router.url.startsWith('/xen')) {\r\n this.getGPSCoordinates();\r\n }\r\n if((this.router.url.startsWith('/ew-department'))){\r\n this.isDD_EW = true;\r\n }else{\r\n this.isDD_EW = false;\r\n }\r\n if((this.router.url.startsWith('/ew-je'))){\r\n this.isJE_EW = true;\r\n }else{\r\n this.isJE_EW = false;\r\n }\r\n // this.stage1EstimateFormRemarks = data.Remarks;\r\n sessionStorage.setItem('pondData', JSON.stringify(data));\r\n if (this.jeLogin) {\r\n for (let index = 0; index < this.PondVerData?.listImagePathJE?.length; index++) {\r\n this.PondVerData.listImagePathJE[index].attachmentRawUrl = this.PondVerData.listImagePathJE[index].ImagePath\r\n this.PondVerData.listImagePathJE[index].displayName = this.PondVerData.listImagePathJE[index].DocumentType\r\n this.PondVerData.listImagePathJE[index].attachment = this.PondVerData.listImagePathJE[index].ImagePath\r\n }\r\n this.insertPondAttachments = this.PondVerData?.listImagePathJE;\r\n }\r\n if (this.sdoLogin) {\r\n for (let index = 0; index < this.PondVerData?.listImagePathSDO?.length; index++) {\r\n this.PondVerData.listImagePathSDO[index].attachmentRawUrl = this.PondVerData.listImagePathSDO[index].ImagePath\r\n this.PondVerData.listImagePathSDO[index].displayName = this.PondVerData.listImagePathSDO[index].DocumentType\r\n this.PondVerData.listImagePathSDO[index].attachment = this.PondVerData.listImagePathSDO[index].ImagePath\r\n\r\n }\r\n this.insertPondAttachments = this.PondVerData?.listImagePathSDO;\r\n }\r\n if (this.xenLogin) {\r\n for (let index = 0; index < this.PondVerData?.listImagePathXEN?.length; index++) {\r\n this.PondVerData.listImagePathXEN[index].attachmentRawUrl = this.PondVerData.listImagePathXEN[index].ImagePath\r\n this.PondVerData.listImagePathXEN[index].displayName = this.PondVerData.listImagePathXEN[index].DocumentType\r\n this.PondVerData.listImagePathXEN[index].attachment = this.PondVerData.listImagePathXEN[index].ImagePath\r\n\r\n }\r\n this.insertPondAttachments = this.PondVerData?.listImagePathXEN;\r\n }\r\n this.prev =\r\n Array.isArray(this.PondVerData?.listImagePathJE) &&\r\n this.PondVerData?.listImagePathJE.length > 0;\r\n this.XENprev =\r\n Array.isArray(this.PondVerData?.listImagePathXEN) &&\r\n this.PondVerData?.listImagePathXEN.length > 0;\r\n this.SDOprev =\r\n Array.isArray(this.PondVerData?.listImagePathSDO) &&\r\n this.PondVerData?.listImagePathSDO.length > 0;\r\n this.populateAndCalculateData(data);\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Pending) Action Start', this.appID, new Date(), err);\r\n\r\n if (this.router.url.startsWith('/je')) {\r\n this.getGPSCoordinates();\r\n }\r\n this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n\r\n // if (product.Stage == 1) {\r\n // this.dialogData = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog = true;\r\n //}\r\n // else {\r\n // console.log(\"error\");\r\n // }\r\n }\r\n\r\n onCloseDialog() {\r\n // this.submitEstimateForm.reset();\r\n // this.displayTankDialog = false;\r\n // this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.displayTankDialog = false;\r\n this.isSubmitted = false;\r\n this.insertPondAttachments = [];\r\n this.adminUpdate = false;\r\n this.remarks = null;\r\n this.stage1EstimateFormRemarks = '',\r\n this.latPosition = null;\r\n this.longPosition = null;\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement, step) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n if (step == 1) {\r\n let phNo = 'JEKAITHAL1';\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n\r\n if (resp.data) {\r\n this.tankFormControls.measurementBookCopyPath.setValue(resp.data);\r\n }\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n } else {\r\n this._personalDetalSer\r\n .uploadFile(data, this.appId, formcontrol)\r\n .subscribe((resp: any) => {\r\n\r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateForm.patchValue({\r\n [formcontrol]: resp.data,\r\n });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n }\r\n\r\n PostFalseIntimate(reqBody1) {\r\n this.loader.start();\r\n this.pondService\r\n .PondFalseIntimation(reqBody1)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Pending) Action Submit(False Intimate)', reqBody1?.appID, new Date(), 'Success', reqBody1);\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: \"Pond false Intimation Added Successfully\",\r\n });\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Pending) Action Submit(False Intimate)', reqBody1?.appID, new Date(), err, reqBody1);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! false Intimation Not Added',\r\n });\r\n }\r\n });\r\n }\r\n\r\n submitFalseIntimate() {\r\n if (this.submitFalseIntimateForm.get('uploadThePhotoTaken').value == '') {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Please Upload Photo',\r\n });\r\n return;\r\n }\r\n this.isSubmitted = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: '1',\r\n status: this.selectedStatusFalseIntimation.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateForm.get('remarks').value,\r\n photoPath: this.submitFalseIntimateForm.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks: this.stage1FalseIntimationremarks ? this.stage1FalseIntimationremarks : \"\",\r\n };\r\n this.PostFalseIntimate(reqBody1);\r\n this.onCloseDialog();\r\n }\r\n\r\n public invalid = false;\r\n submitEstimate() {\r\n this.isSubmitted = true;\r\n // console.log('Image List', this.images);\r\n // console.log('Document List', this.insertPondAttachments);\r\n let isValid = true;\r\n if ((this.router.url.startsWith('/je') || (this.xenLogin && this.selectedSurveyType === 1) || (this.sdoLogin && this.selectedSurveyType === 1)) && this.selectedStatus?.flag == 'A') {\r\n if (!this.insertPondAttachments || this.insertPondAttachments.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n }\r\n // this.capturelist = [\r\n // {\r\n // attachmentsDoc: this.insertPondAttachments[0].attachment,\r\n // documentType: this.insertPondAttachments[0].displayName,\r\n // },\r\n // ];\r\n }\r\n if (!this.stage1EstimateFormRemarks) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Remarks are required',\r\n });\r\n return;\r\n }\r\n // let body = [];\r\n // this.insertPondAttachments.forEach(document => {\r\n // body.push({\r\n // \"attachmentsDoc\": document?.attachment,\r\n // \"documentType\": document?.displayName,\r\n // })\r\n // })\r\n // console.log(\"body\",body);\r\n // this.insertPondAttachments=body;\r\n\r\n // this.submitEstimateForm.disabled ? this.submitEstimateForm.enable() : this.submitEstimateForm.disable();\r\n if ((this.submitEstimateForm.valid && this.selectedStatus?.flag == 'A') || this.selectedStatus?.flag == 'RP' || this.selectedStatus?.flag == 'R') {\r\n\r\n this.capturelist = []\r\n if (this.insertPondAttachments && this.insertPondAttachments.length > 0) {\r\n for (let index = 0; index < this.insertPondAttachments.length; index++) {\r\n let obj = {\r\n attachmentsDoc: this.insertPondAttachments[index].attachment,\r\n documentType: this.insertPondAttachments[index].displayName,\r\n }\r\n this.capturelist.push(obj)\r\n }\r\n }\r\n // if(this.remarks.invalid)\r\n // {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Remarks is required' });\r\n // return;\r\n // }\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n userID: userId,\r\n status: this.selectedStatus.flag,\r\n stageType: 0,\r\n // actualSubsidy_Stage1:this.estimateCost*0.60,\r\n //stateShare_Amount:parseFloat((this.actualSubsidy_Stage1 * 0.40).toString()),\r\n stateShare_Amount: 0,\r\n // centerShare_Amount:this.actualSubsidy_Stage1 * 0.60,\r\n centerShare_Amount: 0,\r\n ABY: 0,\r\n TopUp: 0,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress,\r\n totalAmtStage2: this.num.toString(),\r\n assistancePaidAtStage2: this.num.toString(),\r\n topLength: this.submitEstimateForm.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateForm.get('topSizeBreadth').value,\r\n topSize: `${this.submitEstimateForm.get('topSizeLength').value *\r\n this.submitEstimateForm.get('topSizeBreadth').value\r\n }`,\r\n bottomLength: this.submitEstimateForm.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateForm.get('bottomSizeBreadth').value,\r\n bottomSize: `${this.submitEstimateForm.get('bottomSizeLength').value *\r\n this.submitEstimateForm.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateForm.get('depth').value,\r\n volumeEarthWork: this.submitEstimateForm.get('volumeOfEarthWork').value,\r\n tankLat: this.submitEstimateForm.get('latitude').value ? this.submitEstimateForm.get('latitude').value : this.JElatitude,\r\n tankLng: this.submitEstimateForm.get('longitude').value ? this.submitEstimateForm.get('longitude').value : this.JElongitude,\r\n estimateCost: this.submitEstimateForm.get('totalCostOfEarthWork').value,\r\n actualSubsidy_Stage1:\r\n this.submitEstimateForm.get('amountOfSubsidy').value,\r\n estimateCopy: this.submitEstimateForm.get('measurementBookCopyPath')\r\n .value,\r\n remarks: this.stage1EstimateFormRemarks,\r\n surveyType: this.selectedSurveyType,\r\n // insertPondAttachments: body,\r\n insertPondAttachments: this.capturelist,\r\n //attachmentsDoc: this.\r\n // stateShare_Amount:this.actualSubsidy_Stage1 * 0.40,\r\n // centerShare_Amount:this.actualSubsidy_Stage1 * 0.60,\r\n };\r\n\r\n this.postVendorPondEstimate(reqBody);\r\n // this.onCloseDialog();\r\n }\r\n }\r\n\r\n wrongNotification(submitEstimateForm) {\r\n this.wrongNotificationCheck = !this.wrongNotificationCheck;\r\n\r\n if (!this.wrongNotificationCheck) {\r\n this.selectedStatusFalseIntimation = this.items[1];\r\n }\r\n //this.submitEstimateForm.reset();\r\n // this.isSubmitted = false;\r\n\r\n submitEstimateForm = false;\r\n }\r\n\r\n postVendorPondEstimate(reqBody) {\r\n if (!((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || this.selectedSurveyType == 0)) {\r\n if (reqBody.tankLat == null || reqBody.tankLng == null) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'GPS Error',\r\n detail: \"Invalid GPS Coordinates. Please enable location access and try again\",\r\n });\r\n return;\r\n }\r\n }\r\n\r\n this.loader.start();\r\n // console.log(this.tankDataTable,\"this.tankDataTable\")\r\n // console.log(reqBody,\"reqBody\")\r\n // let index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n // console.log(index,\"index\")\r\n // console.log(this.tankData,\"this.tankData90\")\r\n // console.log(this.tankData[index],\"123456\")\r\n // console.log(this.tankData,\"this.tankData90\")\r\n // this.tankData.forEach((e,i)=>{\r\n // console.log(i,\".....\",e.appID)\r\n // })\r\n // console.log(this.tankData[index],\"123456\")\r\n // this.tankData.splice(index,1)\r\n // console.log(this.tankData,\"this.tankData12\")\r\n // index=this.tankData.findIndex(e=>{return e.appID==reqBody.appID})\r\n // console.log(index,\"index\")\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.pondService\r\n //.vendorPondEstimate(reqBody)\r\n .pondSurveyStage1(reqBodyAfterEncypt)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Pending) Action Submit', reqBody?.appID, new Date(), data.toString(), reqBody);\r\n this.loader.close();\r\n this.remarks = null;\r\n\r\n this.pondSurveyStage1Data = data;\r\n if (data == \"S:Successfully Submitted\") {\r\n this.loadData();\r\n\r\n // let index = this.tankData.findIndex(e => { return e.appID == reqBody.appID })\r\n // let index1 = this.tankDataTable.filteredValue.findIndex(e => { return e.appID == reqBody.appID })\r\n\r\n // this.tankData.splice(index, 1)\r\n // this.tankDataTable.filteredValue.splice(index1, 1)\r\n\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.displayTankDialog = false;\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n // this.loadData();\r\n }\r\n else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n this.displayTankDialog = false;\r\n }\r\n\r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-1 Survey(Pending) Action Submit', reqBody?.appID, new Date(), err, reqBody);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Pond Estimation Added Successfully',\r\n // });\r\n // },\r\n });\r\n this.loader.close()\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(\r\n this.rotatableFilePath\r\n );\r\n }\r\n onCloseFileDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n\r\n populateAndCalculateData(data) {\r\n this.JElatitude = data?.tankLat;\r\n this.JElongitude = data?.tankLng;\r\n this.remarks = data?.Remarks;\r\n\r\n this.tankFormControls.topSizeLength.setValue(data?.topLength);\r\n this.tankFormControls.topSizeBreadth.setValue(data?.topBreadth);\r\n this.tankFormControls.latitude.setValue(this.latPosition);\r\n this.tankFormControls.longitude.setValue(this.longPosition);\r\n this.tankFormControls.totalCostOfEarthWork.setValue(data?.estimateCost);\r\n this.tankFormControls.depth.setValue(data?.depth);\r\n this.tankFormControls.amountOfSubsidy.setValue(data?.ActualSubsidy_Stage1);\r\n this.tankFormControls.measurementBookCopyPath.setValue(data?.estimateCopy);\r\n this.tankFormControls.bottomSizeLength.setValue(data?.bottomLength);\r\n this.tankFormControls.bottomSizeBreadth.setValue(data?.bottomBreadth);\r\n this.tankFormControls.volumeOfEarthWork.setValue(data?.VolumeEarthWork);\r\n\r\n if (this.router.url.startsWith('/je')) {\r\n if (data?.tankLat != null && data.tankLng != null && data?.tankLat != '' && data.tankLng != '')\r\n this.tankFormControls.latitude.setValue(data?.tankLat);\r\n this.tankFormControls.longitude.setValue(data?.tankLng);\r\n }\r\n if(this.router.url.startsWith('/ew-department') || this.router.url.startsWith('/ew-je') || this.router.url.startsWith('/admin')){\r\n this.tankFormControls.StateShare_Amount.setValue(data?.StateShare_Amount);\r\n this.tankFormControls.CenterShare_Amount.setValue(data?.CenterShare_Amount);\r\n this.tankFormControls.TopUp.setValue(data?.TopUp);\r\n this.tankFormControls.ABY.setValue(data?.ABY);\r\n this.tankFormControls.Coverage_Area.setValue(data?.Coverage_Area);\r\n }\r\n }\r\n get hasPrevAttachments() {\r\n return (\r\n Array.isArray(this.PondVerData?.listImagePathJE) &&\r\n this.PondVerData?.listImagePathJE[0].length > 0\r\n );\r\n }\r\n pondSurveyStage1(reqBody) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let body = [];\r\n let element = {\r\n ActualSubsidy_Stage1: this.PondVerData?.ActualSubsidy_Stage1,\r\n appID: this.PondVerData?.App_ID,\r\n centerShare_Amount: this.PondVerData?.CenterShare_Amount,\r\n remarks: this.PondVerData?.Remarks,\r\n stateShare_Amount: this.PondVerData?.StateShare_Amount,\r\n volumeEarthWork: this.PondVerData?.VolumeEarthWork,\r\n bottomBreadth: this.PondVerData?.bottomBreadth,\r\n bottomLength: this.PondVerData?.bottomLength,\r\n bottomSize: this.PondVerData?.bottomSize,\r\n depth: this.PondVerData?.depth,\r\n // \"measurementCopy\": this.PondVerData?.estimateCopy,\r\n estimateCopy: this.PondVerData?.estimateCopy,\r\n // \"totalEstimatedCost\": this.PondVerData?.estimateCost,\r\n estimateCost: this.PondVerData?.estimateCost,\r\n topBreadth: this.PondVerData?.topBreadth,\r\n topLength: this.PondVerData?.topLength,\r\n // \"totalBilledAmount\": parseFloat(this.PondVerData?.TotalBilledAmount),\r\n tankLat: this.PondVerData?.tankLat\r\n ? this.PondVerData?.tankLat\r\n : this.latPosition,\r\n tankLng: this.PondVerData?.tankLng\r\n ? this.PondVerData?.tankLng\r\n : this.longPosition,\r\n // \"insertPondAttachments\": this.PondVerData?.insertPondAttachments[0],\r\n insertPondAttachments: this.PondVerData?.listImagePath,\r\n };\r\n body.push(element);\r\n sessionStorage.setItem('pondReqBody', JSON.stringify(body));\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n this.tankFormControls.latitude.setValue(pos.lat);\r\n this.tankFormControls.longitude.setValue(pos.lng);\r\n }).catch(error => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'GPS Coordinate not fetched. Please enable the location access and try again',\r\n });\r\n });\r\n }\r\n\r\n setCurrentPosition() {\r\n this.latPosition = null;\r\n this.longPosition = null;\r\n this.tankFormControls.latitude.setValue(this.latPosition);\r\n this.tankFormControls.longitude.setValue(this.longPosition);\r\n this.getGPSCoordinates();\r\n }\r\n\r\n _getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n images = [];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5,\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3,\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1,\r\n },\r\n ];\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/);\r\n var q = Number(parts[1]);\r\n var side =\r\n window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]];\r\n return side * (q / 100);\r\n }\r\n\r\n openCamera() {\r\n this.displayCameraComponent = true;\r\n }\r\n\r\n onCloseCameraDialog() {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n if (!this.insertPondAttachments) {\r\n this.insertPondAttachments = []\r\n }\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], 'camera-captured' + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n\r\n this.route.queryParams.subscribe((params) => {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, 'camera-captured')\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `tankPhotoStage1_${new Date().getTime()}`;\r\n this.insertPondAttachments.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n displayName: fileName,\r\n });\r\n\r\n let documentListObject = {\r\n insertPondAttachments: this.insertPondAttachments,\r\n };\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n } else {\r\n // console.log('Error');\r\n }\r\n });\r\n });\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n\r\n imageClick(index: number) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n }\r\n XENimageClick(index: number) {\r\n this.XENactiveIndex = index;\r\n this.XENdisplayCustom = true;\r\n }\r\n SDOimageClick(index: number) {\r\n this.SDOactiveIndex = index;\r\n this.SDOdisplayCustom = true;\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application.appID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n\r\n // if(application.appID){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n // }\r\n // else {\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n // }\r\n\r\n // const link = this.router.serializeUrl(\r\n // this.router.createUrlTree([\r\n // this.router.url.split('/')[1],\r\n // 'print',\r\n // application.appID,\r\n // ,\r\n // '0',\r\n // '0',\r\n // '0',\r\n // '0',\r\n // ])\r\n // );\r\n // window.open(link, '_blank');\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n getSurveyType(event) {\r\n this.selectedSurveyType = event\r\n }\r\n removeCaptureImg(index) {\r\n this.insertPondAttachments.splice(index, 1)\r\n }\r\n isEmpty(data: any) {\r\n if (data == null || data == undefined || data == '') {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LISTOF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION' | translate}}\r\n\r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT' | translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK' | translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE' | translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'TOTAL_AREA' | translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION' | translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAIL' | translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'CURRENT_STATUS' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n {{'ACTION' | translate}}\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n {{product.Applicant_type}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.PendingCompletedDays}}\r\n {{product.LandDetail}}\r\n {{product.DeptRemarks}}\r\n {{product.status}}\r\n {{product.Status_Ar}}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE' | translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'VOLUME_OF_EARTHWORK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_COST_OF_EARTHWORK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_(60%_OF_EARTH_WORK_EXECUTED_AS_PER_MB)'|\r\n translate}}:\r\n \r\n \r\n
\r\n
\r\n {{'AMOUNT_OF_SUBSIDY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LATITUDE_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'| translate}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LONGITUDE_IS_REQUIRED'| translate}}
\r\n
\r\n

{{'FIND_MY_CURRENT_LOCATION'|\r\n translate}}

\r\n
\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'PLEASE_FILL_THE_DETAILS_ACCORDING_TO_THE_MB_AND_TANK_FOUND_DURING_PHYSICAL_VERIFICATION'|\r\n translate}}.\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{'UPLOAD_ATTACHMENT'| translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{item.displayName}} {{item.name}}

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'SDO_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">{{'MESSAGES'| translate}}:

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{ selectedStatusFalseIntimation?.status }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n@Component({\r\n selector: 'app-tank-stage1',\r\n templateUrl: './tank-stage1.component.html',\r\n styleUrls: ['./tank-stage1.component.scss'],\r\n})\r\nexport class TankStage1Component implements OnInit {\r\n\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n // this.autoId = params.autoId;\r\n // this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/tank-stage1/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/tank-stage1/current`},\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/tank-stage1/approved` }, \r\n ];\r\n }\r\n );\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { Component, EventEmitter, OnInit, Output, OnDestroy } from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first, config, isEmpty, shareReplay } from 'rxjs';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ElementRef, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Table } from 'primeng/table';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-tank-stage2-approved',\r\n templateUrl: './tank-stage2-approved.component.html',\r\n styleUrls: ['./tank-stage2-approved.component.scss']\r\n})\r\nexport class TankStage2ApprovedComponent implements OnInit {\r\n\r\n @ViewChild('tankTable', { static: true }) public tankDataTable: Table;\r\n\r\n num = 0;\r\n pondType = [\r\n { name: \"Bricks Work\" },\r\n { name: \"Earth Work\" },\r\n ];\r\n\r\n displayTankDialog2: boolean = false;\r\n wrongNotificationCheck2: boolean = true;\r\n submitEstimateFormStage2: FormGroup;\r\n submitFalseIntimateFormStage2: FormGroup;\r\n appID: any;\r\n items: any[];\r\n selectedStatus: any;\r\n selectedStatusFalseIntimation: any;\r\n //remarks: any;\r\n isSubmitted: boolean = false;\r\n isLoading = false;\r\n userId: any;\r\n stage: any;\r\n displayFileDialog: boolean;\r\n rotatableFilePath: any;\r\n pondList: any;\r\n public dialogData: any;\r\n public dialogData2: any;\r\n public tankData: any;\r\n // public pondData:any;\r\n stage2FalseIntimationremarks: any;\r\n stage2EstimateFormremarks: any;\r\n canEditPondData: boolean;\r\n actualSubsidy_Stage2: number;\r\n appId: number;\r\n pondSurveyStage2Data: any;\r\n longPosition: any;\r\n latPosition: any;\r\n PondVerDataStage2: any;\r\n // num: number;\r\n uploadOptions: any[];\r\n selectedCity1: any;\r\n //PondType:any;\r\n displayCameraComponent: boolean = false;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject();\r\n\r\n applicationNo: any;\r\n insertPondAttachments: any = [];\r\n displayCustom: boolean;\r\n activeIndex: number = 0;\r\n selectedRow: any;\r\n capturelist: Array<{ attachmentsDoc: any; documentType: any; }>;\r\n selectedPondType: any;\r\n Applicant_type: any;\r\n //selectedPondType: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n XENdisplayCustom: boolean;\r\n XENactiveIndex: number = 0;\r\n selectedSurveyType: any\r\n xenLogin: boolean = false;\r\n jeLogin: boolean = false;\r\n isDDAssociate: boolean = false;\r\n isDMICADA: boolean = false;\r\n isAdmin: boolean = false;\r\n adminUpdate: boolean = false;\r\n\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public isDD_EW: boolean = false;\r\n public isJE_EW: boolean = false;\r\n public noOfBeneficiary: any;\r\n\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private sanitizer: DomSanitizer,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { \r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n \r\n if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DD Associate')){\r\n this.isDDAssociate = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DMICADA')){\r\n this.isDMICADA = true\r\n }\r\n else if(tokenData && (tokenData.role == 'ADMIN')){\r\n this.isAdmin = true\r\n }\r\n }\r\n\r\n \r\n //pondData: PondDataModel= new PondDataModel();\r\n ngOnInit(): void {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n if (((this.router.url.startsWith('/je')) || this.router.url.startsWith('/sdo')) || (this.router.url.startsWith('/xen'))) {\r\n this.canEditPondData = false;\r\n }\r\n else {\r\n this.canEditPondData = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n \r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n this.getIP();\r\n this.getGPSCoordinates();\r\n this.submitEstimateFormStage2 = this._fb.group({\r\n topSizeLength: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n topSizeBreadth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n bottomSizeLength: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n bottomSizeBreadth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n depth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n typeOfPond: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n toalCostOfWaterTank: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n totalAmountOfSubsidy: ['', Validators.required],\r\n AssistancePaidAtStage1: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n amountOfTotalSubsidy: [{ value: '' }, Validators.required],\r\n //estimateCopy: ['', Validators.required],\r\n // estimateCopy:[''], \r\n latitude: [{ value: '', disabled: true }],\r\n longitude: [{ value: '', disabled: true }],\r\n measurementBookCopyPathStage2: [''],\r\n // remarks: ['', Validators.required],\r\n StateShare_Amount: [{ value: '', disabled: true }],\r\n CenterShare_Amount: [{ value: '', disabled: true }],\r\n ABY: [{ value: '', disabled: true }],\r\n TopUp: [{ value: '', disabled: true }],\r\n Coverage_Area: [{ value: '', disabled: true }],\r\n });\r\n this.submitFalseIntimateFormStage2 = this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n let actionId: number;\r\n if ((this.router.url.split('/')[1] == 'department') || \r\n (this.router.url.split('/')[1] == 'admin') || \r\n this.router.url.split('/')[1] == 'ew-je' ||\r\n this.router.url.split('/')[1] == 'ew-department') {\r\n // actionId = 30;\r\n actionId = 11;\r\n } else {\r\n actionId = 10; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n //let actionId = 10; // Do not Change, it is fixed for Farmer Application Verifications\r\n this.images = this.insertPondAttachments;\r\n //this.selectedPondType=this.pondType;\r\n\r\n WebcamUtil.getAvailableVideoInputs()\r\n .then((mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n });\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.tankDataTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.displayCameraComponent = false;\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n this.stage = 2;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .getFarmerApplicationForPondVerStage2(this.userId, 'Approved', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Approved)', '', new Date(), 'Success');\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n }\r\n\r\n \r\n this.appVerificationModel=this.tankData;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Approved)', '', new Date(), err);\r\n\r\n this.tankData = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'Applicant Type': d.Applicant_type,\r\n 'App type': d.FarmerName,\r\n 'District': d.district,\r\n 'block': d.block,\r\n \"Village\": d.village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.status,\r\n 'Remarks': d.remarks,\r\n 'Current Status': d.Status_Ar,\r\n 'User Type': d.UserType\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'Applicant_type', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'district', header: 'district' },\r\n { field: 'block', header: 'block' },\r\n { field: 'village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'UserType', header: 'User Type' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n get tankFormControlsStage2() {\r\n return this.submitEstimateFormStage2.controls;\r\n }\r\n\r\n get falseIntimationFormControlsStage2() {\r\n return this.submitFalseIntimateFormStage2.controls;\r\n }\r\n\r\n\r\n onPondTypeSelected(event) {\r\n\r\n this.selectedPondType = event.value;\r\n }\r\n\r\n public prev = false;\r\n public XENprev = false;\r\n selectTankRowData(product) {\r\n this.selectedSurveyType = 1\r\n this.dialogData2 = [product];\r\n this.appID = product.appID;\r\n this.Applicant_type = product.Applicant_type;\r\n this.noOfBeneficiary = product?.NoOfBeneficiary;\r\n this.displayTankDialog2 = true;\r\n if (((this.router.url.startsWith('/je')) || this.router.url.startsWith('/sdo')) || (this.router.url.startsWith('/xen'))) {\r\n this.submitEstimateFormStage2.disabled ? this.submitEstimateFormStage2.enable() : this.submitEstimateFormStage2.enable();\r\n this.submitFalseIntimateFormStage2.disabled ? this.submitFalseIntimateFormStage2.enable() : this.submitFalseIntimateFormStage2.enable();\r\n this.canEditPondData = false;\r\n }\r\n\r\n this.appId = this.appID;\r\n this.loader.start();\r\n this.pondService\r\n .getPondVerDataByAppIdStage2(this.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.PondVerDataStage2 = data;\r\n this.stage2EstimateFormremarks = data.Remarks;\r\n this.loader.close();\r\n if(this.PondVerDataStage2.SurveyType == 0) {\r\n this.selectedSurveyType = '0'\r\n } else {\r\n this.selectedSurveyType = 1\r\n }\r\n if((this.router.url.startsWith('/ew-department'))){\r\n this.isDD_EW = true;\r\n }else{\r\n this.isDD_EW = false;\r\n }\r\n if((this.router.url.startsWith('/ew-je'))){\r\n this.isJE_EW = true;\r\n }else{\r\n this.isJE_EW = false;\r\n }\r\n // if(this.PondVerDataStage2.Table.length>0)\r\n // {\r\n if(this.jeLogin) {\r\n for (let index = 0; index < this.PondVerDataStage2?.listImagePathJE?.length; index++) {\r\n this.PondVerDataStage2.listImagePathJE[index].attachmentRawUrl = this.PondVerDataStage2.listImagePathJE[index].ImagePath\r\n this.PondVerDataStage2.listImagePathJE[index].displayName = this.PondVerDataStage2.listImagePathJE[index].DocumentType\r\n this.PondVerDataStage2.listImagePathJE[index].attachment = this.PondVerDataStage2.listImagePathJE[index].ImagePath\r\n }\r\n this.insertPondAttachments = this.PondVerDataStage2?.listImagePathJE;\r\n }\r\n if(this.xenLogin) {\r\n for (let index = 0; index < this.PondVerDataStage2?.listImagePathXEN?.length; index++) {\r\n this.PondVerDataStage2.listImagePathXEN[index].attachmentRawUrl = this.PondVerDataStage2.listImagePathXEN[index].ImagePath\r\n this.PondVerDataStage2.listImagePathXEN[index].displayName = this.PondVerDataStage2.listImagePathXEN[index].DocumentType\r\n this.PondVerDataStage2.listImagePathXEN[index].attachment = this.PondVerDataStage2.listImagePathXEN[index].ImagePath\r\n \r\n }\r\n this.insertPondAttachments = this.PondVerDataStage2?.listImagePathXEN;\r\n }\r\n // sessionStorage.setItem('pondData', JSON.stringify(data));\r\n this.prev = Array.isArray(this.PondVerDataStage2?.listImagePathJE) && this.PondVerDataStage2?.listImagePathJE.length > 0;\r\n this.XENprev =\r\n Array.isArray(this.PondVerDataStage2?.listImagePathXEN) &&\r\n this.PondVerDataStage2?.listImagePathXEN.length > 0;\r\n this.populateAndCalculateData(data);\r\n\r\n\r\n // }\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n // if(product.Stage==2)\r\n // {\r\n // this.dialogData2 = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog2 = true;\r\n // }\r\n // else{\r\n // console.log(\"error\");\r\n // }\r\n this.loader.close();\r\n }\r\n\r\n\r\n onCloseDialog() {\r\n this.submitEstimateFormStage2.reset();\r\n this.displayTankDialog2 = false;\r\n this.isSubmitted = false;\r\n this.insertPondAttachments = [];\r\n // if(this.isSubmitted==true)\r\n // {\r\n // this.submitEstimateFormStage2.reset();\r\n // this.displayTankDialog2 = false;\r\n // }\r\n this.stage2EstimateFormremarks=''\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement, step) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n if (step == 1) {\r\n this._personalDetalSer.uploadFile(data, this.appId, formcontrol).subscribe((resp: any) => {\r\n if(resp.data){\r\n // console.log(resp.data,\"resp.data----imgggggg\")\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(resp.data);\r\n this.PondVerDataStage2.MeasurementCopy=resp.data; \r\n }\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n else {\r\n this._personalDetalSer.uploadFile(data, this.appId, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n }\r\n\r\n\r\n PostFalseIntimate(reqBody1) {\r\n this.loader.start();\r\n this.pondService\r\n .PondFalseIntimation(reqBody1)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Approved) Action Submit(False Intimate)', reqBody1?.appID, new Date(), data.toString(), reqBody1);\r\n\r\n this.loader.close();\r\n let resp = JSON.stringify(data);\r\n\r\n if(resp.startsWith('\"S')){\r\n this.onCloseDialog();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n // console.log('POST VENDOR POND FALSE INTIMATION SUCCESS', data);\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Approved) Action Submit(False Intimate)', reqBody1?.appID, new Date(), err, reqBody1);\r\n\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Pond false Intimation Added Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n\r\n\r\n submitFalseIntimateStage2() {\r\n if(this.submitFalseIntimateFormStage2.get('uploadThePhotoTaken').value == ''){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Please Upload Photo',\r\n });\r\n return;\r\n }\r\n\r\n this.isSubmitted = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: \"2\",\r\n status: this.selectedStatusFalseIntimation.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateFormStage2.get('remarks').value,\r\n photoPath: this.submitFalseIntimateFormStage2.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks: this.stage2FalseIntimationremarks ? this.stage2FalseIntimationremarks : '',\r\n };\r\n this.PostFalseIntimate(reqBody1)\r\n //this.onCloseDialog();\r\n }\r\n\r\n submitEstimateStage2() {\r\n this.isSubmitted = true;\r\n // console.log('Image List', this.images);\r\n // console.log('Document List', this.insertPondAttachments);\r\n let isValid = true;\r\n if (this.router.url.startsWith('/je') || (this.xenLogin && this.selectedSurveyType == 1)) {\r\n if (!this.insertPondAttachments || this.insertPondAttachments.length == 0) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Images are Mandatory' });\r\n return;\r\n }\r\n // this.capturelist = [{\r\n // \"attachmentsDoc\": this.insertPondAttachments[0].attachment,\r\n // \"documentType\": this.insertPondAttachments[0].displayName,\r\n // }]\r\n }\r\n if (!this.stage2EstimateFormremarks) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Remarks are required' });\r\n return;\r\n }\r\n // let body = [];\r\n // this.insertPondAttachments.forEach(document => {\r\n // body.push({\r\n // \"attachmentsDoc\": document?.attachment,\r\n // \"documentType\": document?.displayName,\r\n // })\r\n // }) \r\n // console.log(\"body\",body);\r\n\r\n // this.insertPondAttachments=body;\r\n \r\n if (this.submitEstimateFormStage2.valid) {\r\n this.capturelist = []\r\n if(this.insertPondAttachments && this.insertPondAttachments.length > 0) {\r\n for (let index = 0; index < this.insertPondAttachments.length; index++) {\r\n let obj = {\r\n attachmentsDoc: this.insertPondAttachments[index].attachment,\r\n documentType: this.insertPondAttachments[index].displayName,\r\n }\r\n this.capturelist.push(obj)\r\n }\r\n }\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n stageType: 2,\r\n userID: userId,\r\n totalAmtStage2: this.num.toString(),\r\n // stateShare_Amount:this.actualSubsidy_Stage2 *0.40,\r\n // centerShare_Amount:this.actualSubsidy_Stage2 *0.60,\r\n stateShare_Amount: 0,\r\n centerShare_Amount: 0,\r\n ABY: 0,\r\n TopUp: 0,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress,\r\n //actualSubsidy_Stage2:0,\r\n assistancePaidAtStage2: this.num.toString(),\r\n status: this.selectedStatus.flag,\r\n topLength: this.submitEstimateFormStage2.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateFormStage2.get('topSizeBreadth').value,\r\n topSize: `${this.submitEstimateFormStage2.get('topSizeLength').value *\r\n this.submitEstimateFormStage2.get('topSizeBreadth').value\r\n }`,\r\n bottomLength: this.submitEstimateFormStage2.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateFormStage2.get('bottomSizeBreadth').value,\r\n bottomSize: `${this.submitEstimateFormStage2.get('bottomSizeLength').value *\r\n this.submitEstimateFormStage2.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateFormStage2.get('depth').value,\r\n typeOfPond: this.submitEstimateFormStage2.get('typeOfPond').value,\r\n tankLat: this.submitEstimateFormStage2.get('latitude').value != \"\" ? this.submitEstimateFormStage2.get('latitude').value : this.latPosition != null ? this.latPosition : 0,\r\n tankLng: this.submitEstimateFormStage2.get('longitude').value != \"\" ? this.submitEstimateFormStage2.get('longitude').value : this.longPosition != null ? this.longPosition : 0,\r\n totalEstimatedCost: this.submitEstimateFormStage2.get('toalCostOfWaterTank').value,\r\n totalEstimatedSubsidy: this.submitEstimateFormStage2.get('totalAmountOfSubsidy').value,\r\n actualSubsidy_Stage2: this.submitEstimateFormStage2.get('amountOfTotalSubsidy').value,\r\n measurementCopy: this.submitEstimateFormStage2.get('measurementBookCopyPathStage2').value,\r\n // remarks: this.submitEstimateFormStage2.get('remarks').value,\r\n remarks: this.stage2EstimateFormremarks,\r\n insertPondAttachments: this.capturelist,\r\n surveyType: this.selectedSurveyType,\r\n };\r\n // console.log(reqBody, 'reqBody')\r\n this.postVendorPondEstimate(reqBody);\r\n //this.onCloseDialog();\r\n }\r\n }\r\n\r\n wrongNotification2(submitEstimateFormStage2) {\r\n this.wrongNotificationCheck2 = !this.wrongNotificationCheck2;\r\n\r\n if(!this.wrongNotificationCheck2){\r\n this.selectedStatusFalseIntimation = this.items[1];\r\n }\r\n\r\n submitEstimateFormStage2 = false;\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(this.rotatableFilePath)\r\n }\r\n onCloseFileDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n postVendorPondEstimate(reqBody) {\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.pondService\r\n //.vendorPondEstimate(reqBody)\r\n .pondSurveyStage2(reqBodyAfterEncypt)\r\n .pipe()\r\n .subscribe({\r\n next: (data: any) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Approved) Action Submit', reqBody?.appID, new Date(), data.toString(), reqBody);\r\n this.loader.close();\r\n //this.pondData=data;\r\n this.pondSurveyStage2Data = data;\r\n if(data == \"S:Successfully Submitted\" || data == \"S:Successfully Updated\"){\r\n // this.displayTankDialog2 = false;\r\n this.onCloseDialog();\r\n // this.loadData();\r\n // if(this.tankData?.length>0){\r\n // let index= this.tankData.findIndex(e=>{return e.appID==reqBody.appID});\r\n // let index1= this.tankDataTable.filteredValue.findIndex(e=>{return e.appID==reqBody.appID})\r\n // this.tankData.splice(index,1)\r\n // this.tankDataTable.filteredValue.splice(index1,1)\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n // }\r\n // this.loadData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n \r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Approved) Action Submit', reqBody?.appID, new Date(), err, reqBody);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n populateAndCalculateData(data) {\r\n \r\n console.log(data,\"@@@data\")\r\n this.tankFormControlsStage2.topSizeLength.setValue(data?.topLength);\r\n this.tankFormControlsStage2.topSizeBreadth.setValue(data?.topBreadth);\r\n this.tankFormControlsStage2.latitude.setValue(this.latPosition);\r\n this.tankFormControlsStage2.longitude.setValue(this.longPosition);\r\n this.tankFormControlsStage2.toalCostOfWaterTank.setValue(data?.TotalEstimatedCost);\r\n this.tankFormControlsStage2.depth.setValue(data?.depth);\r\n // this.onPondTypeSelected({ value: this.selectedPondType });\r\n this.tankFormControlsStage2.typeOfPond.setValue(data?.TypeOfPond);\r\n // this.tankFormControlsStage2.typeOfPond.setValue(data?.TypeOfPond);\r\n this.tankFormControlsStage2.totalAmountOfSubsidy.setValue(data?.TotalEstimatedSubsidy);\r\n if(this.jeLogin && (data.MeasurementCopy == \"0\" || data.MeasurementCopy == null)){\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(data?.estimateCopy_Stage1);\r\n }else{\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(data?.MeasurementCopy);\r\n }\r\n this.tankFormControlsStage2.bottomSizeLength.setValue(data?.bottomLength);\r\n this.tankFormControlsStage2.bottomSizeBreadth.setValue(data?.bottomBreadth);\r\n this.tankFormControlsStage2.amountOfTotalSubsidy.setValue(data?.ActualSubsidy_Stage2);\r\n this.tankFormControlsStage2.AssistancePaidAtStage1.setValue(data?.AssistancePaidAtStage1);\r\n // console.log(this.PondVerDataStage2,\"PondVerDataStage2\")\r\n\r\n if(this.router.url.startsWith('/ew-department') || this.router.url.startsWith('/ew-je') || this.router.url.startsWith('/admin')){\r\n this.tankFormControlsStage2.StateShare_Amount.setValue(data?.StateShare_Amount);\r\n this.tankFormControlsStage2.CenterShare_Amount.setValue(data?.CenterShare_Amount);\r\n this.tankFormControlsStage2.TopUp.setValue(data?.TopUp);\r\n this.tankFormControlsStage2.ABY.setValue(data?.ABY);\r\n this.tankFormControlsStage2.Coverage_Area.setValue(data?.Coverage_Area);\r\n }\r\n }\r\n\r\n get hasPrevAttachments() {\r\n return Array.isArray(this.PondVerDataStage2?.listImagePath) && this.PondVerDataStage2?.listImagePath[0].length > 0\r\n }\r\n pondSurveyStage2(reqBody) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let body = [];\r\n let element =\r\n {\r\n \"ActualSubsidy_Stage1\": this.PondVerDataStage2?.ActualSubsidy_Stage1,\r\n \"appID\": this.PondVerDataStage2?.App_ID,\r\n \"centerShare_Amount\": this.PondVerDataStage2?.CenterShare_Amount,\r\n \"remarks\": this.PondVerDataStage2?.Remarks,\r\n \"stateShare_Amount\": this.PondVerDataStage2?.StateShare_Amount,\r\n \"volumeEarthWork\": this.PondVerDataStage2?.VolumeEarthWork,\r\n \"bottomBreadth\": this.PondVerDataStage2?.bottomBreadth,\r\n \"bottomLength\": this.PondVerDataStage2?.bottomLength,\r\n \"bottomSize\": this.PondVerDataStage2?.bottomSize,\r\n \"typeOfPond\": this.PondVerDataStage2?.TypeOfPond,\r\n \"depth\": this.PondVerDataStage2?.depth,\r\n \"measurementCopy\": this.PondVerDataStage2?.MeasurementCopy,\r\n \"totalEstimatedCost\": this.PondVerDataStage2?.TotalEstimatedCost,\r\n \"topBreadth\": this.PondVerDataStage2?.topBreadth,\r\n \"topLength\": this.PondVerDataStage2?.topLength,\r\n \"topSize\": this.PondVerDataStage2?.topSize,\r\n // \"totalBilledAmount\": parseFloat(this.PondVerDataStage2?.TotalBilledAmount),\r\n \"tankLat\": this.PondVerDataStage2?.tankLat ? this.PondVerDataStage2?.tankLat : this.latPosition,\r\n \"tankLng\": this.PondVerDataStage2?.tankLng ? this.PondVerDataStage2?.tankLng : this.longPosition,\r\n \"actualSubsidy_Stage2\": this.PondVerDataStage2?.ActualSubsidy_Stage2,\r\n \"insertPondAttachments\": this.PondVerDataStage2?.listImagePath,\r\n\r\n\r\n //\"ActualSubsidy_Stage1\": this.PondVerDataStage2?.ActualSubsidy_Stage1,\r\n // \"appID\": this.PondVerDataStage2?.App_ID,\r\n // \"CenterShare_Amount\": this.PondVerDataStage2?.CenterShare_Amount,\r\n // \"Remarks\": this.PondVerDataStage2?.Remarks,\r\n // \"StateShare_Amount\": this.PondVerDataStage2?.StateShare_Amount,\r\n // \"VolumeEarthWork\": this.PondVerDataStage2?.VolumeEarthWork,\r\n // \"bottomBreadth\": this.PondVerDataStage2?.bottomBreadth,\r\n // \"bottomLength\": this.PondVerDataStage2?.bottomLength,\r\n // \"bottomSize\": this.PondVerDataStage2?.bottomSize,\r\n // \"depth\": this.PondVerDataStage2?.depth,\r\n // \"measurementCopy\": this.PondVerDataStage2?.estimateCopy,\r\n // \"totalEstimatedCost\": this.PondVerDataStage2?.estimateCost,\r\n // \"topBreadth\": this.PondVerDataStage2?.topBreadth,\r\n // \"topLength\": this.PondVerDataStage2?.topLength,\r\n // \"topSize\": this.PondVerDataStage2?.topSize,\r\n // \"tankLat\": this.PondVerDataStage2?.tankLat ? this.PondVerDataStage2?.tankLat : this.latPosition,\r\n // \"tankLng\": this.PondVerDataStage2?.tankLng ? this.PondVerDataStage2?.tankLng : this.longPosition,\r\n\r\n\r\n }\r\n body.push(element);\r\n sessionStorage.setItem('pondReqBody', JSON.stringify(body));\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n });\r\n }\r\n\r\n _getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n images = [];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/)\r\n var q = Number(parts[1])\r\n var side = window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]]\r\n return side * (q / 100)\r\n }\r\n\r\n openCamera() {\r\n this.displayCameraComponent = true;\r\n }\r\n\r\n onCloseCameraDialog() {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n // console.log('active device: ' + deviceId);\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n if(!this.insertPondAttachments) {\r\n this.insertPondAttachments = []\r\n }\r\n const arr = this.webcamImage.imageAsDataUrl.split(\",\");\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], \"camera-captured\" + '.jpeg', { type: mime })\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, \"camera-captured\")\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `tankPhotoStage1_${new Date().getTime()}`;\r\n this.insertPondAttachments.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n displayName: fileName,\r\n });\r\n\r\n let documentListObject = {\r\n 'insertPondAttachments': this.insertPondAttachments\r\n }\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n\r\n } else {\r\n // console.log('Error');\r\n }\r\n });\r\n }\r\n );\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n\r\n imageClick(index: number) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.appID){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n removeCaptureImg(index){\r\n this.insertPondAttachments.splice(index, 1)\r\n }\r\n XENimageClick(index: number) {\r\n this.XENactiveIndex = index;\r\n this.XENdisplayCustom = true;\r\n }\r\n getSurveyType(event){\r\n this.selectedSurveyType = event\r\n }\r\n isEmpty(data:any) {\r\n if(data == null || data == undefined || data == ''){\r\n return true\r\n }\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'CURRENT_STATUS' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n {{product.Applicant_type}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.PendingCompletedDays}}\r\n {{product.LandDetail}}\r\n {{product.DeptRemarks}}\r\n {{product.status}}\r\n {{product.Status_Ar}}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n {{'TOTAL_COST_OF_WATER_TANK_(EARTH_WORK_+_CIVIL_WORK_AS_PER_MB)'|\r\n translate}}:\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_COST_OF_WATER_TANK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_(@_70%_OF_TOTAL_COST_OF_INDIVIDUAL_OR_@_85%_OF_TOTAL_COST_OF_COMMUNITY_TANK)'|\r\n translate}} :\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{'60%_OF_TOTAL_ELIGIBLE_ASSISTANCE_INCLUDING_STAGE-1_AFTER_COMPLETION_OF_WATER_TANK_AS_PER_MB'|\r\n translate}} : \r\n \r\n
\r\n
\r\n {{'60%_OF_TOTAL_ELIGIBLE_ASSISTANCE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ASSISTANCE_PAID_AT_STAGE-2_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_PDF_FILES_ALLOWED(MAXIMUM_FILE_SIZE_ALLOWED_IS:_1MB/1024KB)'|\r\n translate}}\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
{{'UPLOAD_ATTACHMENT'| translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{item.displayName}} {{item.name}}

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">{{'MESSAGES'| translate}}:

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{ selectedStatusFalseIntimation?.status }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, EventEmitter, OnInit, Output, OnDestroy } from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first, config, isEmpty, shareReplay } from 'rxjs';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ElementRef, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Table } from 'primeng/table';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-tank-stage2-current',\r\n templateUrl: './tank-stage2-current.component.html',\r\n styleUrls: ['./tank-stage2-current.component.scss']\r\n})\r\nexport class TankStage2CurrentComponent implements OnInit {\r\n\r\n @ViewChild('tankTable', { static: true }) public tankDataTable: Table;\r\n\r\n num = 0;\r\n pondType = [\r\n { name: \"Bricks Work\" },\r\n { name: \"Earth Work\" },\r\n ];\r\n\r\n displayTankDialog2: boolean = false;\r\n wrongNotificationCheck2: boolean = true;\r\n submitEstimateFormStage2: FormGroup;\r\n submitFalseIntimateFormStage2: FormGroup;\r\n appID: any;\r\n items: any[];\r\n selectedStatus: any;\r\n selectedStatusFalseIntimation: any;\r\n //remarks: any;\r\n isSubmitted: boolean = false;\r\n isLoading = false;\r\n userId: any;\r\n stage: any;\r\n displayFileDialog: boolean;\r\n rotatableFilePath: any;\r\n pondList: any;\r\n public dialogData: any;\r\n public dialogData2: any;\r\n public tankData: any;\r\n // public pondData:any;\r\n stage2FalseIntimationremarks: any;\r\n stage2EstimateFormremarks: any;\r\n canEditPondData: boolean;\r\n actualSubsidy_Stage2: number;\r\n appId: number;\r\n pondSurveyStage2Data: any;\r\n longPosition: any;\r\n latPosition: any;\r\n PondVerDataStage2: any;\r\n // num: number;\r\n uploadOptions: any[];\r\n selectedCity1: any;\r\n //PondType:any;\r\n displayCameraComponent: boolean = false;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject();\r\n\r\n applicationNo: any;\r\n insertPondAttachments: any = [];\r\n displayCustom: boolean;\r\n activeIndex: number = 0;\r\n selectedRow: any;\r\n capturelist: Array<{ attachmentsDoc: any; documentType: any; }>;\r\n selectedPondType: any;\r\n Applicant_type: any;\r\n //selectedPondType: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n XENdisplayCustom: boolean;\r\n XENactiveIndex: number = 0;\r\n selectedSurveyType: any\r\n xenLogin: boolean = false;\r\n jeLogin: boolean = false;\r\n isDDAssociate: boolean = false;\r\n isDMICADA: boolean = false;\r\n isAdmin: boolean = false;\r\n adminUpdate: boolean = false;\r\n\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public isDD_EW: boolean = false;\r\n public isJE_EW: boolean = false;\r\n public noOfBeneficiary: any;\r\n\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private sanitizer: DomSanitizer,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { \r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n \r\n if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DD Associate')){\r\n this.isDDAssociate = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DMICADA')){\r\n this.isDMICADA = true\r\n }\r\n else if(tokenData && (tokenData.role == 'ADMIN')){\r\n this.isAdmin = true\r\n }\r\n }\r\n\r\n \r\n //pondData: PondDataModel= new PondDataModel();\r\n ngOnInit(): void {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n if (((this.router.url.startsWith('/je')) || this.router.url.startsWith('/sdo')) || (this.router.url.startsWith('/xen'))) {\r\n this.canEditPondData = false;\r\n }\r\n else {\r\n this.canEditPondData = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n \r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n this.getIP();\r\n this.getGPSCoordinates();\r\n this.submitEstimateFormStage2 = this._fb.group({\r\n topSizeLength: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n topSizeBreadth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n bottomSizeLength: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n bottomSizeBreadth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n depth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n typeOfPond: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n toalCostOfWaterTank: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n totalAmountOfSubsidy: ['', Validators.required],\r\n AssistancePaidAtStage1: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n amountOfTotalSubsidy: [{ value: '' }, Validators.required],\r\n //estimateCopy: ['', Validators.required],\r\n // estimateCopy:[''], \r\n latitude: [{ value: '', disabled: true }],\r\n longitude: [{ value: '', disabled: true }],\r\n measurementBookCopyPathStage2: [''],\r\n // remarks: ['', Validators.required],\r\n StateShare_Amount: [{ value: '', disabled: true }],\r\n CenterShare_Amount: [{ value: '', disabled: true }],\r\n ABY: [{ value: '', disabled: true }],\r\n TopUp: [{ value: '', disabled: true }],\r\n Coverage_Area: [{ value: '', disabled: true }],\r\n });\r\n this.submitFalseIntimateFormStage2 = this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n let actionId: number;\r\n if ((this.router.url.split('/')[1] == 'department') || \r\n (this.router.url.split('/')[1] == 'admin') || this.router.url.split('/')[1] == 'ew-je' ||\r\n this.router.url.split('/')[1] == 'ew-department') {\r\n // actionId = 30;\r\n actionId = 11;\r\n } else {\r\n actionId = 10; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n //let actionId = 10; // Do not Change, it is fixed for Farmer Application Verifications\r\n this.images = this.insertPondAttachments;\r\n //this.selectedPondType=this.pondType;\r\n\r\n WebcamUtil.getAvailableVideoInputs()\r\n .then((mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n });\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.tankDataTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.displayCameraComponent = false;\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n // this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n this.stage = 2;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .getFarmerApplicationForPondVerStage2(this.userId, 'Current', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Current)', '', new Date(), 'Success');\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n }\r\n\r\n \r\n this.appVerificationModel=this.tankData;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Current)', '', new Date(), err);\r\n\r\n this.tankData = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'Applicant Type': d.Applicant_type,\r\n 'App type': d.FarmerName,\r\n 'District': d.district,\r\n 'block': d.block,\r\n \"Village\": d.village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.status,\r\n 'Remarks': d.remarks,\r\n 'Current Status': d.Status_Ar,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'Applicant_type', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'district', header: 'district' },\r\n { field: 'block', header: 'block' },\r\n { field: 'village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n get tankFormControlsStage2() {\r\n return this.submitEstimateFormStage2.controls;\r\n }\r\n\r\n get falseIntimationFormControlsStage2() {\r\n return this.submitFalseIntimateFormStage2.controls;\r\n }\r\n\r\n\r\n onPondTypeSelected(event) {\r\n\r\n this.selectedPondType = event.value;\r\n }\r\n\r\n public prev = false;\r\n public XENprev = false;\r\n selectTankRowData(product) {\r\n this.selectedSurveyType = 1\r\n this.dialogData2 = [product];\r\n this.appID = product.appID;\r\n this.Applicant_type = product.Applicant_type;\r\n this.noOfBeneficiary = product?.NoOfBeneficiary;\r\n this.displayTankDialog2 = true;\r\n if (((this.router.url.startsWith('/je')) || this.router.url.startsWith('/sdo')) || (this.router.url.startsWith('/xen'))) {\r\n this.submitEstimateFormStage2.disabled ? this.submitEstimateFormStage2.enable() : this.submitEstimateFormStage2.enable();\r\n this.submitFalseIntimateFormStage2.disabled ? this.submitFalseIntimateFormStage2.enable() : this.submitFalseIntimateFormStage2.enable();\r\n this.canEditPondData = false;\r\n }\r\n\r\n this.appId = this.appID;\r\n this.loader.start();\r\n this.pondService\r\n .getPondVerDataByAppIdStage2(this.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.PondVerDataStage2 = data;\r\n this.stage2EstimateFormremarks = data.Remarks;\r\n this.loader.close();\r\n if(this.PondVerDataStage2.SurveyType == 0) {\r\n this.selectedSurveyType = '0'\r\n } else {\r\n this.selectedSurveyType = 1\r\n }\r\n if((this.router.url.startsWith('/ew-department'))){\r\n this.isDD_EW = true;\r\n }else{\r\n this.isDD_EW = false;\r\n }\r\n if((this.router.url.startsWith('/ew-je'))){\r\n this.isJE_EW = true;\r\n }else{\r\n this.isJE_EW = false;\r\n }\r\n // if(this.PondVerDataStage2.Table.length>0)\r\n // {\r\n if(this.jeLogin) {\r\n for (let index = 0; index < this.PondVerDataStage2?.listImagePathJE?.length; index++) {\r\n this.PondVerDataStage2.listImagePathJE[index].attachmentRawUrl = this.PondVerDataStage2.listImagePathJE[index].ImagePath\r\n this.PondVerDataStage2.listImagePathJE[index].displayName = this.PondVerDataStage2.listImagePathJE[index].DocumentType\r\n this.PondVerDataStage2.listImagePathJE[index].attachment = this.PondVerDataStage2.listImagePathJE[index].ImagePath\r\n }\r\n this.insertPondAttachments = this.PondVerDataStage2?.listImagePathJE;\r\n }\r\n if(this.xenLogin) {\r\n for (let index = 0; index < this.PondVerDataStage2?.listImagePathXEN?.length; index++) {\r\n this.PondVerDataStage2.listImagePathXEN[index].attachmentRawUrl = this.PondVerDataStage2.listImagePathXEN[index].ImagePath\r\n this.PondVerDataStage2.listImagePathXEN[index].displayName = this.PondVerDataStage2.listImagePathXEN[index].DocumentType\r\n this.PondVerDataStage2.listImagePathXEN[index].attachment = this.PondVerDataStage2.listImagePathXEN[index].ImagePath\r\n \r\n }\r\n this.insertPondAttachments = this.PondVerDataStage2?.listImagePathXEN;\r\n }\r\n // sessionStorage.setItem('pondData', JSON.stringify(data));\r\n this.prev = Array.isArray(this.PondVerDataStage2?.listImagePathJE) && this.PondVerDataStage2?.listImagePathJE.length > 0;\r\n this.XENprev =\r\n Array.isArray(this.PondVerDataStage2?.listImagePathXEN) &&\r\n this.PondVerDataStage2?.listImagePathXEN.length > 0;\r\n this.populateAndCalculateData(data);\r\n\r\n\r\n // }\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n // if(product.Stage==2)\r\n // {\r\n // this.dialogData2 = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog2 = true;\r\n // }\r\n // else{\r\n // console.log(\"error\");\r\n // }\r\n this.loader.close();\r\n }\r\n\r\n\r\n onCloseDialog() {\r\n this.submitEstimateFormStage2.reset();\r\n this.displayTankDialog2 = false;\r\n this.isSubmitted = false;\r\n this.insertPondAttachments = [];\r\n // if(this.isSubmitted==true)\r\n // {\r\n // this.submitEstimateFormStage2.reset();\r\n // this.displayTankDialog2 = false;\r\n // }\r\n this.stage2EstimateFormremarks=''\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement, step) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n if (step == 1) {\r\n this._personalDetalSer.uploadFile(data, this.appId, formcontrol).subscribe((resp: any) => {\r\n if(resp.data){\r\n // console.log(resp.data,\"resp.data----imgggggg\")\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(resp.data);\r\n this.PondVerDataStage2.MeasurementCopy=resp.data; \r\n }\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n else {\r\n this._personalDetalSer.uploadFile(data, this.appId, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n }\r\n\r\n\r\n PostFalseIntimate(reqBody1) {\r\n this.loader.start();\r\n this.pondService\r\n .PondFalseIntimation(reqBody1)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Current) Action Submit(False Intimate)', reqBody1?.appID, new Date(), data.toString(), reqBody1);\r\n\r\n this.loader.close();\r\n let resp = JSON.stringify(data);\r\n\r\n if(resp.startsWith('\"S')){\r\n this.onCloseDialog();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n // console.log('POST VENDOR POND FALSE INTIMATION SUCCESS', data);\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Current) Action Submit(False Intimate)', reqBody1?.appID, new Date(), err, reqBody1);\r\n\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Pond false Intimation Added Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n\r\n\r\n submitFalseIntimateStage2() {\r\n if(this.submitFalseIntimateFormStage2.get('uploadThePhotoTaken').value == ''){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Please Upload Photo',\r\n });\r\n return;\r\n }\r\n\r\n this.isSubmitted = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: \"2\",\r\n status: this.selectedStatusFalseIntimation.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateFormStage2.get('remarks').value,\r\n photoPath: this.submitFalseIntimateFormStage2.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks: this.stage2FalseIntimationremarks ? this.stage2FalseIntimationremarks : '',\r\n };\r\n this.PostFalseIntimate(reqBody1)\r\n //this.onCloseDialog();\r\n }\r\n\r\n submitEstimateStage2() {\r\n this.isSubmitted = true;\r\n // console.log('Image List', this.images);\r\n // console.log('Document List', this.insertPondAttachments);\r\n let isValid = true;\r\n if (this.router.url.startsWith('/je') || (this.xenLogin && this.selectedSurveyType == 1)) {\r\n if (!this.insertPondAttachments || this.insertPondAttachments.length == 0) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Images are Mandatory' });\r\n return;\r\n }\r\n // this.capturelist = [{\r\n // \"attachmentsDoc\": this.insertPondAttachments[0].attachment,\r\n // \"documentType\": this.insertPondAttachments[0].displayName,\r\n // }]\r\n }\r\n if (!this.stage2EstimateFormremarks) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Remarks are required' });\r\n return;\r\n }\r\n // let body = [];\r\n // this.insertPondAttachments.forEach(document => {\r\n // body.push({\r\n // \"attachmentsDoc\": document?.attachment,\r\n // \"documentType\": document?.displayName,\r\n // })\r\n // }) \r\n // console.log(\"body\",body);\r\n\r\n // this.insertPondAttachments=body;\r\n \r\n if (this.submitEstimateFormStage2.valid) {\r\n this.capturelist = []\r\n if(this.insertPondAttachments && this.insertPondAttachments.length > 0) {\r\n for (let index = 0; index < this.insertPondAttachments.length; index++) {\r\n let obj = {\r\n attachmentsDoc: this.insertPondAttachments[index].attachment,\r\n documentType: this.insertPondAttachments[index].displayName,\r\n }\r\n this.capturelist.push(obj)\r\n }\r\n }\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n stageType: 2,\r\n userID: userId,\r\n totalAmtStage2: this.num.toString(),\r\n // stateShare_Amount:this.actualSubsidy_Stage2 *0.40,\r\n // centerShare_Amount:this.actualSubsidy_Stage2 *0.60,\r\n stateShare_Amount: 0,\r\n centerShare_Amount: 0,\r\n ABY: 0,\r\n TopUp: 0,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress,\r\n //actualSubsidy_Stage2:0,\r\n assistancePaidAtStage2: this.num.toString(),\r\n status: this.selectedStatus.flag,\r\n topLength: this.submitEstimateFormStage2.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateFormStage2.get('topSizeBreadth').value,\r\n topSize: `${this.submitEstimateFormStage2.get('topSizeLength').value *\r\n this.submitEstimateFormStage2.get('topSizeBreadth').value\r\n }`,\r\n bottomLength: this.submitEstimateFormStage2.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateFormStage2.get('bottomSizeBreadth').value,\r\n bottomSize: `${this.submitEstimateFormStage2.get('bottomSizeLength').value *\r\n this.submitEstimateFormStage2.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateFormStage2.get('depth').value,\r\n typeOfPond: this.submitEstimateFormStage2.get('typeOfPond').value,\r\n tankLat: this.submitEstimateFormStage2.get('latitude').value != \"\" ? this.submitEstimateFormStage2.get('latitude').value : this.latPosition != null ? this.latPosition : 0,\r\n tankLng: this.submitEstimateFormStage2.get('longitude').value != \"\" ? this.submitEstimateFormStage2.get('longitude').value : this.longPosition != null ? this.longPosition : 0,\r\n totalEstimatedCost: this.submitEstimateFormStage2.get('toalCostOfWaterTank').value,\r\n totalEstimatedSubsidy: this.submitEstimateFormStage2.get('totalAmountOfSubsidy').value,\r\n actualSubsidy_Stage2: this.submitEstimateFormStage2.get('amountOfTotalSubsidy').value,\r\n measurementCopy: this.submitEstimateFormStage2.get('measurementBookCopyPathStage2').value,\r\n // remarks: this.submitEstimateFormStage2.get('remarks').value,\r\n remarks: this.stage2EstimateFormremarks,\r\n insertPondAttachments: this.capturelist,\r\n surveyType: this.selectedSurveyType,\r\n };\r\n // console.log(reqBody, 'reqBody')\r\n this.postVendorPondEstimate(reqBody);\r\n //this.onCloseDialog();\r\n }\r\n }\r\n\r\n wrongNotification2(submitEstimateFormStage2) {\r\n this.wrongNotificationCheck2 = !this.wrongNotificationCheck2;\r\n\r\n if(!this.wrongNotificationCheck2){\r\n this.selectedStatusFalseIntimation = this.items[1];\r\n }\r\n\r\n submitEstimateFormStage2 = false;\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(this.rotatableFilePath)\r\n }\r\n onCloseFileDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n postVendorPondEstimate(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.pondService\r\n //.vendorPondEstimate(reqBody)\r\n .pondSurveyStage2(reqBodyAfterEncypt)\r\n .pipe()\r\n .subscribe({\r\n next: (data: any) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Current) Action Submit', reqBody?.appID, new Date(), data.toString(), reqBody);\r\n this.loader.close();\r\n //this.pondData=data;\r\n this.pondSurveyStage2Data = data;\r\n if(data == \"S:Successfully Submitted\" || data == \"S:Successfully Updated\"){\r\n // this.displayTankDialog2 = false;\r\n this.onCloseDialog();\r\n // this.loadData();\r\n // if(this.tankData?.length>0){\r\n // let index= this.tankData.findIndex(e=>{return e.appID==reqBody.appID});\r\n // let index1= this.tankDataTable.filteredValue.findIndex(e=>{return e.appID==reqBody.appID})\r\n // this.tankData.splice(index,1)\r\n // this.tankDataTable.filteredValue.splice(index1,1)\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n // }\r\n // this.loadData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n \r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Current) Action Submit', reqBody?.appID, new Date(), err, reqBody);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n populateAndCalculateData(data) {\r\n \r\n console.log(data,\"@@@data\")\r\n this.tankFormControlsStage2.topSizeLength.setValue(data?.topLength);\r\n this.tankFormControlsStage2.topSizeBreadth.setValue(data?.topBreadth);\r\n this.tankFormControlsStage2.latitude.setValue(this.latPosition);\r\n this.tankFormControlsStage2.longitude.setValue(this.longPosition);\r\n this.tankFormControlsStage2.toalCostOfWaterTank.setValue(data?.TotalEstimatedCost);\r\n this.tankFormControlsStage2.depth.setValue(data?.depth);\r\n // this.onPondTypeSelected({ value: this.selectedPondType });\r\n this.tankFormControlsStage2.typeOfPond.setValue(data?.TypeOfPond);\r\n // this.tankFormControlsStage2.typeOfPond.setValue(data?.TypeOfPond);\r\n this.tankFormControlsStage2.totalAmountOfSubsidy.setValue(data?.TotalEstimatedSubsidy);\r\n if(this.jeLogin && (data.MeasurementCopy == \"0\" || data.MeasurementCopy == null)){\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(data?.estimateCopy_Stage1);\r\n }else{\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(data?.MeasurementCopy);\r\n }\r\n this.tankFormControlsStage2.bottomSizeLength.setValue(data?.bottomLength);\r\n this.tankFormControlsStage2.bottomSizeBreadth.setValue(data?.bottomBreadth);\r\n this.tankFormControlsStage2.amountOfTotalSubsidy.setValue(data?.ActualSubsidy_Stage2);\r\n this.tankFormControlsStage2.AssistancePaidAtStage1.setValue(data?.AssistancePaidAtStage1);\r\n // console.log(this.PondVerDataStage2,\"PondVerDataStage2\")\r\n if(this.router.url.startsWith('/ew-department') || this.router.url.startsWith('/ew-je') || this.router.url.startsWith('/admin')){\r\n this.tankFormControlsStage2.StateShare_Amount.setValue(data?.StateShare_Amount);\r\n this.tankFormControlsStage2.CenterShare_Amount.setValue(data?.CenterShare_Amount);\r\n this.tankFormControlsStage2.TopUp.setValue(data?.TopUp);\r\n this.tankFormControlsStage2.ABY.setValue(data?.ABY);\r\n this.tankFormControlsStage2.Coverage_Area.setValue(data?.Coverage_Area);\r\n }\r\n }\r\n\r\n get hasPrevAttachments() {\r\n return Array.isArray(this.PondVerDataStage2?.listImagePath) && this.PondVerDataStage2?.listImagePath[0].length > 0\r\n }\r\n pondSurveyStage2(reqBody) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let body = [];\r\n let element =\r\n {\r\n \"ActualSubsidy_Stage1\": this.PondVerDataStage2?.ActualSubsidy_Stage1,\r\n \"appID\": this.PondVerDataStage2?.App_ID,\r\n \"centerShare_Amount\": this.PondVerDataStage2?.CenterShare_Amount,\r\n \"remarks\": this.PondVerDataStage2?.Remarks,\r\n \"stateShare_Amount\": this.PondVerDataStage2?.StateShare_Amount,\r\n \"volumeEarthWork\": this.PondVerDataStage2?.VolumeEarthWork,\r\n \"bottomBreadth\": this.PondVerDataStage2?.bottomBreadth,\r\n \"bottomLength\": this.PondVerDataStage2?.bottomLength,\r\n \"bottomSize\": this.PondVerDataStage2?.bottomSize,\r\n \"typeOfPond\": this.PondVerDataStage2?.TypeOfPond,\r\n \"depth\": this.PondVerDataStage2?.depth,\r\n \"measurementCopy\": this.PondVerDataStage2?.MeasurementCopy,\r\n \"totalEstimatedCost\": this.PondVerDataStage2?.TotalEstimatedCost,\r\n \"topBreadth\": this.PondVerDataStage2?.topBreadth,\r\n \"topLength\": this.PondVerDataStage2?.topLength,\r\n \"topSize\": this.PondVerDataStage2?.topSize,\r\n // \"totalBilledAmount\": parseFloat(this.PondVerDataStage2?.TotalBilledAmount),\r\n \"tankLat\": this.PondVerDataStage2?.tankLat ? this.PondVerDataStage2?.tankLat : this.latPosition,\r\n \"tankLng\": this.PondVerDataStage2?.tankLng ? this.PondVerDataStage2?.tankLng : this.longPosition,\r\n \"actualSubsidy_Stage2\": this.PondVerDataStage2?.ActualSubsidy_Stage2,\r\n \"insertPondAttachments\": this.PondVerDataStage2?.listImagePath,\r\n\r\n\r\n //\"ActualSubsidy_Stage1\": this.PondVerDataStage2?.ActualSubsidy_Stage1,\r\n // \"appID\": this.PondVerDataStage2?.App_ID,\r\n // \"CenterShare_Amount\": this.PondVerDataStage2?.CenterShare_Amount,\r\n // \"Remarks\": this.PondVerDataStage2?.Remarks,\r\n // \"StateShare_Amount\": this.PondVerDataStage2?.StateShare_Amount,\r\n // \"VolumeEarthWork\": this.PondVerDataStage2?.VolumeEarthWork,\r\n // \"bottomBreadth\": this.PondVerDataStage2?.bottomBreadth,\r\n // \"bottomLength\": this.PondVerDataStage2?.bottomLength,\r\n // \"bottomSize\": this.PondVerDataStage2?.bottomSize,\r\n // \"depth\": this.PondVerDataStage2?.depth,\r\n // \"measurementCopy\": this.PondVerDataStage2?.estimateCopy,\r\n // \"totalEstimatedCost\": this.PondVerDataStage2?.estimateCost,\r\n // \"topBreadth\": this.PondVerDataStage2?.topBreadth,\r\n // \"topLength\": this.PondVerDataStage2?.topLength,\r\n // \"topSize\": this.PondVerDataStage2?.topSize,\r\n // \"tankLat\": this.PondVerDataStage2?.tankLat ? this.PondVerDataStage2?.tankLat : this.latPosition,\r\n // \"tankLng\": this.PondVerDataStage2?.tankLng ? this.PondVerDataStage2?.tankLng : this.longPosition,\r\n\r\n\r\n }\r\n body.push(element);\r\n sessionStorage.setItem('pondReqBody', JSON.stringify(body));\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n });\r\n }\r\n\r\n _getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n images = [];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/)\r\n var q = Number(parts[1])\r\n var side = window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]]\r\n return side * (q / 100)\r\n }\r\n\r\n openCamera() {\r\n this.displayCameraComponent = true;\r\n }\r\n\r\n onCloseCameraDialog() {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n // console.log('active device: ' + deviceId);\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n if(!this.insertPondAttachments) {\r\n this.insertPondAttachments = []\r\n }\r\n const arr = this.webcamImage.imageAsDataUrl.split(\",\");\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], \"camera-captured\" + '.jpeg', { type: mime })\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, \"camera-captured\")\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `tankPhotoStage1_${new Date().getTime()}`;\r\n this.insertPondAttachments.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n displayName: fileName,\r\n });\r\n\r\n let documentListObject = {\r\n 'insertPondAttachments': this.insertPondAttachments\r\n }\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n\r\n } else {\r\n // console.log('Error');\r\n }\r\n });\r\n }\r\n );\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n\r\n imageClick(index: number) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.appID){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n removeCaptureImg(index){\r\n this.insertPondAttachments.splice(index, 1)\r\n }\r\n XENimageClick(index: number) {\r\n this.XENactiveIndex = index;\r\n this.XENdisplayCustom = true;\r\n }\r\n getSurveyType(event){\r\n this.selectedSurveyType = event\r\n }\r\n isEmpty(data:any) {\r\n if(data == null || data == undefined || data == ''){\r\n return true\r\n }\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'CURRENT_STATUS' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION'| translate}}\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n {{product.Applicant_type}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{product.PendingCompletedDays}}\r\n {{product.LandDetail}}\r\n {{product.DeptRemarks}}\r\n {{product.status}}\r\n {{product.Status_Ar}}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n {{'TOTAL_COST_OF_WATER_TANK_(EARTH_WORK_+_CIVIL_WORK_AS_PER_MB)'|\r\n translate}}:\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_COST_OF_WATER_TANK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_(@_70%_OF_TOTAL_COST_OF_INDIVIDUAL_OR_@_85%_OF_TOTAL_COST_OF_COMMUNITY_TANK)'|\r\n translate}} :\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{'60%_OF_TOTAL_ELIGIBLE_ASSISTANCE_INCLUDING_STAGE-1_AFTER_COMPLETION_OF_WATER_TANK_AS_PER_MB'|\r\n translate}} : \r\n \r\n
\r\n
\r\n {{'60%_OF_TOTAL_ELIGIBLE_ASSISTANCE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ASSISTANCE_PAID_AT_STAGE-2_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_PDF_FILES_ALLOWED(MAXIMUM_FILE_SIZE_ALLOWED_IS:_1MB/1024KB)'|\r\n translate}}\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
{{'UPLOAD_ATTACHMENT'| translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{item.displayName}} {{item.name}}

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">{{'MESSAGES'| translate}}:

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{ selectedStatusFalseIntimation?.status }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, EventEmitter, OnInit, Output, OnDestroy } from '@angular/core';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject, first, config, isEmpty, shareReplay } from 'rxjs';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ElementRef, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { Table } from 'primeng/table';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-tank-stage2-pending',\r\n templateUrl: './tank-stage2-pending.component.html',\r\n styleUrls: ['./tank-stage2-pending.component.scss']\r\n})\r\nexport class TankStage2PendingComponent implements OnInit {\r\n\r\n @ViewChild('tankTable', { static: true }) public tankDataTable: Table;\r\n\r\n num = 0;\r\n pondType = [\r\n { name: \"Bricks Work\" },\r\n { name: \"Earth Work\" },\r\n ];\r\n\r\n displayTankDialog2: boolean = false;\r\n wrongNotificationCheck2: boolean = true;\r\n submitEstimateFormStage2: FormGroup;\r\n submitFalseIntimateFormStage2: FormGroup;\r\n appID: any;\r\n items: any[];\r\n selectedStatus: any;\r\n selectedStatusFalseIntimation: any;\r\n //remarks: any;\r\n isSubmitted: boolean = false;\r\n isLoading = false;\r\n userId: any;\r\n stage: any;\r\n displayFileDialog: boolean;\r\n rotatableFilePath: any;\r\n pondList: any;\r\n public dialogData: any;\r\n public dialogData2: any;\r\n public tankData: any;\r\n // public pondData:any;\r\n stage2FalseIntimationremarks: any;\r\n stage2EstimateFormremarks: any;\r\n canEditPondData: boolean;\r\n actualSubsidy_Stage2: number;\r\n appId: number;\r\n pondSurveyStage2Data: any;\r\n longPosition: any;\r\n latPosition: any;\r\n PondVerDataStage2: any;\r\n // num: number;\r\n uploadOptions: any[];\r\n selectedCity1: any;\r\n //PondType:any;\r\n displayCameraComponent: boolean = false;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n\r\n\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {\r\n width: { ideal: this.viewportToPixels('100vw') },\r\n height: { ideal: 500 },\r\n };\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n autoId: any;\r\n miPhysicalAppReqBody: any;\r\n private trigger: Subject = new Subject();\r\n // switch to next / previous / specific webcam; true/false: forward/backwards, string: deviceId\r\n private nextWebcam: Subject = new Subject();\r\n\r\n applicationNo: any;\r\n insertPondAttachments: any = [];\r\n displayCustom: boolean;\r\n activeIndex: number = 0;\r\n selectedRow: any;\r\n capturelist: Array<{ attachmentsDoc: any; documentType: any; }>;\r\n selectedPondType: any;\r\n Applicant_type: any;\r\n //selectedPondType: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n XENdisplayCustom: boolean;\r\n XENactiveIndex: number = 0;\r\n selectedSurveyType: any\r\n xenLogin: boolean = false;\r\n jeLogin: boolean = false;\r\n isDDAssociate: boolean = false;\r\n isDMICADA: boolean = false;\r\n isAdmin: boolean = false;\r\n adminUpdate: boolean = false;\r\n\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public isDD_EW: boolean = false;\r\n public isJE_EW: boolean = false;\r\n public noOfBeneficiary: any;\r\n\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private sanitizer: DomSanitizer,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n private dashboard: DashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { \r\n const tokenData = sessionStorage.getItem('token') ? JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))) : {}\r\n \r\n if(tokenData && (tokenData.role == 'XEN' || tokenData.role == 'CXEN')){ \r\n this.xenLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'JE' || tokenData.role == 'CJE')){ \r\n this.jeLogin = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DD Associate')){\r\n this.isDDAssociate = true\r\n }\r\n else if(tokenData && (tokenData.role == 'DMICADA')){\r\n this.isDMICADA = true\r\n }\r\n else if(tokenData && (tokenData.role == 'ADMIN')){\r\n this.isAdmin = true\r\n }\r\n }\r\n\r\n \r\n //pondData: PondDataModel= new PondDataModel();\r\n ngOnInit(): void {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n\r\n if (((this.router.url.startsWith('/je')) || this.router.url.startsWith('/sdo')) || (this.router.url.startsWith('/xen'))) {\r\n this.canEditPondData = false;\r\n }\r\n else {\r\n this.canEditPondData = true;\r\n }\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n \r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n this.getIP();\r\n this.getGPSCoordinates();\r\n this.submitEstimateFormStage2 = this._fb.group({\r\n topSizeLength: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n topSizeBreadth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n bottomSizeLength: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n bottomSizeBreadth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n depth: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n typeOfPond: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n toalCostOfWaterTank: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n totalAmountOfSubsidy: ['', Validators.required],\r\n AssistancePaidAtStage1: [{ value: '', disabled: this.canEditPondData }, Validators.required],\r\n amountOfTotalSubsidy: [{ value: '' }, Validators.required],\r\n //estimateCopy: ['', Validators.required],\r\n // estimateCopy:[''], \r\n latitude: [{ value: '', disabled: true }],\r\n longitude: [{ value: '', disabled: true }],\r\n measurementBookCopyPathStage2: [''],\r\n // remarks: ['', Validators.required],\r\n StateShare_Amount: [{ value: '', disabled: true }],\r\n CenterShare_Amount: [{ value: '', disabled: true }],\r\n ABY: [{ value: '', disabled: true }],\r\n TopUp: [{ value: '', disabled: true }],\r\n Coverage_Area: [{ value: '', disabled: true }],\r\n });\r\n this.submitFalseIntimateFormStage2 = this._fb.group({\r\n uploadThePhotoTaken: ['', Validators.required],\r\n //remarks: ['', Validators.required],\r\n });\r\n let actionId: number;\r\n if ((this.router.url.split('/')[1] == 'department') || \r\n (this.router.url.split('/')[1] == 'admin') || \r\n this.router.url.split('/')[1] == 'ew-je' || \r\n this.router.url.split('/')[1] == 'ew-department') {\r\n // actionId = 30;\r\n actionId = 11;\r\n } else {\r\n actionId = 10; // Do not Change, it is fixed for Farmer Application Verifications\r\n }\r\n //let actionId = 10; // Do not Change, it is fixed for Farmer Application Verifications\r\n this.images = this.insertPondAttachments;\r\n //this.selectedPondType=this.pondType;\r\n\r\n WebcamUtil.getAvailableVideoInputs()\r\n .then((mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n });\r\n\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.tankDataTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.displayCameraComponent = false;\r\n\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n // this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n this.stage = 2;\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .getFarmerApplicationForPondVerStage2(this.userId, 'Pending', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Pending)', '', new Date(), 'Success');\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n })\r\n }\r\n\r\n\r\n this.appVerificationModel=this.tankData;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Pending)', '', new Date(), err);\r\n\r\n this.tankData = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'Applicant Type': d.Applicant_type,\r\n 'App type': d.FarmerName,\r\n 'District': d.district,\r\n 'block': d.block,\r\n \"Village\": d.village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.status,\r\n 'Remarks': d.remarks,\r\n 'Current Status': d.Status_Ar,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'Applicant_type', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'district', header: 'district' },\r\n { field: 'block', header: 'block' },\r\n { field: 'village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n get tankFormControlsStage2() {\r\n return this.submitEstimateFormStage2.controls;\r\n }\r\n\r\n get falseIntimationFormControlsStage2() {\r\n return this.submitFalseIntimateFormStage2.controls;\r\n }\r\n\r\n\r\n onPondTypeSelected(event) {\r\n this.selectedPondType = event.value;\r\n }\r\n\r\n public prev = false;\r\n public XENprev = false;\r\n selectTankRowData(product) {\r\n this.selectedSurveyType = 1\r\n this.dialogData2 = [product];\r\n this.appID = product.appID;\r\n this.Applicant_type = product.Applicant_type;\r\n this.noOfBeneficiary = product?.NoOfBeneficiary;\r\n this.displayTankDialog2 = true;\r\n if (((this.router.url.startsWith('/je')) || this.router.url.startsWith('/sdo')) || (this.router.url.startsWith('/xen'))) {\r\n this.submitEstimateFormStage2.disabled ? this.submitEstimateFormStage2.enable() : this.submitEstimateFormStage2.enable();\r\n this.submitFalseIntimateFormStage2.disabled ? this.submitFalseIntimateFormStage2.enable() : this.submitFalseIntimateFormStage2.enable();\r\n this.canEditPondData = false;\r\n }\r\n\r\n this.appId = this.appID;\r\n this.loader.start();\r\n this.pondService\r\n .getPondVerDataByAppIdStage2(this.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.PondVerDataStage2 = data;\r\n this.stage2EstimateFormremarks = data.Remarks;\r\n this.loader.close();\r\n if(this.PondVerDataStage2.SurveyType == 0) {\r\n this.selectedSurveyType = '0'\r\n } else {\r\n this.selectedSurveyType = 1\r\n }\r\n if((this.router.url.startsWith('/ew-department'))){\r\n this.isDD_EW = true;\r\n }else{\r\n this.isDD_EW = false;\r\n }\r\n if((this.router.url.startsWith('/ew-je'))){\r\n this.isJE_EW = true;\r\n }else{\r\n this.isJE_EW = false;\r\n }\r\n // if(this.PondVerDataStage2.Table.length>0)\r\n // {\r\n if(this.jeLogin) {\r\n for (let index = 0; index < this.PondVerDataStage2?.listImagePathJE?.length; index++) {\r\n this.PondVerDataStage2.listImagePathJE[index].attachmentRawUrl = this.PondVerDataStage2.listImagePathJE[index].ImagePath\r\n this.PondVerDataStage2.listImagePathJE[index].displayName = this.PondVerDataStage2.listImagePathJE[index].DocumentType\r\n this.PondVerDataStage2.listImagePathJE[index].attachment = this.PondVerDataStage2.listImagePathJE[index].ImagePath\r\n }\r\n this.insertPondAttachments = this.PondVerDataStage2?.listImagePathJE;\r\n }\r\n if(this.xenLogin) {\r\n for (let index = 0; index < this.PondVerDataStage2?.listImagePathXEN?.length; index++) {\r\n this.PondVerDataStage2.listImagePathXEN[index].attachmentRawUrl = this.PondVerDataStage2.listImagePathXEN[index].ImagePath\r\n this.PondVerDataStage2.listImagePathXEN[index].displayName = this.PondVerDataStage2.listImagePathXEN[index].DocumentType\r\n this.PondVerDataStage2.listImagePathXEN[index].attachment = this.PondVerDataStage2.listImagePathXEN[index].ImagePath\r\n \r\n }\r\n this.insertPondAttachments = this.PondVerDataStage2?.listImagePathXEN;\r\n }\r\n // sessionStorage.setItem('pondData', JSON.stringify(data));\r\n this.prev = Array.isArray(this.PondVerDataStage2?.listImagePathJE) && this.PondVerDataStage2?.listImagePathJE.length > 0;\r\n this.XENprev =\r\n Array.isArray(this.PondVerDataStage2?.listImagePathXEN) &&\r\n this.PondVerDataStage2?.listImagePathXEN.length > 0;\r\n this.populateAndCalculateData(data);\r\n\r\n\r\n // }\r\n },\r\n error: (err) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n // if(product.Stage==2)\r\n // {\r\n // this.dialogData2 = [product];\r\n // this.appID = product.appID;\r\n // this.displayTankDialog2 = true;\r\n // }\r\n // else{\r\n // console.log(\"error\");\r\n // }\r\n this.loader.close();\r\n }\r\n\r\n\r\n onCloseDialog() {\r\n this.submitEstimateFormStage2.reset();\r\n this.displayTankDialog2 = false;\r\n this.isSubmitted = false;\r\n this.insertPondAttachments = [];\r\n // if(this.isSubmitted==true)\r\n // {\r\n // this.submitEstimateFormStage2.reset();\r\n // this.displayTankDialog2 = false;\r\n // }\r\n this.stage2EstimateFormremarks=''\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement, step) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n if (step == 1) {\r\n this._personalDetalSer.uploadFile(data, this.appId, formcontrol).subscribe((resp: any) => {\r\n if(resp.data){\r\n // console.log(resp.data,\"resp.data----imgggggg\")\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(resp.data);\r\n this.PondVerDataStage2['MeasurementCopy'] = resp.data; \r\n }\r\n if (resp.statusCode == 200) {\r\n this.submitEstimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n else {\r\n this._personalDetalSer.uploadFile(data, this.appId, formcontrol).subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n this.submitFalseIntimateFormStage2.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n }\r\n\r\n\r\n PostFalseIntimate(reqBody1) {\r\n this.loader.start();\r\n this.pondService\r\n .PondFalseIntimation(reqBody1)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Pending) Action Submit(False Intimate)', reqBody1?.appID, new Date(), data.toString(), reqBody1);\r\n\r\n this.loader.close();\r\n let resp = JSON.stringify(data);\r\n\r\n if(resp.startsWith('\"S')){\r\n this.onCloseDialog();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: resp,\r\n });\r\n }\r\n // console.log('POST VENDOR POND FALSE INTIMATION SUCCESS', data);\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Pending) Action Submit(False Intimate)', reqBody1?.appID, new Date(), err, reqBody1);\r\n\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Pond false Intimation Added Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n\r\n\r\n submitFalseIntimateStage2() {\r\n if(this.submitFalseIntimateFormStage2.get('uploadThePhotoTaken').value == ''){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Please Upload Photo',\r\n });\r\n return;\r\n }\r\n\r\n this.isSubmitted = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody1: any = {\r\n appID: this.appID,\r\n stage: \"2\",\r\n status: this.selectedStatusFalseIntimation.flag,\r\n terminalID: this.ipAddress,\r\n networkID: this.ipAddress,\r\n //remarks: this.submitFalseIntimateFormStage2.get('remarks').value,\r\n photoPath: this.submitFalseIntimateFormStage2.get('uploadThePhotoTaken').value,\r\n userID: this.userId,\r\n remarks: this.stage2FalseIntimationremarks ? this.stage2FalseIntimationremarks : '',\r\n };\r\n this.PostFalseIntimate(reqBody1)\r\n //this.onCloseDialog();\r\n }\r\n\r\n submitEstimateStage2() {\r\n this.isSubmitted = true;\r\n // console.log('Image List', this.images);\r\n // console.log('Document List', this.insertPondAttachments);\r\n let isValid = true;\r\n if ((this.router.url.startsWith('/je') || (this.xenLogin && this.selectedSurveyType == 1)) && this.selectedStatus?.flag == 'A') {\r\n if (!this.insertPondAttachments || this.insertPondAttachments.length == 0) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Images are Mandatory' });\r\n return;\r\n }\r\n // this.capturelist = [{\r\n // \"attachmentsDoc\": this.insertPondAttachments[0].attachment,\r\n // \"documentType\": this.insertPondAttachments[0].displayName,\r\n // }]\r\n }\r\n if (!this.stage2EstimateFormremarks) {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Remarks are required' });\r\n return;\r\n }\r\n // let body = [];\r\n // this.insertPondAttachments.forEach(document => {\r\n // body.push({\r\n // \"attachmentsDoc\": document?.attachment,\r\n // \"documentType\": document?.displayName,\r\n // })\r\n // }) \r\n // console.log(\"body\",body);\r\n\r\n // this.insertPondAttachments=body;\r\n \r\n if ((this.submitEstimateFormStage2.valid && this.selectedStatus?.flag == 'A') || this.selectedStatus?.flag == 'RP' || this.selectedStatus?.flag == 'R') {\r\n this.capturelist = []\r\n if(this.insertPondAttachments && this.insertPondAttachments.length > 0) {\r\n for (let index = 0; index < this.insertPondAttachments.length; index++) {\r\n let obj = {\r\n attachmentsDoc: this.insertPondAttachments[index].attachment,\r\n documentType: this.insertPondAttachments[index].displayName,\r\n }\r\n this.capturelist.push(obj)\r\n }\r\n }\r\n this.isLoading = true;\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let userId = JSON.parse(payload)?.sub;\r\n let reqBody: any = {\r\n appID: this.appID,\r\n stageType: 2,\r\n userID: userId,\r\n totalAmtStage2: this.num.toString(),\r\n // stateShare_Amount:this.actualSubsidy_Stage2 *0.40,\r\n // centerShare_Amount:this.actualSubsidy_Stage2 *0.60,\r\n stateShare_Amount: 0,\r\n centerShare_Amount: 0,\r\n ABY: 0,\r\n TopUp: 0,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress,\r\n //actualSubsidy_Stage2:0,\r\n assistancePaidAtStage2: this.num.toString(),\r\n status: this.selectedStatus.flag,\r\n topLength: this.submitEstimateFormStage2.get('topSizeLength').value,\r\n topBreadth: this.submitEstimateFormStage2.get('topSizeBreadth').value,\r\n topSize: `${this.submitEstimateFormStage2.get('topSizeLength').value *\r\n this.submitEstimateFormStage2.get('topSizeBreadth').value\r\n }`,\r\n bottomLength: this.submitEstimateFormStage2.get('bottomSizeLength').value,\r\n bottomBreadth: this.submitEstimateFormStage2.get('bottomSizeBreadth').value,\r\n bottomSize: `${this.submitEstimateFormStage2.get('bottomSizeLength').value *\r\n this.submitEstimateFormStage2.get('bottomSizeBreadth').value\r\n }`,\r\n depth: this.submitEstimateFormStage2.get('depth').value,\r\n typeOfPond: this.submitEstimateFormStage2.get('typeOfPond').value,\r\n tankLat: this.submitEstimateFormStage2.get('latitude').value != \"\" ? this.submitEstimateFormStage2.get('latitude').value : this.latPosition != 0 ? this.latPosition : 0,\r\n tankLng: this.submitEstimateFormStage2.get('longitude').value != \"\" ? this.submitEstimateFormStage2.get('longitude').value : this.longPosition != 0 ? this.longPosition : 0,\r\n totalEstimatedCost: this.submitEstimateFormStage2.get('toalCostOfWaterTank').value,\r\n totalEstimatedSubsidy: this.submitEstimateFormStage2.get('totalAmountOfSubsidy').value,\r\n actualSubsidy_Stage2: this.submitEstimateFormStage2.get('amountOfTotalSubsidy').value,\r\n measurementCopy: this.submitEstimateFormStage2.get('measurementBookCopyPathStage2').value,\r\n // remarks: this.submitEstimateFormStage2.get('remarks').value,\r\n remarks: this.stage2EstimateFormremarks,\r\n insertPondAttachments: this.capturelist,\r\n surveyType: this.selectedSurveyType,\r\n };\r\n // console.log(reqBody, 'reqBody')\r\n this.postVendorPondEstimate(reqBody);\r\n //this.onCloseDialog();\r\n }\r\n }\r\n\r\n wrongNotification2(submitEstimateFormStage2) {\r\n this.wrongNotificationCheck2 = !this.wrongNotificationCheck2;\r\n\r\n if(!this.wrongNotificationCheck2){\r\n this.selectedStatusFalseIntimation = this.items[1];\r\n }\r\n\r\n submitEstimateFormStage2 = false;\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(this.rotatableFilePath)\r\n }\r\n onCloseFileDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n postVendorPondEstimate(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.pondService\r\n //.vendorPondEstimate(reqBody)\r\n .pondSurveyStage2(reqBodyAfterEncypt)\r\n .pipe()\r\n .subscribe({\r\n next: (data: any) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Pending) Action Submit', reqBody?.appID, new Date(), data.toString(), reqBody);\r\n this.loader.close();\r\n //this.pondData=data;\r\n this.pondSurveyStage2Data = data;\r\n if(data == \"S:Successfully Submitted\" || data == \"S:Successfully Updated\"){\r\n // this.displayTankDialog2 = false;\r\n // let index = this.tankData.findIndex(e => { return e.appID == reqBody.appID })\r\n // let index1 = this.tankDataTable.filteredValue.findIndex(e => { return e.appID == reqBody.appID })\r\n\r\n // this.tankData.splice(index, 1)\r\n // this.tankDataTable.filteredValue.splice(index1, 1)\r\n\r\n this.onCloseDialog();\r\n this.loadData();\r\n // if(this.tankData?.length>0){\r\n // let index= this.tankData.findIndex(e=>{return e.appID==reqBody.appID});\r\n // let index1= this.tankDataTable.filteredValue.findIndex(e=>{return e.appID==reqBody.appID})\r\n // this.tankData.splice(index,1)\r\n // this.tankDataTable.filteredValue.splice(index1,1)\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n // }\r\n // this.loadData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n \r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-2 Survey(Pending) Action Submit', reqBody?.appID, new Date(), err, reqBody);\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n populateAndCalculateData(data) {\r\n \r\n console.log(data,\"@@@data\")\r\n this.tankFormControlsStage2.topSizeLength.setValue(data?.topLength);\r\n this.tankFormControlsStage2.topSizeBreadth.setValue(data?.topBreadth);\r\n this.tankFormControlsStage2.latitude.setValue(this.latPosition);\r\n this.tankFormControlsStage2.longitude.setValue(this.longPosition);\r\n this.tankFormControlsStage2.toalCostOfWaterTank.setValue(data?.TotalEstimatedCost);\r\n this.tankFormControlsStage2.depth.setValue(data?.depth);\r\n // this.onPondTypeSelected({ value: this.selectedPondType });\r\n this.tankFormControlsStage2.typeOfPond.setValue(data?.TypeOfPond);\r\n // this.tankFormControlsStage2.typeOfPond.setValue(data?.TypeOfPond);\r\n this.tankFormControlsStage2.totalAmountOfSubsidy.setValue(data?.TotalEstimatedSubsidy);\r\n if(this.jeLogin && (data.MeasurementCopy == \"0\" || data.MeasurementCopy == null)){\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(data?.estimateCopy_Stage1);\r\n }else{\r\n this.tankFormControlsStage2.measurementBookCopyPathStage2.setValue(data?.MeasurementCopy);\r\n }\r\n this.tankFormControlsStage2.bottomSizeLength.setValue(data?.bottomLength);\r\n this.tankFormControlsStage2.bottomSizeBreadth.setValue(data?.bottomBreadth);\r\n this.tankFormControlsStage2.amountOfTotalSubsidy.setValue(data?.ActualSubsidy_Stage2);\r\n this.tankFormControlsStage2.AssistancePaidAtStage1.setValue(data?.AssistancePaidAtStage1);\r\n // console.log(this.PondVerDataStage2,\"PondVerDataStage2\")\r\n\r\n if(this.router.url.startsWith('/ew-department') || this.router.url.startsWith('/ew-je') || this.router.url.startsWith('/admin')){\r\n this.tankFormControlsStage2.StateShare_Amount.setValue(data?.StateShare_Amount);\r\n this.tankFormControlsStage2.CenterShare_Amount.setValue(data?.CenterShare_Amount);\r\n this.tankFormControlsStage2.TopUp.setValue(data?.TopUp);\r\n this.tankFormControlsStage2.ABY.setValue(data?.ABY);\r\n this.tankFormControlsStage2.Coverage_Area.setValue(data?.Coverage_Area);\r\n }\r\n }\r\n\r\n get hasPrevAttachments() {\r\n return Array.isArray(this.PondVerDataStage2?.listImagePath) && this.PondVerDataStage2?.listImagePath[0].length > 0\r\n }\r\n pondSurveyStage2(reqBody) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let body = [];\r\n let element =\r\n {\r\n \"ActualSubsidy_Stage1\": this.PondVerDataStage2?.ActualSubsidy_Stage1,\r\n \"appID\": this.PondVerDataStage2?.App_ID,\r\n \"centerShare_Amount\": this.PondVerDataStage2?.CenterShare_Amount,\r\n \"remarks\": this.PondVerDataStage2?.Remarks,\r\n \"stateShare_Amount\": this.PondVerDataStage2?.StateShare_Amount,\r\n \"volumeEarthWork\": this.PondVerDataStage2?.VolumeEarthWork,\r\n \"bottomBreadth\": this.PondVerDataStage2?.bottomBreadth,\r\n \"bottomLength\": this.PondVerDataStage2?.bottomLength,\r\n \"bottomSize\": this.PondVerDataStage2?.bottomSize,\r\n \"typeOfPond\": this.PondVerDataStage2?.TypeOfPond,\r\n \"depth\": this.PondVerDataStage2?.depth,\r\n \"measurementCopy\": this.PondVerDataStage2?.MeasurementCopy,\r\n \"totalEstimatedCost\": this.PondVerDataStage2?.TotalEstimatedCost,\r\n \"topBreadth\": this.PondVerDataStage2?.topBreadth,\r\n \"topLength\": this.PondVerDataStage2?.topLength,\r\n \"topSize\": this.PondVerDataStage2?.topSize,\r\n // \"totalBilledAmount\": parseFloat(this.PondVerDataStage2?.TotalBilledAmount),\r\n \"tankLat\": this.PondVerDataStage2?.tankLat ? this.PondVerDataStage2?.tankLat : this.latPosition,\r\n \"tankLng\": this.PondVerDataStage2?.tankLng ? this.PondVerDataStage2?.tankLng : this.longPosition,\r\n \"actualSubsidy_Stage2\": this.PondVerDataStage2?.ActualSubsidy_Stage2,\r\n \"insertPondAttachments\": this.PondVerDataStage2?.listImagePath,\r\n\r\n\r\n //\"ActualSubsidy_Stage1\": this.PondVerDataStage2?.ActualSubsidy_Stage1,\r\n // \"appID\": this.PondVerDataStage2?.App_ID,\r\n // \"CenterShare_Amount\": this.PondVerDataStage2?.CenterShare_Amount,\r\n // \"Remarks\": this.PondVerDataStage2?.Remarks,\r\n // \"StateShare_Amount\": this.PondVerDataStage2?.StateShare_Amount,\r\n // \"VolumeEarthWork\": this.PondVerDataStage2?.VolumeEarthWork,\r\n // \"bottomBreadth\": this.PondVerDataStage2?.bottomBreadth,\r\n // \"bottomLength\": this.PondVerDataStage2?.bottomLength,\r\n // \"bottomSize\": this.PondVerDataStage2?.bottomSize,\r\n // \"depth\": this.PondVerDataStage2?.depth,\r\n // \"measurementCopy\": this.PondVerDataStage2?.estimateCopy,\r\n // \"totalEstimatedCost\": this.PondVerDataStage2?.estimateCost,\r\n // \"topBreadth\": this.PondVerDataStage2?.topBreadth,\r\n // \"topLength\": this.PondVerDataStage2?.topLength,\r\n // \"topSize\": this.PondVerDataStage2?.topSize,\r\n // \"tankLat\": this.PondVerDataStage2?.tankLat ? this.PondVerDataStage2?.tankLat : this.latPosition,\r\n // \"tankLng\": this.PondVerDataStage2?.tankLng ? this.PondVerDataStage2?.tankLng : this.longPosition,\r\n\r\n\r\n }\r\n body.push(element);\r\n sessionStorage.setItem('pondReqBody', JSON.stringify(body));\r\n }\r\n\r\n getGPSCoordinates() {\r\n this._getPosition().then((pos) => {\r\n this.latPosition = pos.lat;\r\n this.longPosition = pos.lng;\r\n });\r\n }\r\n\r\n _getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n resolve({ lng: resp.coords.longitude, lat: resp.coords.latitude });\r\n },\r\n (err) => {\r\n reject(err);\r\n }\r\n );\r\n });\r\n }\r\n\r\n images = [];\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n\r\n viewportToPixels(value) {\r\n var parts = value.match(/([0-9\\.]+)(vh|vw)/)\r\n var q = Number(parts[1])\r\n var side = window[['innerHeight', 'innerWidth'][['vh', 'vw'].indexOf(parts[2])]]\r\n return side * (q / 100)\r\n }\r\n\r\n openCamera() {\r\n this.displayCameraComponent = true;\r\n }\r\n\r\n onCloseCameraDialog() {\r\n this.displayCameraComponent = false;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n // console.info('received webcam image', webcamImage);\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n // console.log('active device: ' + deviceId);\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n if(!this.insertPondAttachments) {\r\n this.insertPondAttachments = []\r\n }\r\n const arr = this.webcamImage.imageAsDataUrl.split(\",\");\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], \"camera-captured\" + '.jpeg', { type: mime })\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, \"camera-captured\")\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `tankPhotoStage1_${new Date().getTime()}`;\r\n this.insertPondAttachments.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n displayName: fileName,\r\n });\r\n\r\n let documentListObject = {\r\n 'insertPondAttachments': this.insertPondAttachments\r\n }\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n\r\n } else {\r\n // console.log('Error');\r\n }\r\n });\r\n }\r\n );\r\n }\r\n\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n\r\n imageClick(index: number) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if(application.appID){\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n removeCaptureImg(index){\r\n this.insertPondAttachments.splice(index, 1)\r\n }\r\n XENimageClick(index: number) {\r\n this.XENactiveIndex = index;\r\n this.XENdisplayCustom = true;\r\n }\r\n getSurveyType(event){\r\n this.selectedSurveyType = event\r\n }\r\n isEmpty(data:any) {\r\n if(data == null || data == undefined || data == ''){\r\n return true\r\n }\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APPLICANT_TYPE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'CURRENT_STATUS' | translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION'| translate}}\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n {{product.Applicant_type}}\r\n {{product.FarmerName}}\r\n {{product.district}}\r\n {{product.block}}\r\n {{product.village}}\r\n {{product.Total_Area}}\r\n {{product.AgeOfApplication}}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.PendingCompletedDays}}\r\n {{product.LandDetail}}\r\n {{product.DeptRemarks}}\r\n {{product.status}}\r\n {{product.Status_Ar}}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LENGTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'BREADTH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DEPTH_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n {{'TOTAL_COST_OF_WATER_TANK_(EARTH_WORK_+_CIVIL_WORK_AS_PER_MB)'|\r\n translate}}:\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_COST_OF_WATER_TANK_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_(@_70%_OF_TOTAL_COST_OF_INDIVIDUAL_OR_@_85%_OF_TOTAL_COST_OF_COMMUNITY_TANK)'|\r\n translate}} :\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_AMOUNT_OF_SUBSIDY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{'60%_OF_TOTAL_ELIGIBLE_ASSISTANCE_INCLUDING_STAGE-1_AFTER_COMPLETION_OF_WATER_TANK_AS_PER_MB'|\r\n translate}} : \r\n \r\n
\r\n
\r\n {{'60%_OF_TOTAL_ELIGIBLE_ASSISTANCE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ASSISTANCE_PAID_AT_STAGE-2_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n {{'MEASUREMENT_BOOK_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_PDF_FILES_ALLOWED(MAXIMUM_FILE_SIZE_ALLOWED_IS:_1MB/1024KB)'|\r\n translate}}\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
{{'UPLOAD_ATTACHMENT'| translate}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{item.displayName}} {{item.name}}

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n
\r\n
{{'JE_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'XEN_ATTACHMENTS'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{image.DocumentType}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">{{'MESSAGES'| translate}}:

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n {{'NOTE'| translate}}: \r\n {{'ONLY_JPG,PNG_OR_PDF_PHOTO_ALLOWED'| translate}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{ selectedStatusFalseIntimation?.status }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n@Component({\r\n selector: 'app-tank-stage2',\r\n templateUrl: './tank-stage2.component.html',\r\n styleUrls: ['./tank-stage2.component.scss']\r\n})\r\nexport class TankStage2Component implements OnInit {\r\n\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n // this.autoId = params.autoId;\r\n // this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/tank-stage2/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/tank-stage2/current`},\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/tank-stage2/approved` }, \r\n ];\r\n }\r\n );\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { Table } from 'primeng/table';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-tank-stage3-approved',\r\n templateUrl: './tank-stage3-approved.component.html',\r\n styleUrls: ['./tank-stage3-approved.component.scss']\r\n})\r\nexport class TankStage3ApprovedComponent implements OnInit {\r\n\r\n @ViewChild('appVerificationTable', { static: true }) public appVerificationTable: Table;\r\n userId: any;\r\n application: any;\r\n public tankData: any;\r\n displayTankDialog : boolean = false;\r\n selectedApplication: any;\r\n pondVerData: any;\r\n selectedStatus: any;\r\n remarks: any;\r\n items: any[];\r\n actualSubsidyStage3 : string;\r\n isSubmitted: boolean = false;\r\n\r\n ipAddress: any = '000.000.000';\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n \r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public surveyStage1JE: any = null;\r\n public surveyStage1XEN: any = null;\r\n\r\n public surveyStage2JE: any = null;\r\n public surveyStage2XEN: any = null;\r\n\r\n public calStage1JE: any = null;\r\n public calStage1DD: any = null;\r\n public calStage1DA: any = null;\r\n public calStage1DMICADA: any = null;\r\n public calStage1Admin: any = null;\r\n\r\n public calStage2JE: any = null;\r\n public calStage2DA: any = null;\r\n public calStage2DD: any = null;\r\n public calStage2DMICADA: any = null;\r\n public calStage2Admin: any = null;\r\n\r\n public tankStage3Data: any = null;\r\n public remarksData: any = null;\r\n public StateShare_Amount: any;\r\n public CenterShare_Amount: any;\r\n public TopUp_Amount: any;\r\n public ABY_Amount: any;\r\n\r\n\r\n constructor(private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n public router: Router, \r\n private dashboard: DashboardService, \r\n private ipService: IpAddressService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n getStatusItems(){\r\n // let actionId = 31; // Do not Change,\r\n let actionId = 25; // Do not Change,\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .GetFarmerAppForPondVer_SubsidyCalc_Stage3(this.userId, 'Approved', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n \r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-3 Survey(Approved) Action Submit', '', new Date(), 'Success');\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n }\r\n \r\n this.appVerificationModel = this.tankData;\r\n \r\n // this.loader.close();\r\n this.loading = false;\r\n this.getStatusItems();\r\n },\r\n error: (err) => {\r\n this.tankData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-3 Survey(Approved) Action Submit', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'App type': d.FarmerName,\r\n 'District': d.District,\r\n 'block': d.Block,\r\n \"Village\": d.Village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.Status,\r\n 'Current Status': d.Status_Ar,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'District', header: 'district' },\r\n { field: 'Block', header: 'block' },\r\n { field: 'Village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n selectTankRowData(application){\r\n this.displayTankDialog = true;\r\n this.selectedApplication = application;\r\n if(application.appID){\r\n this.pondService\r\n .getPondVerDataByAppId_SubsidyCalc_Stage3(application.appID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.pondVerData = res;\r\n\r\n this.surveyStage1JE = res[1][0];\r\n this.surveyStage1XEN = res[0][0];\r\n \r\n this.surveyStage2JE = res[3][0];\r\n this.surveyStage2XEN = res[2][0]; \r\n \r\n this.calStage1JE = res[5][0];\r\n this.calStage1DD = res[6][0];\r\n this.calStage1DA = res[7][0];\r\n this.calStage1DMICADA = res[8][0];\r\n this.calStage1Admin = res[4][0];\r\n \r\n this.calStage2JE = res[10][0];\r\n this.calStage2DD = res[11][0];\r\n this.calStage2DA = res[12][0];\r\n this.calStage2DMICADA = res[13][0];\r\n this.calStage2Admin = res[9][0];\r\n \r\n this.tankStage3Data = res[14][0];\r\n this.remarksData = res[15][0];\r\n \r\n if(this.tankStage3Data){\r\n this.CenterShare_Amount = this.tankStage3Data?.CenterShare_Amount;\r\n this.StateShare_Amount = this.tankStage3Data?.StateShare_Amount;\r\n this.ABY_Amount = this.tankStage3Data?.ABY;\r\n this.TopUp_Amount = this.tankStage3Data?.Topup;\r\n this.actualSubsidyStage3 = this.tankStage3Data?.ActualSubsidy_Stage3;\r\n }\r\n },\r\n error: (err) => {\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayTankDialog = false;\r\n this.remarks=''\r\n }\r\n\r\n viewFarmerApplication(application) {\r\n if(application.appID){\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick(){\r\n this.isSubmitted = true;\r\n if(!this.actualSubsidyStage3){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Actual Subsidy Stage 3 Cannot be empty.',\r\n });\r\n return;\r\n }\r\n let body = {\r\n appID: this.selectedApplication?.appID,\r\n miSurvey_ID: this.pondVerData?.MISurveyID,\r\n actualSubsidy_Stage3: parseFloat(this.actualSubsidyStage3),\r\n stateShare_Amount: this.pondVerData?.StateShare_Amount,\r\n centerShare_Amount: this.pondVerData?.CenterShare_Amount,\r\n userID: this.userId,\r\n remarks: this.remarks ? this.remarks : '',\r\n status: this.selectedStatus?.flag,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.pondService\r\n .insertPondSurvey_SubsidyCalc_Stage3(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // let index=this.tankData.findIndex(e=>{return e.appID==body.appID})\r\n // let index1=this.appVerificationTable.filteredValue.findIndex(e=>{return e.appID==body.appID})\r\n // this.tankData.splice(index,1)\r\n // this.appVerificationTable.filteredValue.splice(index1,1)\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n if(data == \"S:Successfully Updated\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n\r\n this.refreshTable();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n }\r\n this.onCloseDialog();\r\n this.loader.close();\r\n // this.loadData();\r\n \r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Dashboard not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.Pending_CompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.Pending_CompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.Pending_CompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.Pending_CompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n\r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ product.appID }}\r\n {{ product.FarmerName }}\r\n {{ product.District }}\r\n {{ product.Block }}\r\n {{ product.Village }}\r\n {{ product.Total_Area }}\r\n {{ product.AgeOfApplication }}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{ product.Pending_CompletedDays }}\r\n {{ product.LandDetail }}\r\n {{ product.DeptRemarks }}\r\n {{ product.Status }}\r\n {{ product.Status_Ar }}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE1_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.Topup }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.estimateCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE1_XEN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.estimateCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE2_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.ActualSubsidy_Stage2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.AssistancePaidAtStage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.SurveyType }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TotalEstimatedCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TotalEstimatedSubsidy }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TypeOfPond }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Updated_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.UserID }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.created_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topSize }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE2_XEN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.ActualSubsidy_Stage2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.AssistancePaidAtStage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.NoOfBeneficiary }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.SurveyType }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TotalEstimatedCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TotalEstimatedSubsidy }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TypeOfPond }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Updated_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.UserID }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.created_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topSize }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DD'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DMICADA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_ADMIN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DD'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DMICADA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_ADMIN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'REMARKS'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_Stg2 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JE_EW_Remarks_CalcStg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_CalcStg2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.XENRemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.XENRemarks_Stg2 }}

\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg2 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DERemarks_CalcStg2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.DMICADAReamrks }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DMICADAReamrks_Stg1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.AdminRemarks }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.AdminRemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'ACTUAL_SUBSIDY_AREA_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { Table } from 'primeng/table';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-tank-stage3-current',\r\n templateUrl: './tank-stage3-current.component.html',\r\n styleUrls: ['./tank-stage3-current.component.scss']\r\n})\r\nexport class TankStage3CurrentComponent implements OnInit {\r\n\r\n @ViewChild('appVerificationTable', { static: true }) public appVerificationTable: Table;\r\n userId: any;\r\n application: any;\r\n public tankData: any;\r\n displayTankDialog : boolean = false;\r\n selectedApplication: any;\r\n pondVerData: any;\r\n selectedStatus: any;\r\n remarks: any;\r\n items: any[];\r\n actualSubsidyStage3 : string;\r\n isSubmitted: boolean = false;\r\n\r\n ipAddress: any = '000.000.000';\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n \r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public surveyStage1JE: any = null;\r\n public surveyStage1XEN: any = null;\r\n\r\n public surveyStage2JE: any = null;\r\n public surveyStage2XEN: any = null;\r\n\r\n public calStage1JE: any = null;\r\n public calStage1DD: any = null;\r\n public calStage1DA: any = null;\r\n public calStage1DMICADA: any = null;\r\n public calStage1Admin: any = null;\r\n\r\n public calStage2JE: any = null;\r\n public calStage2DA: any = null;\r\n public calStage2DD: any = null;\r\n public calStage2DMICADA: any = null;\r\n public calStage2Admin: any = null;\r\n\r\n public tankStage3Data: any = null;\r\n public remarksData: any = null;\r\n public StateShare_Amount: any;\r\n public CenterShare_Amount: any;\r\n public TopUp_Amount: any;\r\n public ABY_Amount: any;\r\n\r\n\r\n constructor(private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n public router: Router, \r\n private dashboard: DashboardService, \r\n private ipService: IpAddressService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n getStatusItems(){\r\n // let actionId = 31; // Do not Change,\r\n let actionId = 25; // Do not Change,\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .GetFarmerAppForPondVer_SubsidyCalc_Stage3(this.userId, 'Current', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n \r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-3 Survey(Current) Action Submit', '', new Date(), 'Success');\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n e.ActionDate = new Date(e?.ActionDate);\r\n })\r\n }\r\n\r\n this.appVerificationModel = this.tankData;\r\n \r\n // this.loader.close();\r\n this.loading = false;\r\n this.getStatusItems();\r\n },\r\n error: (err) => {\r\n this.tankData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-3 Survey(Current) Action Submit', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'App type': d.FarmerName,\r\n 'District': d.District,\r\n 'block': d.Block,\r\n \"Village\": d.Village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.Status,\r\n 'Current Status': d.Status_Ar,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'District', header: 'district' },\r\n { field: 'Block', header: 'block' },\r\n { field: 'Village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n selectTankRowData(application){\r\n this.displayTankDialog = true;\r\n this.selectedApplication = application;\r\n if(application.appID){\r\n this.pondService\r\n .getPondVerDataByAppId_SubsidyCalc_Stage3(application.appID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.pondVerData = res;\r\n\r\n this.surveyStage1JE = res[1][0];\r\n this.surveyStage1XEN = res[0][0];\r\n\r\n this.surveyStage2JE = res[3][0];\r\n this.surveyStage2XEN = res[2][0]; \r\n\r\n this.calStage1JE = res[5][0];\r\n this.calStage1DD = res[6][0];\r\n this.calStage1DA = res[7][0];\r\n this.calStage1DMICADA = res[8][0];\r\n this.calStage1Admin = res[4][0];\r\n\r\n this.calStage2JE = res[10][0];\r\n this.calStage2DD = res[11][0];\r\n this.calStage2DA = res[12][0];\r\n this.calStage2DMICADA = res[13][0];\r\n this.calStage2Admin = res[9][0];\r\n\r\n this.tankStage3Data = res[14][0];\r\n this.remarksData = res[15][0];\r\n\r\n if(this.tankStage3Data){\r\n this.CenterShare_Amount = this.tankStage3Data?.CenterShare_Amount;\r\n this.StateShare_Amount = this.tankStage3Data?.StateShare_Amount;\r\n this.ABY_Amount = this.tankStage3Data?.ABY;\r\n this.TopUp_Amount = this.tankStage3Data?.Topup;\r\n this.actualSubsidyStage3 = this.tankStage3Data?.ActualSubsidy_Stage3;\r\n }\r\n },\r\n error: (err) => {\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayTankDialog = false;\r\n this.remarks=''\r\n }\r\n\r\n viewFarmerApplication(application) {\r\n if(application.appID){\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick(){\r\n this.isSubmitted = true;\r\n if(!this.actualSubsidyStage3){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Actual Subsidy Stage 3 Cannot be empty.',\r\n });\r\n return;\r\n }\r\n let body = {\r\n appID: this.selectedApplication?.appID,\r\n miSurvey_ID: this.pondVerData?.MISurveyID,\r\n actualSubsidy_Stage3: parseFloat(this.actualSubsidyStage3),\r\n stateShare_Amount: this.pondVerData?.StateShare_Amount,\r\n centerShare_Amount: this.pondVerData?.CenterShare_Amount,\r\n userID: this.userId,\r\n remarks: this.remarks ? this.remarks : '',\r\n status: this.selectedStatus?.flag,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.pondService\r\n .insertPondSurvey_SubsidyCalc_Stage3(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // let index=this.tankData.findIndex(e=>{return e.appID==body.appID})\r\n // let index1=this.appVerificationTable.filteredValue.findIndex(e=>{return e.appID==body.appID})\r\n // this.tankData.splice(index,1)\r\n // this.appVerificationTable.filteredValue.splice(index1,1)\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n if(data == \"S:Successfully Updated\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n\r\n this.refreshTable();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n }\r\n this.onCloseDialog();\r\n this.loader.close();\r\n // this.loadData();\r\n \r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Dashboard not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.Pending_CompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.Pending_CompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.Pending_CompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.Pending_CompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n\r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'ACTION_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ product.appID }}\r\n {{ product.FarmerName }}\r\n {{ product.District }}\r\n {{ product.Block }}\r\n {{ product.Village }}\r\n {{ product.Total_Area }}\r\n {{ product.AgeOfApplication }}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{product.ActionDate | date:'medium'}}\r\n {{ product.Pending_CompletedDays }}\r\n {{ product.LandDetail }}\r\n {{ product.DeptRemarks }}\r\n {{ product.Status }}\r\n {{ product.Status_Ar }}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE1_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.Topup }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.estimateCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE1_XEN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.estimateCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE2_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.ActualSubsidy_Stage2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.AssistancePaidAtStage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.SurveyType }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TotalEstimatedCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TotalEstimatedSubsidy }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TypeOfPond }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Updated_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.UserID }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.created_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topSize }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE2_XEN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.ActualSubsidy_Stage2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.AssistancePaidAtStage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.NoOfBeneficiary }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.SurveyType }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TotalEstimatedCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TotalEstimatedSubsidy }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TypeOfPond }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Updated_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.UserID }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.created_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topSize }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DD'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DMICADA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_ADMIN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DD'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DMICADA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_ADMIN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'REMARKS'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_Stg2 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JE_EW_Remarks_CalcStg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_CalcStg2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.XENRemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.XENRemarks_Stg2 }}

\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg2 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DERemarks_CalcStg2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.DMICADAReamrks }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DMICADAReamrks_Stg1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.AdminRemarks }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.AdminRemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'ACTUAL_SUBSIDY_AREA_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { Router } from '@angular/router';\r\nimport { Table } from 'primeng/table';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-tank-stage3-pending',\r\n templateUrl: './tank-stage3-pending.component.html',\r\n styleUrls: ['./tank-stage3-pending.component.scss']\r\n})\r\nexport class TankStage3PendingComponent implements OnInit {\r\n\r\n @ViewChild('appVerificationTable', { static: true }) public appVerificationTable: Table;\r\n userId: any;\r\n application: any;\r\n public tankData: any;\r\n displayTankDialog : boolean = false;\r\n selectedApplication: any;\r\n pondVerData: any;\r\n selectedStatus: any;\r\n remarks: any;\r\n items: any[];\r\n actualSubsidyStage3 : string;\r\n isSubmitted: boolean = false;\r\n\r\n ipAddress: any = '000.000.000';\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[];\r\n \r\n public loading: boolean = false;\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public surveyStage1JE: any = null;\r\n public surveyStage1XEN: any = null;\r\n\r\n public surveyStage2JE: any = null;\r\n public surveyStage2XEN: any = null;\r\n\r\n public calStage1JE: any = null;\r\n public calStage1DD: any = null;\r\n public calStage1DA: any = null;\r\n public calStage1DMICADA: any = null;\r\n public calStage1Admin: any = null;\r\n\r\n public calStage2JE: any = null;\r\n public calStage2DA: any = null;\r\n public calStage2DD: any = null;\r\n public calStage2DMICADA: any = null;\r\n public calStage2Admin: any = null;\r\n\r\n public tankStage3Data: any = null;\r\n public remarksData: any = null;\r\n public StateShare_Amount: any;\r\n public CenterShare_Amount: any;\r\n public TopUp_Amount: any;\r\n public ABY_Amount: any;\r\n\r\n\r\n constructor(private messageService: MessageService,\r\n private pondService: JEService,\r\n private tokenService: TokenService,\r\n private deptDashBoardService: DepartmentDashboardService, \r\n public router: Router, \r\n private dashboard: DashboardService, \r\n private ipService: IpAddressService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Tank_Stage_export');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Tank_Stage_export'\r\n );\r\n },\r\n },\r\n ];\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n getStatusItems(){\r\n // let actionId = 31; // Do not Change,\r\n let actionId = 25; // Do not Change,\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.loader.start();\r\n this.deptDashBoardService.GetStatusMaster(JSON.parse(payload)?.sub, actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.items = data.$values;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Status Master cant be Loaded' });\r\n }\r\n });\r\n }\r\n\r\n loadData() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'Admin2'){\r\n this.userId = 'Admin';\r\n }\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.pondService\r\n .GetFarmerAppForPondVer_SubsidyCalc_Stage3(this.userId, 'Pending', this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n \r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-3 Survey(Pending) Action Submit', '', new Date(), 'Success');\r\n\r\n this.tankData = data;\r\n\r\n if(this.tankData && this.tankData?.length > 0){\r\n this.tankData.forEach(e=>{ \r\n e.AssignedDate = new Date(e?.AssignedDate);\r\n })\r\n }\r\n\r\n this.appVerificationModel = this.tankData;\r\n\r\n // this.loader.close();\r\n this.loading = false;\r\n this.getStatusItems();\r\n },\r\n error: (err) => {\r\n this.tankData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Tank Stage-3 Survey(Pending) Action Submit', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'App type': d.FarmerName,\r\n 'District': d.District,\r\n 'block': d.Block,\r\n \"Village\": d.Village,\r\n 'Total Area': d.Total_Area,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Pending Completed Days': d.PendingCompletedDays,\r\n 'Land Detail': d.LandDetail,\r\n 'status': d.Status,\r\n 'Current Status': d.Status_Ar,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'District', header: 'district' },\r\n { field: 'Block', header: 'block' },\r\n { field: 'Village', header: 'village' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Status', header: 'Status' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n selectTankRowData(application){\r\n this.displayTankDialog = true;\r\n this.selectedApplication = application;\r\n if(application.appID){\r\n this.pondService\r\n .getPondVerDataByAppId_SubsidyCalc_Stage3(application.appID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // this.pondVerData = res;\r\n\r\n this.surveyStage1JE = res[1][0];\r\n this.surveyStage1XEN = res[0][0];\r\n \r\n this.surveyStage2JE = res[3][0];\r\n this.surveyStage2XEN = res[2][0]; \r\n \r\n this.calStage1JE = res[5][0];\r\n this.calStage1DD = res[6][0];\r\n this.calStage1DA = res[7][0];\r\n this.calStage1DMICADA = res[8][0];\r\n this.calStage1Admin = res[4][0];\r\n \r\n this.calStage2JE = res[10][0];\r\n this.calStage2DD = res[11][0];\r\n this.calStage2DA = res[12][0];\r\n this.calStage2DMICADA = res[13][0];\r\n this.calStage2Admin = res[9][0];\r\n \r\n this.tankStage3Data = res[14][0];\r\n this.remarksData = res[15][0];\r\n \r\n if(this.tankStage3Data){\r\n this.CenterShare_Amount = this.tankStage3Data?.CenterShare_Amount;\r\n this.StateShare_Amount = this.tankStage3Data?.StateShare_Amount;\r\n this.ABY_Amount = this.tankStage3Data?.ABY;\r\n this.TopUp_Amount = this.tankStage3Data?.Topup;\r\n this.actualSubsidyStage3 = this.tankStage3Data?.ActualSubsidy_Stage3;\r\n }\r\n },\r\n error: (err) => {\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n onCloseDialog(){\r\n this.displayTankDialog = false;\r\n this.remarks=''\r\n }\r\n\r\n viewFarmerApplication(application) {\r\n if(application.appID){\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId,res[0]?.User_ID,res[0]?.AutoId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n handleClick(){\r\n this.isSubmitted = true;\r\n if(!this.actualSubsidyStage3){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Actual Subsidy Stage 3 Cannot be empty.',\r\n });\r\n return;\r\n }\r\n let body = {\r\n appID: this.selectedApplication?.appID,\r\n miSurvey_ID: this.pondVerData?.MISurveyID,\r\n actualSubsidy_Stage3: parseFloat(this.actualSubsidyStage3),\r\n stateShare_Amount: this.pondVerData?.StateShare_Amount,\r\n centerShare_Amount: this.pondVerData?.CenterShare_Amount,\r\n userID: this.userId,\r\n remarks: this.remarks ? this.remarks : '',\r\n status: this.selectedStatus?.flag,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress\r\n }\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.pondService\r\n .insertPondSurvey_SubsidyCalc_Stage3(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // let index=this.tankData.findIndex(e=>{return e.appID==body.appID})\r\n // let index1=this.appVerificationTable.filteredValue.findIndex(e=>{return e.appID==body.appID})\r\n // this.tankData.splice(index,1)\r\n // this.appVerificationTable.filteredValue.splice(index1,1)\r\n // this.appVerificationTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n if(data == \"S:Successfully Updated\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data.toString(),\r\n });\r\n\r\n this.refreshTable();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data.toString(),\r\n });\r\n }\r\n this.onCloseDialog();\r\n this.loader.close();\r\n // this.loadData();\r\n \r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Dashboard not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.Pending_CompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.Pending_CompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.Pending_CompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.Pending_CompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
{{'LIST_OF_WATER_TANK_TO_BE_VERIFIED_(PFMS_MODULE)'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n\r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ASSIGNED_DATE'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'PENDING_COMPLETED_DAYS' | translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'USER_TYPE' | translate}}\r\n \r\n \r\n \r\n {{'COVERAGE_AREA' | translate}}\r\n \r\n \r\n \r\n {{'NO_OF_BENEFICIARY' | translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ product.appID }}\r\n {{ product.FarmerName }}\r\n {{ product.District }}\r\n {{ product.Block }}\r\n {{ product.Village }}\r\n {{ product.Total_Area }}\r\n {{ product.AgeOfApplication }}\r\n {{product?.AssignedDate | date:'medium'}}\r\n {{ product.Pending_CompletedDays }}\r\n {{ product.LandDetail }}\r\n {{ product.DeptRemarks }}\r\n {{ product.Status }}\r\n {{ product.Status_Ar }}\r\n {{product?.UserType}}\r\n {{product?.Coverage_Area}}\r\n {{product?.NoOfBeneficiary}}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{tankData ? tankData.length : 0 }}\r\n {{'APPLICATION_ADDED'| translate}}.\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE1_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.Topup }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.estimateCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE1_XEN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.estimateCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE2_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.ActualSubsidy_Stage2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.AssistancePaidAtStage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.SurveyType }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TotalEstimatedCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TotalEstimatedSubsidy }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.TypeOfPond }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.Updated_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.UserID }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.created_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2JE?.topSize }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'SURVEY_STAGE2_XEN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.ActualSubsidy_Stage2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.AssistancePaidAtStage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.NoOfBeneficiary }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.SurveyType }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TotalEstimatedCost }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TotalEstimatedSubsidy }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.TypeOfPond }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.Updated_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.UserID }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.created_at | date }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ surveyStage2XEN?.topSize }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DD'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DD?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DD?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_DMICADA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1DMICADA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE1_ADMIN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage1Admin?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_JE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2JE?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2JE?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DD'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DD?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DD?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_DMICADA'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2DMICADA?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'CAL_STAGE2_ADMIN'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.CenterShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.StateShare_Amount }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.ABY }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.Topup }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.Coverage_Area }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.NoOfBeneficiary }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.VolumeEarthWork }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.bottomSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.depth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.UserID }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.estimateCost }}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.tankLat }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.tankLng }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topBreadth }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topLength }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ calStage2Admin?.topSize }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

\r\n {{'VIEW_COPY' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n {{'REMARKS'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_Stg2 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JE_EW_Remarks_CalcStg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.JERemarks_CalcStg2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.XENRemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.XENRemarks_Stg2 }}

\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg2 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DERemarks_CalcStg2 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.DMICADAReamrks }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.DMICADAReamrks_Stg1 }}

\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n

{{ remarksData?.AdminRemarks }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n

{{ remarksData?.AdminRemarks_Stg1 }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'ACTUAL_SUBSIDY_AREA_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n@Component({\r\n selector: 'app-tank-stage3',\r\n templateUrl: './tank-stage3.component.html',\r\n styleUrls: ['./tank-stage3.component.scss']\r\n})\r\nexport class TankStage3Component implements OnInit {\r\n\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n // this.autoId = params.autoId;\r\n // this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/tank-stage3/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/tank-stage3/current`},\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/tank-stage3/approved` }, \r\n ];\r\n }\r\n );\r\n }\r\n}\r\n\r\n\r\n","\r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-canal-target',\r\n templateUrl: './canal-target.component.html',\r\n styleUrls: ['./canal-target.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class CanalTargetComponent implements OnInit {\r\n\r\n @ViewChild('canalMasterTable', { static: true })\r\n public canalMasterTable: Table;\r\n\r\n public userId: any;\r\n public canalMasterData: any = [];\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n public loading: boolean = false;\r\n public ipAddress: any;\r\n public showDialog: boolean = false;\r\n submitEstimateForm: FormGroup;\r\n public showDialogToUpdateStatus: any;\r\n public selectedOutlet: any;\r\n public isSubmitted: boolean = false;\r\n updateStatusForm: FormGroup;\r\n menuItems: MenuItem[];\r\n appVerificationItems: MenuItem[];\r\n \r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n // appVerificationItems: MenuItem[];\r\n // cols: (\r\n // | { field: string; header: string; customExportHeader: string }\r\n // | { field: string; header: string; customExportHeader?: undefined }\r\n // )[];\r\n // exportColumns: { title: string; dataKey: string }[];\r\n\r\n public showDialogToAddCanal: boolean = false;\r\n public addCanalSubmitted: boolean = false;\r\n public addCanalForm: FormGroup;\r\n public filteredVillage: any = [];\r\n public villageList: any = [];\r\n public selectedVillage: any;\r\n public outletMasterData = [];\r\n\r\n constructor(\r\n private service: BaseService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private confirmationService: ConfirmationService,\r\n private loader: AppLoaderService,\r\n private _personalDetalSer: FarmersDetailsService, \r\n private _fb: FormBuilder,\r\n private datePipe: DatePipe,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadDataAndApplyFilter();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.canalMasterData, \"Canal Master Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.canalMasterData, \"Canal Master Report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.canalMasterData, \"Vendor_MI_Estimation_List\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.canalMasterData, \"Vendor_MI_Estimation_List\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.updateStatusForm = this._fb.group({\r\n documentID: ['', Validators.required], \r\n documentPath: ['', Validators.required],\r\n fromDate: ['', Validators.required],\r\n endDate: ['', Validators.required],\r\n area: ['', Validators.required],\r\n });\r\n\r\n this.addCanalForm = this._fb.group({\r\n outlet: ['', [Validators.required]],\r\n village: [, [Validators.required]],\r\n cca: [, [Validators.required]],\r\n });\r\n\r\n this.getVillageData();\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get updateStatusFormControls() {\r\n return this.updateStatusForm.controls;\r\n }\r\n\r\n get f() {\r\n return this.addCanalForm.controls;\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n\r\n this.selectedYear = res;\r\n this.loadData();\r\n // this.canalMasterTable.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n loadData() {\r\n this.getIP();\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getOutletMasterForCanal()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Outlet Master For Canal', '', new Date(), 'Success');\r\n\r\n this.userId = JSON.parse(payload)?.sub;\r\n // data = JSON.parse(data)\r\n if (data.length > 0) {\r\n this.canalMasterData = data;\r\n this.canalMasterData = this.canalMasterData.filter((val) => val?.Type == 'Canal');\r\n if(this.canalMasterData.length == 0){\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n console.log(this.canalMasterData)\r\n }\r\n else {\r\n this.canalMasterData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Outlet Master For Canal', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n \r\n updateAction(val) {\r\n // let textVal = val?.CurrentStatus == 'Open' ? 'close' : 'open';\r\n // this.confirmationService.confirm({\r\n // message: `Want to ${textVal} for ${val?.WaterCourse_Name}?`,\r\n // header: 'Confirm',\r\n // icon: 'pi pi-exclamation-triangle',\r\n // accept: () => {\r\n // let reqBody = {\r\n // AutoId: val?.Auto_ID,\r\n // Status: val?.CurrentStatus == 'Open' ? 0 : 1,\r\n // NetworkId: this.ipAddress,\r\n // TerminalId: this.ipAddress\r\n // }\r\n // this.updateOutletStatus(reqBody);\r\n // }\r\n // });\r\n this.selectedOutlet = val;\r\n this.showDialogToUpdateStatus = true;\r\n }\r\n\r\n hideDialog(){\r\n this.showDialogToUpdateStatus = false;\r\n this.isSubmitted = false;\r\n this.updateStatusForm.reset();\r\n }\r\n\r\n saveProduct(){\r\n this.isSubmitted = true;\r\n if (this.updateStatusForm.valid) {\r\n let val = this.updateStatusForm.value;\r\n console.log(val)\r\n let reqBody = {\r\n AutoId: this.selectedOutlet?.Auto_ID,\r\n Status: this.selectedOutlet?.Status == 'Open' ? 0 : 1,\r\n documentPath: val?.documentPath,\r\n documentID: val?.documentID,\r\n fromDate: val.fromDate ? this.datePipe.transform(new Date(val.fromDate), 'yyyy-MM-dd') : val.fromDate,\r\n endDate: val.endDate ? this.datePipe.transform(new Date(val.endDate), 'yyyy-MM-dd') : val.endDate,\r\n area: val?.area,\r\n NetworkId: this.ipAddress,\r\n TerminalId: this.ipAddress\r\n }\r\n this.updateOutletStatus(reqBody);\r\n }\r\n \r\n }\r\n\r\n updateOutletStatus(reqBody) {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .updateOutletStatus(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.loadData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Status Updated Succesfully',\r\n });\r\n this.hideDialog();\r\n this.activityRecordService.activityRecord(this.userId, 'Update Canal Status', reqBody?.Auto_ID, new Date(), 'Success', reqBody);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'Update Canal Status', reqBody?.Auto_ID, new Date(), err, reqBody);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n this.loader.start();\r\n this._personalDetalSer.uploadFile(data, this.userId, formcontrol).subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.updateStatusForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Oops! Someting went wrong.',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n\r\n uploadElement.clear();\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n \r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Type', header: 'Type' },\r\n { field: 'Canal', header: 'Water Course Name' },\r\n { field: 'RD', header: 'RD' },\r\n { field: 'TotalApps', header: 'Total Apps' },\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'CircleName', header: 'Circle Name' },\r\n { field: 'Divison_Name', header: 'Divison Name' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'CCA', header: 'CCA' },\r\n { field: 'Office_Number', header: 'Office Number' },\r\n { field: 'AreaAcre', header: 'Target Area' },\r\n { field: 'documentID', header: 'Document ID' },\r\n { field: 'fromDate', header: 'Start Date' },\r\n { field: 'endDate', header: 'End Date' },\r\n { field: 'CurrentStatus', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.canalMasterData);\r\n doc.save('Applications_Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Type\":d.Type,\r\n \"Water Course Name\":d.Canal,\r\n \"RD\":d.RD,\r\n \"Total Apps\":d.TotalApps,\r\n \"Constituency\":d.Constituency,\r\n \"Block\":d.Block,\r\n \"Circle Name\":d.CircleName,\r\n \"Divison Name\":d.Divison_Name,\r\n \"District\":d.District,\r\n \"Village\":d.Village,\r\n \"CCA\":d.CCA,\r\n \"Office Number\":d.Office_Number,\r\n \"Area Acre\":d.AreaAcre,\r\n \"Document ID\":d.documentID, \r\n \"Start date\":d.fromDate, \r\n \"End Date\":d.endDate, \r\n \"Current Status\":d.CurrentStatus, \r\n\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n }\r\n\r\n addCanalDetails(){\r\n this.showDialogToAddCanal = true;\r\n }\r\n \r\n \r\n hideAddDialog(){\r\n this.showDialogToAddCanal = false;\r\n this.selectedVillage = {};\r\n this.addCanalSubmitted = false;\r\n this.addCanalForm.reset();\r\n this.outletMasterData = [];\r\n }\r\n\r\n onAddSubmit(){\r\n this.addCanalSubmitted = true;\r\n if (this.addCanalForm.invalid) {\r\n return;\r\n }else{\r\n let val = this.addCanalForm.value;\r\n console.log(val)\r\n let reqBody = {\r\n \"recordId\": val.outlet.recordID,\r\n \"type\": 1,\r\n \"cca\": val.cca,\r\n \"villageCode\": this.selectedVillage?.Code,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.submitOutletToTarget(reqBody);\r\n }\r\n }\r\n\r\n submitOutletToTarget(reqBody){\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .addOutletToTarget(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.loadData();\r\n if(data == \"Status updated Successfully\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n \r\n this.hideAddDialog();\r\n this.activityRecordService.activityRecord(this.userId, 'Add Canal Status', '', new Date(), 'Success', reqBody);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'Add Canal Status', '', new Date(), err, reqBody);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n getVillageData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(res);\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n if(!window.sessionStorage.getItem(\"villageMaster\")){\r\n window.sessionStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n }\r\n\r\n onSelectVillage(){\r\n console.log('Village selected', this.selectedVillage);\r\n this.f.outlet.reset();\r\n this.getOutletsForTarget(this.selectedVillage.Code);\r\n }\r\n\r\n\r\n getOutletsForTarget(villageCode){\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getOutletsForTarget(villageCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n data = data.map(row => ({\r\n ...row,\r\n canal_RD: `${row?.Canal} (${row?.RD})`\r\n }))\r\n this.outletMasterData = data;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
{{''| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'TYPE'| translate}}\r\n \r\n \r\n \r\n {{'WATER_COURSE_NAME'| translate}}\r\n \r\n \r\n \r\n {{'RD'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATIONS'| translate}}\r\n \r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'CIRCLE'| translate}}\r\n \r\n \r\n \r\n {{'DIVISION'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'CCA'| translate}}\r\n \r\n \r\n \r\n {{'OFFICE_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_AREA'| translate}}\r\n \r\n \r\n \r\n {{'OFFICE_ORDER_NO'| translate}}\r\n \r\n \r\n \r\n {{'VIEW_OFFICE_ORDER_COPY'| translate}}\r\n \r\n \r\n {{'START_DATE'| translate}}\r\n \r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Type}}\r\n {{product?.Canal}}\r\n {{product?.RD}}\r\n {{product?.TotalApps}}\r\n {{product?.Constituency}}\r\n {{product?.Block}}\r\n {{product?.CircleName}}\r\n {{product?.Divison_Name}}\r\n {{product?.District}}\r\n {{product.Village}}\r\n {{product.CCA}}\r\n {{product.Office_Number}}\r\n {{product?.AreaAcre}}\r\n {{product?.documentID}}\r\n {{'VIEW_DOC' | translate}}\r\n {{product?.fromDate | date:'mediumDate'}}\r\n {{product?.endDate | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'DOCUMENT_NUMBER_IS_REQUIRED'\r\n |\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'START_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'END_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AREA_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'DOCUMENT_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'OUTLET_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'CCA_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { DatePipe } from '@angular/common';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-crop-master-status',\r\n templateUrl: './crop-master-status.component.html',\r\n styleUrls: ['./crop-master-status.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class CropMasterStatusComponent implements OnInit {\r\n\r\n @ViewChild('cropMasterTable', { static: true })\r\n public cropMasterTable: Table;\r\n\r\n public userId: any;\r\n public canalMasterData: any = [];\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n public loading: boolean = false;\r\n public ipAddress: any;\r\n public showDialogToUpdateStatus: any;\r\n public selectedCrop: any;\r\n public isSubmitted: boolean = false;\r\n updateStatusForm: FormGroup;\r\n menuItems: MenuItem[];\r\n appVerificationItems: MenuItem[];\r\n \r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n // appVerificationItems: MenuItem[];\r\n // cols: (\r\n // | { field: string; header: string; customExportHeader: string }\r\n // | { field: string; header: string; customExportHeader?: undefined }\r\n // )[];\r\n // exportColumns: { title: string; dataKey: string }[];\r\n\r\n constructor(\r\n private service: BaseService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private _personalDetalSer: FarmersDetailsService, \r\n private _fb: FormBuilder,\r\n private datePipe: DatePipe,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n this.loadDataAndApplyFilter();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.canalMasterData, \"Crop Master Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.canalMasterData, \"Crop Master Report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.canalMasterData, \"Crop Master Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.canalMasterData, \"Crop Master Report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.updateStatusForm = this._fb.group({\r\n documentID: ['', Validators.required], \r\n documentPath: ['', Validators.required],\r\n fromDate: ['', Validators.required],\r\n endDate: ['', Validators.required],\r\n area: ['', Validators.required],\r\n });\r\n\r\n // this.appVerificationItems = [\r\n // {\r\n // label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.exportExcel(this.canalMasterData, \"Vendor_MI_Estimation_List\");\r\n // }\r\n // },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.canalMasterData, \"Vendor_MI_Estimation_List\");\r\n // }\r\n // },\r\n // ];\r\n\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get updateStatusFormControls() {\r\n return this.updateStatusForm.controls;\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n\r\n this.selectedYear = res;\r\n this.loadData();\r\n // this.cropMasterTable.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getCropMasterStatus()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Crop Status', '', new Date(), 'Success');\r\n\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n\r\n if (data.length > 0) {\r\n this.canalMasterData = data;\r\n }\r\n else {\r\n this.canalMasterData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Crop Status', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateAction(val) {\r\n // let textVal = val?.Status == 'Open' ? 'close' : 'open';\r\n // this.confirmationService.confirm({\r\n // message: `Want to ${textVal} for ${val?.Crop_Name} crop?`,\r\n // header: 'Confirm',\r\n // icon: 'pi pi-exclamation-triangle',\r\n // accept: () => {\r\n // let reqBody = {\r\n // CropId: val?.Crop_ID,\r\n // Status: val?.Status == 'Open' ? 0 : 1,\r\n // NetworkId: this.ipAddress,\r\n // TerminalId: this.ipAddress\r\n // }\r\n // this.updateCropStatus(reqBody);\r\n // }\r\n // });\r\n this.selectedCrop = val;\r\n this.showDialogToUpdateStatus = true;\r\n }\r\n\r\n hideDialog(){\r\n this.showDialogToUpdateStatus = false;\r\n this.isSubmitted = false;\r\n this.updateStatusForm.reset();\r\n }\r\n\r\n saveProduct(){\r\n this.isSubmitted = true;\r\n if (this.updateStatusForm.valid) {\r\n let val = this.updateStatusForm.value;\r\n console.log(val)\r\n let reqBody = {\r\n CropId: this.selectedCrop?.Crop_ID,\r\n Status: this.selectedCrop?.Status == 'Open' ? 0 : 1,\r\n documentPath: val?.documentPath,\r\n documentID: val?.documentID,\r\n fromDate: val.fromDate ? this.datePipe.transform(new Date(val.fromDate), 'yyyy-MM-dd') : val.fromDate,\r\n endDate: val.endDate ? this.datePipe.transform(new Date(val.endDate), 'yyyy-MM-dd') : val.endDate,\r\n area: val?.area,\r\n NetworkId: this.ipAddress,\r\n TerminalId: this.ipAddress\r\n }\r\n this.updateCropStatus(reqBody);\r\n }\r\n \r\n }\r\n\r\n updateCropStatus(reqBody) {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .updateCropStatus(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.loadData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Status Updated Succesfully',\r\n });\r\n this.hideDialog();\r\n this.activityRecordService.activityRecord(this.userId, 'Update Crop Status', reqBody?.Crop_ID, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'Update Crop Status', reqBody?.Crop_ID, new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n this.loader.start();\r\n this._personalDetalSer.uploadFile(data, this.userId, formcontrol).subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.updateStatusForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Oops! Someting went wrong.',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n\r\n uploadElement.clear();\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Crop_Name', header: 'Crop Name' },\r\n { field: 'TotalApp', header: 'Total Apps' },\r\n { field: 'documentID', header: 'Document ID' },\r\n { field: 'AreaAcre', header: 'Target Area' },\r\n { field: 'fromDate', header: 'Start Date' },\r\n { field: 'endDate', header: 'End Date' },\r\n { field: 'Status', header: 'Status' },\r\n \r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.canalMasterData);\r\n doc.save('Applications_Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Crop Name\":d.Crop_Name,\r\n \"Total Apps\":d.TotalApp,\r\n \"Document ID\":d.documentID,\r\n \"Target Area\":d.AreaAcre,\r\n \"Start Date\":d.fromDate,\r\n \"End Date\":d.endDate,\r\n \"Status\":d.Status,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'CROP_WISE'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'CROP_NAME'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATIONS'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_AREA'| translate}}\r\n \r\n \r\n \r\n {{'OFFICE_ORDER_NO'| translate}}\r\n \r\n \r\n \r\n {{'VIEW_OFFICE_ORDER_COPY'| translate}}\r\n \r\n \r\n {{'START_DATE'| translate}}\r\n \r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}} \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Crop_Name}}\r\n {{product?.TotalApp}}\r\n {{product?.AreaAcre}}\r\n {{product?.documentID}}\r\n {{'VIEW_DOC' | translate}}\r\n {{product?.fromDate | date:'mediumDate'}}\r\n {{product?.endDate | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{canalMasterData ? canalMasterData.length : 0 }}\r\n {{'CROP_WISE'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'OFFICE_ORDER_NO_IS_REQUIRED'\r\n |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'START_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'END_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'TARGET_AREA_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'OFFICE_ORDER_COPY_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-mi-pond-target',\r\n templateUrl: './mi-pond-target.component.html',\r\n styleUrls: ['./mi-pond-target.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class MiPondTargetComponent implements OnInit {\r\n\r\n @ViewChild('miPondTable', { static: true })\r\n public miPondTable: Table;\r\n\r\n public userId: any;\r\n public miPondData: any = [];\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n public loading: boolean = false;\r\n public ipAddress: any;\r\n public showDialogToInsertTarget: any;\r\n public isSubmitted: boolean = false;\r\n public insertStatusForm: FormGroup;\r\n public menuItems: MenuItem[];\r\n\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n public districtList: any;\r\n public programmeList: any;\r\n public programmeTypeList: any;\r\n public isProgMI: boolean = false;\r\n public casteList: any = [];\r\n public atalBhujalSchemeList: any = [];\r\n public blockList: any = [];\r\n public villageList: any = [];\r\n\r\n constructor(\r\n private service: BaseService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private confirmationService: ConfirmationService,\r\n private loader: AppLoaderService,\r\n private _fb: FormBuilder,\r\n private datePipe: DatePipe,\r\n private cryptoJsService: CryptoJsService,\r\n private reportService: ReportsService,\r\n private vendorService: VendorDashboardService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadData();\r\n this.getProgramTypeMaster();\r\n this.getComponentMaster();\r\n this.getCasteList();\r\n this.getAtalBhujalList();\r\n\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.miPondData, \"FY: MI/ Pond Target\");\r\n }\r\n },\r\n ];\r\n\r\n this.insertStatusForm = this._fb.group({\r\n district: ['', Validators.required],\r\n block: [''],\r\n village: [''],\r\n programme: ['', Validators.required],\r\n programmeType: ['', Validators.required],\r\n area: ['', Validators.required],\r\n // amount: ['', Validators.required],\r\n // farmersToBeBenefitted: ['', Validators.required],\r\n caste: ['', Validators.required],\r\n abyUser: ['', Validators.required],\r\n fromDate: ['', Validators.required],\r\n endDate: ['', Validators.required],\r\n });\r\n\r\n // this.getVillageData();\r\n }\r\n\r\n getAtalBhujalList(){\r\n setTimeout(() => {\r\n this.atalBhujalSchemeList = [\r\n { label: 'All', value: 0 },\r\n { label: 'Atal Bhujal Village', value: 1 }\r\n ]\r\n }, 200)\r\n }\r\n\r\n getCasteList(){\r\n setTimeout(() => {\r\n this.casteList = [\r\n { label: 'All', value: 0 },\r\n { label: 'Gen', value: 1 },\r\n // { label: 'BC', value: 2 },\r\n { label: 'SC/ST', value: 3 },\r\n ]\r\n }, 200)\r\n }\r\n\r\n getComponentMaster() {\r\n // this.loader.start();\r\n let sub = this.vendorService\r\n .getComponentMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.programmeList = res;\r\n // this.loader.close();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectAtalScheme(){\r\n this.insertStatusForm.controls.block.setValue(null);\r\n this.insertStatusForm.controls.block.setValue(null);\r\n this.insertStatusForm.controls.village.setValue(null);\r\n this.districtList = [];\r\n this.blockList = [];\r\n this.villageList = [];\r\n\r\n let val = this.insertStatusForm.value;\r\n \r\n let schemeCode = val?.abyUser?.value\r\n this.getDistrictList(schemeCode);\r\n }\r\n\r\n getDistrictList(schemeCode) {\r\n let sub = this.reportService\r\n .getDistrictMasterOther(schemeCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.districtList = data;\r\n } else {\r\n this.districtList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.districtList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'District List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectDistrict(){\r\n // this.selectedBlock = null;\r\n this.insertStatusForm.controls.block.setValue(null);\r\n this.insertStatusForm.controls.village.setValue(null);\r\n this.blockList = [];\r\n this.villageList = [];\r\n\r\n let val = this.insertStatusForm.value;\r\n \r\n let districtCode = val?.district.Dist_Code;\r\n let schemeCode = val?.abyUser?.value\r\n this.getBlockList(districtCode, schemeCode);\r\n }\r\n\r\n getBlockList(districtCode, schemeCode) {\r\n let sub = this.reportService\r\n .getBlockMasterOther(districtCode, schemeCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.blockList = data;\r\n } else {\r\n this.blockList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.blockList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Block List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectBlock(){\r\n // this.selectedVillage = null;\r\n this.insertStatusForm.controls.village.setValue(null);\r\n this.villageList = [];\r\n\r\n let val = this.insertStatusForm.value;\r\n let districtCode = val?.district.Dist_Code;\r\n let blockCode = val?.block.Block_Code ? val?.block?.Block_Code : '';\r\n let schemeCode = val?.abyUser?.value\r\n this.getVillageList(districtCode, blockCode, schemeCode);\r\n }\r\n\r\n getVillageList(districtCode, blockCode, schemeCode) {\r\n let sub = this.reportService\r\n .getVillageMasterOther(districtCode, blockCode, schemeCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.villageList = data;\r\n } else {\r\n this.villageList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.villageList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Village List Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n getProgramTypeMaster() {\r\n setTimeout(() => {\r\n this.programmeTypeList = [\r\n {\r\n name: 'MI'\r\n },\r\n {\r\n name: 'Pond'\r\n }\r\n ]\r\n })\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get insertStatusFormControls() {\r\n return this.insertStatusForm.controls;\r\n }\r\n\r\n // loadDataAndApplyFilter() {\r\n // if (sessionStorage.getItem('financialYear')) {\r\n // this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n // }\r\n\r\n // this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n // (res) => {\r\n // this.selectedYear = res;\r\n // this.loadData();\r\n // }\r\n // );\r\n // }\r\n\r\n loadData() {\r\n this.getIP();\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getTargetsMIPond()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Pond Target', '', new Date(), 'Success');\r\n\r\n this.userId = JSON.parse(payload)?.sub;\r\n // data = JSON.parse(data)\r\n if (data.length > 0) {\r\n this.miPondData = data.map((val) => ({\r\n ...val,\r\n Status: val?.Active == 1 ? 'Running' : val?.Active == 0 ? 'Closed' : val?.Active\r\n }))\r\n }\r\n else {\r\n this.miPondData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Pond Target', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n addTarget() {\r\n // this.selectedOutlet = val;\r\n this.showDialogToInsertTarget = true;\r\n }\r\n\r\n hideDialog() {\r\n this.showDialogToInsertTarget = false;\r\n this.isSubmitted = false;\r\n this.insertStatusForm.reset();\r\n this.blockList = [];\r\n }\r\n\r\n saveProduct() {\r\n this.isSubmitted = true;\r\n if (this.insertStatusForm.valid) {\r\n let val = this.insertStatusForm.value;\r\n if (val?.fromDate > val?.endDate) {\r\n this.messageService.add({ severity: 'error', summary: 'Date Error', detail: 'Start date should before End date', life: 3000 });\r\n return;\r\n }\r\n // console.log(val?.village)\r\n // console.log(val?.block, val?.block)\r\n // console.log(val?.district.Dist_Code)\r\n let dataObj = [{\r\n GeoId: val?.village?.Vill_Code ? val?.village?.Vill_Code : val?.block?.Block_Code ? val?.block?.Block_Code : val?.district?.Dist_Code,\r\n GeoType: val?.village?.Vill_Code ? 'Village' : val?.block?.Block_Code ? 'Block' : val?.district?.Dist_Code ? 'District' : '',\r\n ProgId: val?.programme.Program_Id,\r\n ProgramType: val?.programmeType?.name,\r\n Area: val?.area,\r\n Amount: 0,\r\n FarmersToBeBenefitted: 0,\r\n ABYUser: val?.abyUser?.value,\r\n CasteCode: val?.caste?.value,\r\n StartDate: val.fromDate ? this.datePipe.transform(new Date(val.fromDate), 'yyyy-MM-dd') : val.fromDate,\r\n EndDate: val.endDate ? this.datePipe.transform(new Date(val.endDate), 'yyyy-MM-dd') : val.endDate,\r\n }]\r\n let reqBody = {\r\n listData: dataObj,\r\n userID: this.userId,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n }\r\n this.insertMiPondTarget(reqBody);\r\n }\r\n\r\n }\r\n\r\n insertMiPondTarget(reqBody) {\r\n console.log(reqBody) \r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .insertTarget(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data == \"Insertion successful\") {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.refreshTable();\r\n this.hideDialog();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n this.activityRecordService.activityRecord(this.userId, 'Insert MI Pond Target', reqBody?.GeoId, new Date(), 'Success', reqBody);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'Insert MI Pond Target', reqBody?.GeoId, new Date(), err, reqBody);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Financial Year\": d.FinYear,\r\n \"Programme Type\": d.ProgramType,\r\n \"Programme Name\": d.ProgramName,\r\n \"User Type\": d.UserType,\r\n \"District\": d.District,\r\n \"Caste\": d.Caste,\r\n \"Area\": d.Area,\r\n \"Total App\": d.TotalApp,\r\n \"Start Date\": d.StartDate ? this.datePipe.transform(new Date(d.StartDate), 'yyyy-MM-dd') : d.StartDate,\r\n \"End Date\": d.Enddate ? this.datePipe.transform(new Date(d.Enddate), 'yyyy-MM-dd') : d.Enddate,\r\n \"Current Status\": d.Status,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.Active == 1) {\r\n //light green\r\n return '#99e699'\r\n }\r\n else if (row.Active == 0) {\r\n //red\r\n return '#ff8080';\r\n }\r\n else return '#ffffff';\r\n }\r\n\r\n updateStatus(val) {\r\n let updateStatus = '';\r\n if (val.Active == 1) {\r\n updateStatus = 'Inactive';\r\n } else if (val.Active == 0) {\r\n updateStatus = 'Active';\r\n }\r\n\r\n this.confirmationService.confirm({\r\n header: 'Confirmation',\r\n message: `Are you sure you want to update(${updateStatus}) the status of ${val?.ProgramName} and ${val?.ProgramType}`,\r\n acceptIcon: 'pi pi-check mr-2',\r\n rejectIcon: 'pi pi-times mr-2',\r\n rejectButtonStyleClass: 'p-button-sm',\r\n acceptButtonStyleClass: 'p-button-outlined p-button-sm',\r\n accept: () => {\r\n let reqBody = {\r\n AutoId: val?.Autoid,\r\n Active: val?.Active\r\n }\r\n this.updateProgStatus(reqBody);\r\n },\r\n reject: () => {\r\n // this.messageService.add({ severity: 'error', summary: 'Rejected', detail: 'You have rejected', life: 3000 });\r\n }\r\n });\r\n }\r\n\r\n updateProgStatus(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n this.loader.start();\r\n let sub = this.deptDashBoardService\r\n .updateMIPondTarget(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n this.refreshTable();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onSelectProg(val) {\r\n if (val?.name == 'MI') {\r\n this.isProgMI = true;\r\n this.setProgramTypeList('MI');\r\n } else if (val?.name == 'Pond') {\r\n this.isProgMI = false;\r\n this.setProgramTypeList('Pond');\r\n }\r\n }\r\n\r\n setProgramTypeList(val) {\r\n if (val == 'MI') {\r\n this.programmeList = [\r\n {\r\n \"Program_Id\": 0,\r\n \"Program_Name\": \"All\",\r\n \"Active\": true\r\n },\r\n {\r\n \"Program_Id\": 1,\r\n \"Program_Name\": \"Portable Sprinkler\",\r\n \"Active\": true\r\n },\r\n {\r\n \"Program_Id\": 2,\r\n \"Program_Name\": \"Mini Sprinkler\",\r\n \"Active\": true\r\n },\r\n {\r\n \"Program_Id\": 3,\r\n \"Program_Name\": \"Drip\",\r\n \"Active\": true\r\n }\r\n ]\r\n } else if (val == 'Pond') {\r\n this.programmeList = [\r\n {\r\n \"Program_Id\": 0,\r\n \"Program_Name\": \"Pond\",\r\n \"Active\": true\r\n }\r\n ]\r\n this.insertStatusFormControls.programme.setValue( this.programmeList[0] );\r\n }\r\n }\r\n}\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n {{'PROGRAMME_TYPE'| translate}}\r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n {{'USER_TYPE'| translate}}\r\n \r\n \r\n {{'DISTRICT/BLOCK/VILLAGE'| translate}}\r\n {{'CASTE'| translate}}\r\n {{'AREA'| translate}}\r\n \r\n {{'TOTAL_ARCHIEVED_AREA'| translate}}\r\n {{'TOTAL_ARCHIEVED_APP'| translate}}\r\n {{'LAST_APP_RECIEVED_ON'| translate}}\r\n {{'TOTAL_APP'| translate}}\r\n \r\n {{'START_DATE'| translate}}\r\n {{'END_DATE'| translate}}\r\n {{'STATUS'| translate}}\r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{val?.FinYear}}\r\n {{val?.ProgramType}}\r\n {{val?.ProgramName}}\r\n {{val?.UserType}}\r\n {{val?.District}}\r\n {{val?.Caste}}\r\n {{val?.Area}}\r\n \r\n {{val?.AchievedArea}}\r\n {{val?.AchievedApplication}}\r\n {{val?.LastAppDate}}\r\n {{val?.TotalApp}}\r\n \r\n {{val?.startDate | date:'mediumDate'}}\r\n {{val?.endDate | date:'mediumDate'}}\r\n \r\n \r\n {{val?.Status}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{miPondData ?\r\n miPondData.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'ACTIVE' | translate}}\r\n
\r\n \r\n
\r\n \r\n
{{'INACTIVE' | translate}}\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'CASTE_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'ATAL_BHUJAL_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'DISTRICT_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'BLOCK_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'BLOCK_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'PROGRAMME_TYPE_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'PROGRAMME_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AREA_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
{{'START_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'END_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n {{ 'START_DATE_MUST_BE_BEFORE_END_DATE' | translate }}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n \r\n
\r\n \r\n

{{ message.message }}

\r\n
\r\n
\r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Table } from 'primeng/table';\r\nimport { Validators, FormGroup, FormBuilder } from '@angular/forms';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { DatePipe } from '@angular/common';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-over-flow-pond',\r\n templateUrl: './over-flow-pond.component.html',\r\n styleUrls: ['./over-flow-pond.component.scss'],\r\n providers: [DatePipe]\r\n})\r\nexport class OverFlowPondComponent implements OnInit {\r\n\r\n @ViewChild('overFlowPondTable', { static: true })\r\n public overFlowPondTable: Table;\r\n\r\n public userId: any;\r\n public overFlowPondMasterData: any = [];\r\n public loading: boolean = false;\r\n public showDialogToUpdateStatus: any = false;\r\n public ipAddress: any;\r\n public isSubmitted: boolean = false;\r\n public subscriptions: any = []\r\n public updateStatusForm: FormGroup;\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n public selectedCrop: any;\r\n public product: any;\r\n public selectedOverFlowPond: any;\r\n public showDialogToAddCanal: boolean = false;\r\n public addCanalForm: FormGroup;\r\n public selectedVillage: any;\r\n public filteredVillage: any = [];\r\n public addCanalSubmitted: boolean = false;\r\n public villageList: any = [];\r\n public outletMasterData = [];\r\n menuItems: MenuItem[];\r\n appVerificationItems: MenuItem[];\r\n \r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n constructor(\r\n private service: BaseService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private confirmationService: ConfirmationService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private _fb: FormBuilder,\r\n private datePipe: DatePipe,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n this.loadDataAndApplyFilter();\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.overFlowPondMasterData, \"Over Flow Pond Master Data\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.overFlowPondMasterData, \"Over Flow Pond Master Data Master Report\");\r\n // }\r\n // },\r\n ];\r\n\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.overFlowPondMasterData, \"Over Flow Pond Master Data\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.overFlowPondMasterData, \"Over Flow Pond Master Data\");\r\n // }\r\n // },\r\n ];\r\n // console.log(this.overFlowPondMasterData);\r\n // console.log(this.overFlowPondMasterData.length);\r\n\r\n this.updateStatusForm = this._fb.group({\r\n documentID: ['', Validators.required], \r\n documentPath: ['', Validators.required],\r\n fromDate: ['', Validators.required],\r\n endDate: ['', Validators.required],\r\n area: ['', Validators.required],\r\n });\r\n\r\n this.addCanalForm = this._fb.group({\r\n outlet: ['', [Validators.required]],\r\n village: [, [Validators.required]],\r\n cca: [, [Validators.required]],\r\n });\r\n\r\n this.getVillageData();\r\n\r\n }\r\n\r\n get updateStatusFormControls() {\r\n return this.updateStatusForm.controls;\r\n }\r\n\r\n // ngOnDestroy(){\r\n // this.subscriptions.forEach(sub => sub.unsubscribe());\r\n // if(this.subjectSub){\r\n // this.subjectSub.unsubscribe();\r\n // }\r\n // }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n\r\n this.selectedYear = res;\r\n this.loadData();\r\n // this.cropMasterTable.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n // get updateStatusFormControls() {\r\n // return this.updateStatusForm.controls;\r\n // }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getOverflowPondMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Update Overflow Pond Status', '', new Date(), 'Success');\r\n\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n\r\n if (data.length > 0) {\r\n this.overFlowPondMasterData = data;\r\n }\r\n else {\r\n this.overFlowPondMasterData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Crop Status', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n addCanalDetails(){\r\n this.showDialogToAddCanal = true;\r\n }\r\n\r\n hideAddDialog(){\r\n this.showDialogToAddCanal = false;\r\n this.selectedVillage = {};\r\n this.addCanalSubmitted = false;\r\n this.addCanalForm.reset();\r\n this.outletMasterData = [];\r\n }\r\n\r\n\r\n onAddSubmit(){\r\n this.addCanalSubmitted = true;\r\n if (this.addCanalForm.invalid) {\r\n return;\r\n }else{\r\n let val = this.addCanalForm.value;\r\n console.log(val)\r\n let reqBody = {\r\n \"recordId\": val.outlet.recordID,\r\n \"type\": 1,\r\n \"cca\": val.cca,\r\n \"villageCode\": this.selectedVillage?.Code,\r\n \"netWork_Id\": this.ipAddress,\r\n \"terminal_Id\": this.ipAddress\r\n }\r\n\r\n this.submitOutletToTarget(reqBody);\r\n }\r\n }\r\n\r\n submitOutletToTarget(reqBody){\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .addOverFlowPondToTarget(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.loadData();\r\n if(data == \"Status updated Successfully\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: data,\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: data,\r\n });\r\n }\r\n \r\n this.hideAddDialog();\r\n this.activityRecordService.activityRecord(this.userId, 'Add Overflow Pond', '', new Date(), 'Success', reqBody);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'Add Overflow Pond', '', new Date(), err, reqBody);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n \r\n\r\n get f() {\r\n return this.addCanalForm.controls;\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n getVillageData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(res);\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList]\r\n if(!window.sessionStorage.getItem(\"villageMaster\")){\r\n window.sessionStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n })\r\n }\r\n\r\n onSelectVillage(){\r\n console.log('Village selected', this.selectedVillage);\r\n this.f.outlet.reset();\r\n this.getOutletsForTarget(this.selectedVillage.Code);\r\n }\r\n\r\n updateAction(val){\r\n this.showDialogToUpdateStatus = true;\r\n this.selectedOverFlowPond = val;\r\n }\r\n\r\n saveProduct() {\r\n if (this.updateStatusForm.valid) {\r\n let val = this.updateStatusForm.value;\r\n console.log(val)\r\n let reqBody = {\r\n AutoId: this.selectedOverFlowPond?.AutoID,\r\n Status: this.selectedOverFlowPond?.Status == 'Open' ? 0 : 1,\r\n documentPath: val?.documentPath,\r\n documentID: val?.documentID,\r\n fromDate: val.fromDate ? this.datePipe.transform(new Date(val.fromDate), 'yyyy-MM-dd') : val.fromDate,\r\n endDate: val.endDate ? this.datePipe.transform(new Date(val.endDate), 'yyyy-MM-dd') : val.endDate,\r\n area: val?.area,\r\n NetworkId: this.ipAddress,\r\n TerminalId: this.ipAddress\r\n }\r\n this.updateOverFLowPondStatus(reqBody);\r\n }\r\n }\r\n\r\n updateOverFLowPondStatus(reqBody) {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .updateOverFLowPondTargetStatus(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.loadData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Status Updated Succesfully',\r\n });\r\n this.hideUpdateDialog();\r\n this.activityRecordService.activityRecord(this.userId, 'Update OverFlow Status', reqBody?.Auto_ID, new Date(), 'Success', reqBody);\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'Update OverFlow Status', reqBody?.Auto_ID, new Date(), err, reqBody);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n hideUpdateDialog(){\r\n this.showDialogToUpdateStatus = false;\r\n this.isSubmitted = false;\r\n this.updateStatusForm.reset();\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n this.loader.start();\r\n this._personalDetalSer.uploadFile(data, this.userId, formcontrol).subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.updateStatusForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Oops! Someting went wrong.',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n\r\n uploadElement.clear();\r\n }\r\n\r\n getOutletsForTarget(villageCode){\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .getOutletsForTarget(villageCode)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n data = data.map(row => ({\r\n ...row,\r\n canal_RD: `${row?.Canal} (${row?.RD})`\r\n }))\r\n this.outletMasterData = data;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'TotalApps', header: 'Total Apps' },\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'Name', header: 'Overflow Pond Name' },\r\n { field: 'CCA', header: 'CCA' },\r\n { field: 'documentID', header: 'Document ID' },\r\n { field: 'Created_Date', header: 'Created Date' },\r\n { field: 'Updated_Date', header: 'Updated Date' },\r\n { field: 'fromDate', header: 'Start Date' },\r\n { field: 'endDate', header: 'End Date' },\r\n { field: 'AreaAcre', header: 'Target Area' },\r\n { field: 'CurrentStatus', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.overFlowPondMasterData);\r\n doc.save('Applications_Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Total Apps\":d.TotalApps,\r\n \"Constituency\":d.Constituency,\r\n \"Block\":d.Block,\r\n \"District\":d.District,\r\n \"Village\":d.Village,\r\n \"Overflow Pond Name\":d.Name,\r\n \"CCA\":d.CCA,\r\n \"Document ID\":d.documentID, \r\n \"Created Date\":d.Created_Date,\r\n \"Updated Date\":d.Updated_Date,\r\n \"Start date\":d.fromDate, \r\n \"End Date\":d.endDate, \r\n \"Target Area\":d.AreaAcre,\r\n \"Current Status\":d.CurrentStatus, \r\n\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n refreshTable() {\r\n this.loadData();\r\n }\r\n}\r\n\r\n\r\n\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'OVERFLOW_POND_BASED'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'TOTAL_APPLICATIONS'| translate}}\r\n \r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'OVERFLOW_POND_NAME'| translate}}\r\n \r\n \r\n \r\n {{'CCA'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_AREA'| translate}}\r\n \r\n \r\n \r\n {{'OFFICE_ORDER_NO'| translate}}\r\n \r\n \r\n \r\n {{'VIEW_OFFICE_ORDER_COPY'| translate}}\r\n \r\n \r\n \r\n {{'CREATED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'UPDATED_DATE'| translate}}\r\n \r\n \r\n \r\n {{'START_DATE'| translate}}\r\n \r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}} \r\n \r\n \r\n \r\n \r\n {{product?.TotalApps}}\r\n {{product?.Constituency}}\r\n {{product?.Block}}\r\n {{product?.District}}\r\n {{product?.Village}}\r\n {{product?.Name}}\r\n {{product?.CCA}}\r\n {{product?.AreaAcre}}\r\n {{product?.documentId}}\r\n {{'VIEW_DOC' | translate}}\r\n {{product?.Created_Date | date:'mediumDate'}}\r\n {{product?.Updated_Date | date:'mediumDate'}}\r\n {{product?.fromDate | date:'mediumDate' }}\r\n {{product?.endDate | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{overFlowPondMasterData ? overFlowPondMasterData.length : 0 }}\r\n {{'OVERFLOW_POND_BASED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'DOCUMENT_NUMBER_IS_REQUIRED'\r\n |\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'START_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'END_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AREA_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'DOCUMENT_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'VILLAGE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
{{'OUTLET_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'CCA_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { Table } from 'primeng/table';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-stp-target',\r\n templateUrl: './stp-target.component.html',\r\n styleUrls: ['./stp-target.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class StpTargetComponent implements OnInit {\r\n\r\n @ViewChild('canalMasterTable', { static: true })\r\n public canalMasterTable: Table;\r\n\r\n public userId: any;\r\n public canalMasterData: any = [];\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n public loading: boolean = false;\r\n public ipAddress: any;\r\n public showDialog: boolean = false;\r\n submitEstimateForm: FormGroup;\r\n public showDialogToUpdateStatus: any;\r\n public selectedOutlet: any;\r\n public isSubmitted: boolean = false;\r\n updateStatusForm: FormGroup;\r\n menuItems: MenuItem[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n appVerificationItems: MenuItem[];\r\n // appVerificationItems: MenuItem[];\r\n // cols: (\r\n // | { field: string; header: string; customExportHeader: string }\r\n // | { field: string; header: string; customExportHeader?: undefined }\r\n // )[];\r\n // exportColumns: { title: string; dataKey: string }[];\r\n\r\n constructor(\r\n private service: BaseService,\r\n private activityRecordService: ActivityRecordService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private messageService: MessageService,\r\n private ipService: IpAddressService,\r\n private confirmationService: ConfirmationService,\r\n private loader: AppLoaderService,\r\n private _personalDetalSer: FarmersDetailsService, \r\n private _fb: FormBuilder,\r\n private datePipe: DatePipe,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadDataAndApplyFilter();\r\n\r\n this.menuItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.canalMasterData, \"STP Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.canalMasterData, \"STP Report\");\r\n // }\r\n // },\r\n ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.canalMasterData, \"STP Report\");\r\n }\r\n },\r\n // {\r\n // label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n // this.downloadSheetAsPdf(this.canalMasterData, \"STP Report\");\r\n // }\r\n // },\r\n ];\r\n this.updateStatusForm = this._fb.group({\r\n documentID: ['', Validators.required], \r\n documentPath: ['', Validators.required],\r\n fromDate: ['', Validators.required],\r\n endDate: ['', Validators.required],\r\n area: ['', Validators.required],\r\n });\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get updateStatusFormControls() {\r\n return this.updateStatusForm.controls;\r\n }\r\n\r\n loadDataAndApplyFilter() {\r\n if (sessionStorage.getItem('financialYear')) {\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear'))\r\n }\r\n\r\n this.subjectSub = this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n\r\n this.selectedYear = res;\r\n this.loadData();\r\n // this.canalMasterTable.filters['FinYear'] = [\r\n // { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n loadData() {\r\n this.getIP();\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.deptDashBoardService\r\n .getOutletMasterForCanal()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Outlet Master For Canal', '', new Date(), 'Success');\r\n\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n // data = JSON.parse(data)\r\n if (data.length > 0) {\r\n this.canalMasterData = data;\r\n this.canalMasterData = this.canalMasterData.filter((val) => val?.Type == 'STP');\r\n if(this.canalMasterData.length == 0){\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n console.log(this.canalMasterData)\r\n }\r\n else {\r\n this.canalMasterData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Outlet Master For Canal', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n \r\n updateAction(val) {\r\n // let textVal = val?.CurrentStatus == 'Open' ? 'close' : 'open';\r\n // this.confirmationService.confirm({\r\n // message: `Want to ${textVal} for ${val?.WaterCourse_Name}?`,\r\n // header: 'Confirm',\r\n // icon: 'pi pi-exclamation-triangle',\r\n // accept: () => {\r\n // let reqBody = {\r\n // AutoId: val?.Auto_ID,\r\n // Status: val?.CurrentStatus == 'Open' ? 0 : 1,\r\n // NetworkId: this.ipAddress,\r\n // TerminalId: this.ipAddress\r\n // }\r\n // this.updateOutletStatus(reqBody);\r\n // }\r\n // });\r\n this.selectedOutlet = val;\r\n this.showDialogToUpdateStatus = true;\r\n }\r\n\r\n hideDialog(){\r\n this.showDialogToUpdateStatus = false;\r\n this.isSubmitted = false;\r\n this.updateStatusForm.reset();\r\n }\r\n\r\n saveProduct(){\r\n this.isSubmitted = true;\r\n if (this.updateStatusForm.valid) {\r\n let val = this.updateStatusForm.value;\r\n console.log(val)\r\n let reqBody = {\r\n AutoId: this.selectedOutlet?.Auto_ID,\r\n Status: this.selectedOutlet?.Status == 'Open' ? 0 : 1,\r\n documentPath: val?.documentPath,\r\n documentID: val?.documentID,\r\n fromDate: val.fromDate ? this.datePipe.transform(new Date(val.fromDate), 'yyyy-MM-dd') : val.fromDate,\r\n endDate: val.endDate ? this.datePipe.transform(new Date(val.endDate), 'yyyy-MM-dd') : val.endDate,\r\n area: val?.area,\r\n NetworkId: this.ipAddress,\r\n TerminalId: this.ipAddress\r\n }\r\n this.updateOutletStatus(reqBody);\r\n }\r\n \r\n }\r\n\r\n updateOutletStatus(reqBody) {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .updateOutletStatus(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.loadData();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: 'Status Updated Succesfully',\r\n });\r\n this.hideDialog();\r\n this.activityRecordService.activityRecord(this.userId, 'Update STP Status', reqBody?.Auto_ID, new Date(), 'Success');\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'Update STP Status', reqBody?.Auto_ID, new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n this.loader.start();\r\n this._personalDetalSer.uploadFile(data, this.userId, formcontrol).subscribe(\r\n (resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200) {\r\n this.updateStatusForm.patchValue({ [formcontrol]: resp.data });\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Oops! Someting went wrong.',\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n }\r\n );\r\n\r\n uploadElement.clear();\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n // downloadSheetAsPdf(modelData, filename) {\r\n // this.cols = [\r\n // { field: 'appID', header: 'APP ID' },\r\n // { field: 'FarmerName', header: 'Farmer Name' },\r\n // { field: 'village', header: 'Village' },\r\n // { field: 'block', header: 'Block' },\r\n // { field: 'district', header: 'District' },\r\n // { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n // { field: 'ProgrammeName', header: 'Programme Name' },\r\n // { field: 'LandDetail', header: 'Land Detail' },\r\n // { field: 'Total_Area', header: 'Total Area' },\r\n // { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n // { field: 'Status_Ar', header: 'Current Status' },\r\n // { field: 'status', header: 'Status' },\r\n // { field: 'DeptRemarks', header: 'Dept Remarks' },\r\n // ];\r\n\r\n // this.exportColumns = this.cols.map((col) => ({\r\n // title: col.header,\r\n // dataKey: col.field,\r\n // }));\r\n\r\n // import('jspdf').then((jsPDF) => {\r\n // import('jspdf-autotable').then((x) => {\r\n // const doc = new jsPDF.default(0, 0);\r\n // doc.autoTable(this.exportColumns, this.canalMasterData);\r\n // doc.save('Applications_Details.pdf');\r\n // });\r\n // });\r\n // }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"Type\":d.Type,\r\n \"Water Course Name\":d.Canal,\r\n \"RD\":d.RD,\r\n \"Total Apps\":d.TotalApps,\r\n \"Constituency\":d.Constituency,\r\n \"Block\":d.Block,\r\n \"Circle Name\":d.CircleName,\r\n \"Divison Name\":d.Divison_Name,\r\n \"District\":d.District,\r\n \"Village\":d.Village,\r\n \"CCA\":d.CCA,\r\n \"Office Number\":d.Office_Number,\r\n \"Area Acre\":d.AreaAcre,\r\n \"Document ID\":d.documentID, \r\n \"Start date\":d.fromDate, \r\n \"End Date\":d.endDate, \r\n \"Current Status\":d.CurrentStatus, \r\n\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'Type', header: 'Type' },\r\n { field: 'Canal', header: 'Water Course Name' },\r\n { field: 'RD', header: 'RD' },\r\n { field: 'TotalApps', header: 'Total Apps' },\r\n { field: 'Constituency', header: 'Constituency' },\r\n { field: 'Block', header: 'Block' },\r\n { field: 'CircleName', header: 'Circle Name' },\r\n { field: 'Divison_Name', header: 'Divison Name' },\r\n { field: 'District', header: 'District' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'CCA', header: 'CCA' },\r\n { field: 'Office_Number', header: 'Office Number' },\r\n { field: 'AreaAcre', header: 'Target Area' },\r\n { field: 'documentID', header: 'Document ID' },\r\n { field: 'fromDate', header: 'Start Date' },\r\n { field: 'endDate', header: 'End Date' },\r\n { field: 'CurrentStatus', header: 'Current Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.canalMasterData);\r\n doc.save('Applications_Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n refreshTable() {\r\n this.loadData();\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{''| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'TYPE'| translate}}\r\n \r\n \r\n \r\n {{'WATER_COURSE_NAME'| translate}}\r\n \r\n \r\n \r\n {{'RD'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_APPLICATIONS'| translate}}\r\n \r\n \r\n \r\n {{'CONSTITUENCY'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'CIRCLE'| translate}}\r\n \r\n \r\n \r\n {{'DIVISION'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'CCA'| translate}}\r\n \r\n \r\n \r\n {{'OFFICE_NUMBER'| translate}}\r\n \r\n \r\n \r\n {{'TARGET_AREA'| translate}}\r\n \r\n \r\n \r\n {{'OFFICE_ORDER_NO'| translate}}\r\n \r\n \r\n \r\n {{'VIEW_OFFICE_ORDER_COPY'| translate}}\r\n \r\n \r\n {{'START_DATE'| translate}}\r\n \r\n \r\n \r\n {{'END_DATE'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'ACTION'| translate}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product?.Type}}\r\n {{product?.Canal}}\r\n {{product?.RD}}\r\n {{product?.TotalApps}}\r\n {{product?.Constituency}}\r\n {{product?.Block}}\r\n {{product?.CircleName}}\r\n {{product?.Divison_Name}}\r\n {{product?.District}}\r\n {{product.Village}}\r\n {{product.CCA}}\r\n {{product.Office_Number}}\r\n {{product?.AreaAcre}}\r\n {{product?.documentID}}\r\n {{'VIEW_DOC' | translate}}\r\n {{product?.fromDate | date:'mediumDate'}}\r\n {{product?.endDate | date:'mediumDate'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'DOCUMENT_NUMBER_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'START_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'END_DATE_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'AREA_IS_REQUIRED' |\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
{{'DOCUMENT_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n\r\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-tubewell-connection-dashboard',\r\n templateUrl: './tubewell-connection-dashboard.component.html',\r\n styleUrls: ['./tubewell-connection-dashboard.component.scss'],\r\n})\r\nexport class TubewellConnectionDashboardComponent implements OnInit {\r\n @ViewChild('targetTable') targetTable: ElementRef;\r\n\r\n public showOwnMIResourceCard: boolean = false;\r\n public ownMIfarmerDetailsForm: FormGroup;\r\n\r\n public componentMasterList: any = [];\r\n public miVendorList: any = [];\r\n public filteredmiVendorList: any = [];\r\n\r\n public uploadedBillFiles: any[] = [];\r\n\r\n public blockSpace: RegExp = /^[^\\s,]([^,]*[^\\s,])?$/;\r\n\r\n public ipAddress: any = '000.000.000';\r\n\r\n public filteredVillage: any[];\r\n public villageList: any;\r\n\r\n public finYearList: any[] = [];\r\n\r\n public subjectSub: any;\r\n public subscriptions: any = [];\r\n\r\n constructor(\r\n public router: Router,\r\n private fb: FormBuilder,\r\n private loader: AppLoaderService,\r\n private fApplicationService: FarmersApplicationService,\r\n private messageService: MessageService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private ipService: IpAddressService,\r\n private reportService: ReportsService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n farmerconfData.delete('isApplyForNocRed');\r\n\r\n const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n\r\n\r\n this.ownMIfarmerDetailsForm = this.fb.group({\r\n appNo: ['', [Validators.required]],\r\n name: ['', [Validators.required]],\r\n fatherName: ['', [Validators.required]],\r\n programmeName: [0, [Validators.required]],\r\n vendor: ['', [Validators.required]],\r\n killaNo: ['', [Validators.required]],\r\n totalArea: [0, [Validators.required]],\r\n villageCode: ['', [Validators.required]],\r\n finYear: ['', [Validators.required]],\r\n mobileNo: ['', [Validators.required, Validators.minLength(10), Validators.maxLength(10)]],\r\n aadharNo: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.minLength(12),\r\n Validators.maxLength(12),\r\n ],\r\n ],\r\n billPath: ['', Validators.required],\r\n landOwnerPath: ['', Validators.required],\r\n // nocCertificatePath: ['',],\r\n\r\n // enteredQuantity: ['', [Validators.required, Validators.min(0)]],\r\n // coveredArea: ['', [Validators.required, Validators.min(0)]],\r\n });\r\n\r\n this.getVillageData();\r\n // this.getFinYearList();\r\n this.getIP();\r\n\r\n setTimeout(() => {\r\n this.componentMasterList = [\r\n {\r\n Program_Id: 1,\r\n Program_Name: 'Portable Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 2,\r\n Program_Name: 'Mini Sprinkler',\r\n Active: true,\r\n },\r\n {\r\n Program_Id: 3,\r\n Program_Name: 'Drip',\r\n Active: true,\r\n },\r\n ];\r\n }, 100);\r\n\r\n\r\n let farmerMobNo = farmerconfData.get('ownMIfarmerPh') ? farmerconfData.get('ownMIfarmerPh') : '';\r\n\r\n this.ownMIfarmerDetailsForm.controls.mobileNo.setValue(farmerMobNo);\r\n\r\n setTimeout(() => {\r\n this.finYearList = [\r\n { FinancialYears: \"2010-11\" },\r\n { FinancialYears: \"2011-12\" },\r\n { FinancialYears: \"2012-13\" },\r\n { FinancialYears: \"2013-14\" },\r\n { FinancialYears: \"2014-15\" },\r\n { FinancialYears: \"2015-16\" },\r\n { FinancialYears: \"2016-17\" },\r\n { FinancialYears: \"2017-18\" },\r\n { FinancialYears: \"2018-19\" },\r\n { FinancialYears: \"2019-20\" },\r\n { FinancialYears: \"2020-21\" },\r\n { FinancialYears: \"2021-22\" },\r\n { FinancialYears: \"2022-23\" },\r\n { FinancialYears: \"2023-24\" },\r\n ]\r\n }, 100)\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach((sub) => sub.unsubscribe());\r\n if (this.subjectSub) {\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n getFinYearList() {\r\n let sub = this.reportService\r\n .getFinanacialYearList()\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.length > 0) {\r\n this.finYearList = data;\r\n } else {\r\n this.finYearList = [];\r\n }\r\n },\r\n error: (err) => {\r\n this.finYearList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Finanacial Year',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n onClickAvailSub() {\r\n this.showOwnMIResourceCard = false;\r\n // const url = this.router.createUrlTree(['phone-login']).toString();\r\n // window.open(url, '_blank');\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n\r\n farmerconfData.set('isApplyForNocRed', '1');\r\n\r\n const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n\r\n\r\n this.router.navigate(['farmer/dashboard']);\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Info Message',\r\n // detail: 'Wait, functionilty available soon.',\r\n // });\r\n }\r\n\r\n onClickExtMI() {\r\n this.showOwnMIResourceCard = true;\r\n\r\n setTimeout(\r\n () =>\r\n this.targetTable.nativeElement.scrollIntoView({\r\n block: 'center',\r\n behavior: 'smooth',\r\n }),\r\n 200\r\n );\r\n }\r\n\r\n getVillageData() {\r\n this._personalDetalSer.getVillageMatserData().subscribe((res) => {\r\n // this.loader.close();\r\n // console.log(res);\r\n this.villageList = res;\r\n this.filteredVillage = [...this.villageList];\r\n\r\n // if (this.farmerData?.Village_Code) {\r\n // let village = this.villageList?.filter(val => val?.Code === this.farmerData?.Village_Code)[0]\r\n // this.farmersFormControls.village.setValue(village?.Name);\r\n // this.selectedVillage = village;\r\n // }\r\n\r\n if (!window.localStorage.getItem('villageMaster')) {\r\n window.localStorage.setItem('villageMaster', JSON.stringify(res));\r\n }\r\n });\r\n }\r\n\r\n filterVillage(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.villageList.length; i++) {\r\n const village = this.villageList[i];\r\n if (village.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(village);\r\n }\r\n }\r\n\r\n this.filteredVillage = filtered;\r\n }\r\n\r\n onSelectProgramme() {\r\n this.ownMIfarmerDetailsForm.controls['vendor'].reset();\r\n // this.vendor = [];\r\n\r\n // this. showErrMsgOfInvArea = false;\r\n // this.invAreaMsg = null;\r\n\r\n // let vendor = this.estimationDetailsForm.controls['vendor'].value;\r\n let vendor = 0;\r\n let programme = this.ownMIfarmerDetailsForm.controls['programmeName'].value;\r\n this.getVendorDropdown(programme?.Program_Id);\r\n }\r\n\r\n getVendorDropdown(programId) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getAllMIvenders(programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n this.miVendorList = res;\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.miVendorList = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n filterMIVendor(event: any) {\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.miVendorList.length; i++) {\r\n const vendor = this.miVendorList[i];\r\n if (vendor.Name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(vendor);\r\n }\r\n }\r\n this.filteredmiVendorList = filtered;\r\n }\r\n\r\n onBillUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let farmerMobNo = farmerconfData.get('ownMIfarmerPh') ? farmerconfData.get('ownMIfarmerPh') : '';\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, farmerMobNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedBillFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedBillFiles.push(file);\r\n console.log(this.uploadedBillFiles);\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Bill Uploaded Successfully',\r\n });\r\n this.ownMIfarmerDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n onLandOwnPaperUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let farmerMobNo = farmerconfData.get('ownMIfarmerPh') ? farmerconfData.get('ownMIfarmerPh') : '';\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, farmerMobNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n if (resp.statusCode == 200 && resp.message == 'Sucessfull') {\r\n this.uploadedBillFiles = [];\r\n for (let file of event.files) {\r\n this.uploadedBillFiles.push(file);\r\n console.log(this.uploadedBillFiles);\r\n }\r\n\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Bill Uploaded Successfully',\r\n });\r\n this.ownMIfarmerDetailsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n } else {\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress', JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onSubmitfarmerOwnMIDetails() {\r\n if (!this.ownMIfarmerDetailsForm.invalid) {\r\n console.log(this.ownMIfarmerDetailsForm.value);\r\n let val = this.ownMIfarmerDetailsForm.value;\r\n let reqBody = {\r\n appId: val?.appNo,\r\n progId: val?.programmeName?.Program_Id,\r\n areaAcre: val?.totalArea,\r\n killaNo: val?.killaNo,\r\n vendor: val?.vendor?.Vendor_Code,\r\n uploadedBillPath: val?.billPath,\r\n landOwnershipDoc: val?.landOwnerPath,\r\n farmerMobile: val?.mobileNo,\r\n aadhaarNo: val?.aadharNo,\r\n farmer_Name: val?.name,\r\n father_Name: val?.fatherName,\r\n fin_Year: val?.finYear?.FinancialYears,\r\n village: val?.villageCode?.Code,\r\n nocCertificcate: val?.nocCertificatePath,\r\n networkId: this.ipAddress,\r\n terminalId: this.ipAddress,\r\n };\r\n\r\n let encryptedData = this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody));\r\n console.log(encryptedData);\r\n // this.submitDetails(reqBody);\r\n this.checkAppVal(reqBody);\r\n } else {\r\n this.ownMIfarmerDetailsForm.markAllAsTouched();\r\n }\r\n console.log(this.ownMIfarmerDetailsForm.value);\r\n }\r\n\r\n checkAppVal(reqBody) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .getUHBVNData(reqBody?.appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if (res[0]?.Message == 'Application Found') {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success Message',\r\n // detail: res,\r\n // });\r\n\r\n this.submitDetails(reqBody);\r\n\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res[0]?.Message,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitDetails(reqBody) {\r\n this.loader.start();\r\n this.fApplicationService\r\n .submitOwnMIFarmerDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.loader.close();\r\n if (res == 'Success') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: res,\r\n });\r\n\r\n this.ownMIfarmerDetailsForm.reset();\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let farmerMobNo = farmerconfData.get('ownMIfarmerPh') ? farmerconfData.get('ownMIfarmerPh') : '';\r\n\r\n this.ownMIfarmerDetailsForm.controls.mobileNo.setValue(farmerMobNo);\r\n\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: res,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n downloadNOC() {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Not available. Try again later.',\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{ 'Own MI Farmer\r\n Details' | translate }}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'APPLICATION_NO_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_NAME_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'FATHERS_NAME_IS_REQUIRED' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'Installation Year is\r\n required' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{'MIS Installed\r\n is required' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
{{'VENDOR_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'VILLAGE_NAME_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'MOBILE_NO_IS_REQUIRED'\r\n | translate}}
\r\n\r\n
\r\n {{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MOBILE_NO_SHOULD_BE_OF_10_DIGITS' |\r\n translate}}
\r\n
\r\n {{'MBILE_NO_SHOULD_CONTAIN'\r\n | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n {{'AADHAR_NO_IS_REQUIRED'\r\n | translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n {{'AADHAR_NO_IS_SHOULD_BE_OF_12_DIGITS' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'TOTAL_AREA_IS_REQUIRED' |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'KILLA_NO_IS_REQUIRED'\r\n |\r\n translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'BILL_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'LAND_OWNERSHIP_PAPER_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
","import { CryptoJsService } from './../../services/crypto-js.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs/internal/operators/first';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\nimport { Message, MessageService } from 'primeng/api';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { MenuService } from 'src/app/services/app.menu.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-tubewell-connection-login',\r\n templateUrl: './tubewell-connection-login.component.html',\r\n styleUrls: ['./tubewell-connection-login.component.scss']\r\n})\r\nexport class TubewellConnectionLoginComponent implements OnInit {\r\n isOTPSend: boolean = false;\r\n phoneNo: string;\r\n otp: string;\r\n public onAuthForm: FormGroup;\r\n submitted: boolean;\r\n validationOTP: any;\r\n btnDisabled: boolean = false;\r\n display: any;\r\n isSiteUnderMaintenance: boolean = false;\r\n\r\n constructor(\r\n private authService: AuthenticationService,\r\n private service: MessageService,\r\n private _formBuilder: FormBuilder,\r\n public router: Router,\r\n private farmersDetailsService: FarmersDetailsService,\r\n private cryptoJS: CryptoJsService,\r\n private menuService : MenuService,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.onAuthForm = this._formBuilder.group({\r\n phoneNo: ['', [Validators.required]],\r\n otp: ['', [Validators.required]],\r\n });\r\n this.f.otp.disable();\r\n }\r\n\r\n get f() {\r\n return this.onAuthForm.controls;\r\n }\r\n\r\n onOTPClick() {\r\n if (!this.f.phoneNo.value) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Mobile Number Cant be Empty.' });\r\n return;\r\n }\r\n if(this.f.phoneNo.value.length < 10){\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Mobile Number Cant be Less than 10 Digits.' });\r\n return;\r\n }\r\n this.disableOTPButton(2);\r\n\r\n let body = {\r\n \"mobileNo\": this.cryptoJS.Encrypt(this.f.phoneNo.value),\r\n }\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.authService.getOTP(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n if (data == 'Already Sent OTP to Mobile Number!') {\r\n this.f.otp.enable();\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Already Sent OTP to Mobile Number!' });\r\n return;\r\n }\r\n let otpData = data.toString().split(',');\r\n if (otpData.length > 0) {\r\n otpData = otpData[0].toString().split(':');\r\n }\r\n this.validationOTP = otpData[1].trim();\r\n this.f.otp.enable();\r\n this.service.add({ severity: 'success', summary: 'Success Message', detail: 'OTP Generated Successfully!' });\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! OTP not generated.' });\r\n }\r\n });\r\n }\r\n\r\n disableOTPButton(minute) {\r\n // let minute = 1;\r\n let seconds: number = minute * 60;\r\n let textSec: any = \"0\";\r\n let statSec: number = 60;\r\n\r\n const prefix = minute < 10 ? \"0\" : \"\";\r\n\r\n const timer = setInterval(() => {\r\n seconds--;\r\n if (statSec != 0) statSec--;\r\n else statSec = 59;\r\n\r\n if (statSec < 10) {\r\n textSec = \"0\" + statSec;\r\n } else textSec = statSec;\r\n\r\n this.display = `${prefix}${Math.floor(seconds / 60)}:${textSec}`;\r\n\r\n if (seconds == 0) {\r\n\r\n clearInterval(timer);\r\n }\r\n }, 1000);\r\n }\r\n\r\n login() {\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.onAuthForm.invalid) {\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'tubewell-connection-login', '', new Date(), 'Invalid Login');\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: \"Invalid Input\" });\r\n return;\r\n }\r\n let body = {\r\n \"mobileNo\": this.cryptoJS.Encrypt(this.onAuthForm.controls.phoneNo.value),\r\n \"otp\": this.cryptoJS.Encrypt(this.onAuthForm.controls.otp.value)\r\n }\r\n\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(body))\r\n }\r\n\r\n this.loader.start();\r\n this.authService.validateOTP(reqBodyFinal).pipe(first())\r\n .subscribe({\r\n next: (resp: any) => {\r\n sessionStorage.setItem(\"token\", resp.data);\r\n let data = JSON.parse(this.cryptoJsService.DecryptToken(resp.data));\r\n\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'tubewell-connection-login', '', new Date(), 'Success');\r\n\r\n if (data?.authToken) {\r\n // window.sessionStorage.setItem(\"token\", this.cryptoJsService.EncryptPayload(JSON.stringify(data)));\r\n const farmerDetails = new Map();\r\n\r\n farmerDetails.set('farmerPh', this.f.phoneNo.value);\r\n farmerDetails.set('ownMIfarmerPh', this.f.phoneNo.value);\r\n farmerDetails.set('userID', 'ownMIfarmer');\r\n farmerDetails.set('isFarmerLogin', '1');\r\n farmerDetails.set('isOwnMIFarmerLogin', '1');\r\n\r\n const dataF = JSON.stringify(Array.from(farmerDetails.entries()));\r\n sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n\r\n // sessionStorage.setItem(\"farmerPh\", this.f.phoneNo.value); \r\n sessionStorage.setItem(\"userID\", 'ownMIfarmer');\r\n // sessionStorage.setItem(\"ownMIfarmerPh\", this.f.phoneNo.value);\r\n // sessionStorage.setItem(\"isOwnMIFarmerLogin\", '1');\r\n\r\n // this.loader.start();\r\n // this.farmersDetailsService.getFarmerDetails(this.f.phoneNo.value)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.loader.close();\r\n // if (data) {\r\n // const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n // const farmerconfData = new Map(encData);\r\n\r\n // farmerconfData.set('farmerDetails', data.Table[0]);\r\n\r\n // const dataF = JSON.stringify(Array.from(farmerconfData.entries()));\r\n // sessionStorage.setItem('dataF', this.cryptoJsService.EncryptPayload(dataF));\r\n \r\n\r\n // let farmerData = data.Table[0];\r\n // if (farmerData) {\r\n // // this.userName = farmerData.Name;\r\n // this.menuService.setUsername(farmerData.Name);\r\n\r\n \r\n // this.farmersDetailsService.updateAdharValidCheck(farmerData.IsAadharValidated) \r\n // }\r\n // }\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // }\r\n // });\r\n this.router.navigate(['/tubewell-connection-dashboard']);\r\n // this.router.navigate(['/dashboard']);\r\n } else {\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'tubewell-connection-login', '', new Date(), 'OTP Validation Failed');\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: \"OTP Validation Failed\" });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.phoneNo.value, 'tubewell-connection-login', '', new Date(), err[0]);\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: \"OTP Validation Failed\" });\r\n }\r\n });\r\n }\r\n\r\n reloadPage(){\r\n window.location.reload();\r\n }\r\n\r\n goBack(){\r\n window.history.back();\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \"Logo\"\r\n
\r\n

{{ 'SITE_UNDER_MAINTENANCE' | translate }}

\r\n

{{ 'SITE_UNDER_MAINTENANCE_MSG' | translate }}

\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \"Image\"\r\n\r\n
{{'WELCOME'| translate}}
\r\n {{'SIGN_IN_TO_CONTINUE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'MOBILE_NO_IS_REQ'| translate}}
\r\n
\r\n\r\n
\r\n
\r\n {{'YOU_CAN_REQUEST_OTP_IN'| translate}} {{display}} {{'MINUTES'| translate}}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'OTP_IS_REQ'| translate}}
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { CryptoJsService } from './../../services/crypto-js.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { first } from 'rxjs/internal/operators/first';\r\nimport { AuthenticationService } from 'src/app/services/authentication.service';\r\nimport { Message, MessageService } from 'primeng/api';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { MenuService } from 'src/app/services/app.menu.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-registration',\r\n templateUrl: './vendor-registration.component.html',\r\n styleUrls: ['./vendor-registration.component.scss']\r\n})\r\nexport class VendorRegistrationComponent implements OnInit {\r\n isOTPSend: boolean = false;\r\n phoneNo: string;\r\n otp: string;\r\n public onAuthForm: FormGroup;\r\n submitted: boolean;\r\n validationOTP: any;\r\n btnDisabled: boolean = false;\r\n display: any;\r\n isSiteUnderMaintenance: boolean = false;\r\n\r\n constructor(\r\n private authService: AuthenticationService,\r\n private service: MessageService,\r\n private _formBuilder: FormBuilder,\r\n public router: Router,\r\n private farmersDetailsService: FarmersDetailsService,\r\n private cryptoJS: CryptoJsService,\r\n private menuService : MenuService,\r\n private activityRecordService : ActivityRecordService,\r\n private cryptoJs: CryptoJsService,\r\n private loader: AppLoaderService,\r\n private jeService: JEService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.onAuthForm = this._formBuilder.group({\r\n email: ['', [Validators.required]],\r\n password: ['', [Validators.required]],\r\n remembercheck: ['', []],\r\n });\r\n // this.f.otp.disable();\r\n // this.vendorData();\r\n }\r\n\r\n get f() {\r\n return this.onAuthForm.controls;\r\n }\r\n\r\n login() {\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.onAuthForm.invalid) {\r\n this.activityRecordService.activityRecord(this.onAuthForm.controls.email.value, 'vendor_login', '', new Date(), 'Invalid Login');\r\n\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: \"Invalid Input\" });\r\n return;\r\n }\r\n let body = {\r\n \"email\": this.cryptoJS.Encrypt(this.onAuthForm.controls.email.value),\r\n \"password\": this.cryptoJS.Encrypt(this.onAuthForm.controls.password.value)\r\n }\r\n\r\n this.loader.start();\r\n this.authService.vendorLogin(this.f.email.value, this.f.password.value).pipe(first())\r\n .subscribe({\r\n next: (resp: any) => {\r\n sessionStorage.setItem(\"token\", resp.data)\r\n let data = JSON.parse(this.cryptoJsService.DecryptToken(resp.data));\r\n this.loader.close();\r\n // this.activityRecordService.activityRecord(this.onAuthForm.controls.email.value, 'vendor_login', '', new Date(), 'Success');\r\n this.activityRecordService.activityRecord(this.f.email.value, 'vendor_login', '', new Date(), 'Success');\r\n // this.router.navigate(['/new-registration']);\r\n if (data?.authToken) {\r\n // window.sessionStorage.setItem(\"token\", this.cryptoJsService.EncryptPayload(JSON.stringify(data)));\r\n sessionStorage.setItem(\"vendorUser\", this.f.email.value);\r\n sessionStorage.setItem(\"userID\", 'vendorReg');\r\n sessionStorage.setItem(\"isNewRegLogin\", '1');\r\n this.router.navigate(['/new-registration']);\r\n \r\n }\r\n \r\n \r\n // else {\r\n // // this.activityRecordService.activityRecord(this.onAuthForm.controls.email.value, 'vendor_login', '', new Date(), 'Login Failed');\r\n // this.activityRecordService.activityRecord(this.f.email.value, 'vendor_login', '', new Date(), 'Login Failed');\r\n\r\n // this.service.add({ severity: 'error', summary: 'Error Message', detail: \"Login Failed\" });\r\n // }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n // // this.activityRecordService.activityRecord(this.onAuthForm.controls.email.value, 'vendor_login', '', new Date(), err[0]);\r\n // this.activityRecordService.activityRecord(this.f.email.value, 'vendor_login', '', new Date(), err[0]);\r\n\r\n // this.service.add({ severity: 'error', summary: 'Error Message', detail: \"Login Failed\" });\r\n // }\r\n let errorArray = err;\r\n\r\n this.activityRecordService.activityRecord(this.f.email.value, 'login', '', new Date(), errorArray[0]);\r\n if (errorArray.length) {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: errorArray[0] });\r\n } else {\r\n this.service.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! userid or password not correct.' });\r\n }\r\n }\r\n });\r\n \r\n }\r\n \r\n\r\n reloadPage(){\r\n window.location.reload();\r\n }\r\n\r\n goBack(){\r\n window.history.back();\r\n }\r\n signUP(){\r\n this.router.navigate(['/vendor-reg-signup']);\r\n }\r\n}\r\n\r\n\r\n","\r\n
\r\n
\r\n \"Logo\"\r\n
\r\n

{{ 'SITE_UNDER_MAINTENANCE' | translate }}

\r\n

{{ 'SITE_UNDER_MAINTENANCE_MSG' | translate }}

\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \"Image\"\r\n \r\n\r\n
{{'WELCOME'| translate}}
\r\n {{'SIGN_IN_TO_CONTINUE'| translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n {{'FORGOT_PASSWORD'| translate}}\r\n
\r\n \r\n\r\n
\r\n New User ?\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n","import { Component, ElementRef, OnInit, ViewChild, Output, EventEmitter } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport saveAs from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-registrations',\r\n templateUrl: './vendor-registrations.component.html',\r\n styleUrls: ['./vendor-registrations.component.scss']\r\n})\r\nexport class VendorRegistrationsComponent implements OnInit {\r\n @ViewChild('dataTable') tableContainer: ElementRef;\r\n @Output() mobilenumberEmit = new EventEmitter();\r\n\r\n public subActionType: string = \"CompletedApps\";\r\n public finYear: any;\r\n vendorCode:any;\r\n userType:any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public miCompletedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n // public selectedMICompletedFilter: null;\r\n public vendorRegId: any;\r\n public micada1Data: any;\r\n actionId: any = 18;\r\n public miTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Registered Vendor Details';\r\n miCompletedReport: MenuItem[];\r\n loading: boolean;\r\n items: any[];\r\n selectedStatus: any;\r\n constructor(private reportsService: ReportsService,private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private jeService: JEService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService,\r\n private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.finYear = 'All';\r\n if(this.finYear == 'All'){\r\n this.finYear = '';\r\n }\r\n this.loadMIDataUnderProcess();\r\n // this.loadMIDataUnderProcess();\r\n // setTimeout( () => this.tableContainer.nativeElement.scrollIntoView({\r\n // block: \"center\",\r\n // behavior: \"smooth\"\r\n // }), 400)\r\n \r\n // let sessionToken = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n // this.vendorCode=JSON.parse(sessionToken).officeCode\r\n\r\n this.miCompletedReport = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.miTableDataWithFilter, `MI_${this.tableHeaderName}`);\r\n },\r\n },\r\n ];\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.AppID,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Current Level': d.Level_ID,\r\n 'Current Action': d.ActionType,\r\n 'Last Action Date': d.assigneddate,\r\n 'Status': d.Status,\r\n 'Pending Level': d.nextuser,\r\n 'Pending Action': d.NextAction,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n // loadMIDataUnderProcess(subActionType) {\r\n // // this.loader.start();\r\n // this.loading = true;\r\n // let sub = this.reportsService\r\n \r\n // .getVendorGridData(this.userId)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.loading = false;\r\n // if (data?.length > 0) {\r\n // this.miTableData = data;\r\n // this.miTableDataWithFilter = data;\r\n // this.actionTypesFromTableData, this.miCompletedFilterList = this.getUniqueActionType(data);\r\n\r\n // }else{\r\n // this.miTableData = [];\r\n // this.miTableDataWithFilter = [];\r\n // this.actionTypesFromTableData = [];\r\n // }\r\n // },\r\n // error: (err) => {\r\n // // this.loading = false;\r\n // this.loading = false;\r\n // this.miTableData = [];\r\n // this.miTableDataWithFilter = [];\r\n // this.actionTypesFromTableData = [];\r\n // },\r\n // });\r\n\r\n // this.subscriptions.push(sub);\r\n // }\r\n loadMIDataUnderProcess() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n\r\n \r\n if(this.router.url.startsWith('/xen')){\r\n this.actionId = 18;\r\n }\r\n else if(this.router.url.startsWith('/department')){\r\n this.actionId = 2;\r\n }\r\n this.deptDashBoardService\r\n .GetStatusMaster(JSON.parse(payload)?.sub, this.actionId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values;\r\n this.selectedStatus = this.items[0]?.status;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Status Master cant be Loaded',\r\n });\r\n },\r\n });\r\n\r\n this.loader.start();\r\n this.jeService\r\n .getVendorGridData(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n console.log('Response Data', data);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.micada1Data = data;\r\n }else{\r\n this.micada1Data=[];\r\n \r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: \"Data Not Found\",\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.micada1Data=[];\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getUniqueActionType(data) {\r\n const actionLevelSet = new Set(data.map(entry => entry.nextuser));\r\n const actionLevelObjects = Array.from(actionLevelSet).map(actionLevel => ({ actionLevel }));\r\n \r\n return actionLevelObjects;\r\n }\r\n printForm(AppID) {\r\n \r\n if (AppID) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if(this.userId == 'admin'){\r\n this.router.navigate(['admin', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'CAO'){\r\n this.router.navigate(['cao', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userId == 'DD-EW'){\r\n this.router.navigate(['ew-department', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else if(this.userType== 'Vendor'){\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(AppID)]);\r\n \r\n }else {\r\n this.router.navigate(['department', 'print', this.cryptoJsService.Encrypt(AppID)])\r\n \r\n }\r\n }\r\n }\r\n\r\n selectPhysicalVerAppln(application: any) {\r\n this.activityRecordService.activityRecord(this.userId, 'Vendor Registration View Action', application?.PAN_No, new Date(), 'Success');\r\n if (application.TAN_No) {\r\n // sessionStorage.setItem('MISelectedAppType', 'vendor-registrations');\r\n let encryptedAutoId = this.cryptoJsService.Encrypt(application.TAN_No.toString());\r\n let encryptedAppId = this.cryptoJsService.Encrypt(application.PAN_No.toString());\r\n // this.router.navigate([this.router.url.split('/')[1], 'vendor-data'], { queryParams: { TAN_No: encryptedAutoId, PAN_No: encryptedAppId } });\r\n // mobilenumberEmit\r\n this.mobilenumberEmit.emit(this.cryptoJsService.Encrypt(application.Email_ID.toString()));\r\n this.router.navigate([this.router.url.split('/')[1], 'vendor-data'], { queryParams: { email:this.cryptoJsService.Encrypt(application.Email_ID.toString()) } });\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n }\r\n \r\n}\r\n","\r\n\r\n
\r\n\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n \r\n {{'Vendor Name'| translate}}\r\n {{'Mobile'| translate}}\r\n {{'Email ID'| translate}}\r\n {{'GST No'| translate}}\r\n {{'TAN No'| translate}}\r\n {{'PAN No'| translate}}\r\n \r\n {{'Status'| translate}}\r\n {{'ACTION' | translate}}\r\n \r\n \r\n\r\n \r\n \r\n {{ ri + 1 }}\r\n {{consolidateData?.Vendor_Name}}\r\n {{consolidateData?.Mobile}}\r\n {{consolidateData?.Email_ID}}\r\n {{consolidateData?.GST_No}}\r\n {{consolidateData?.TAN_No}}\r\n {{consolidateData?.PAN_No}}\r\n \r\n {{consolidateData?.Status}}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n
","import {\r\n Component,\r\n EventEmitter,\r\n OnInit,\r\n Output,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { saveAs } from 'file-saver';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs/operators';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { ReportsService } from 'src/app/services/reports.service';\r\nimport { Table } from 'primeng/table';\r\n\r\n@Component({\r\n selector: 'app-vendor-subsidy-details',\r\n templateUrl: './vendor-subsidy-details.component.html',\r\n styleUrls: ['./vendor-subsidy-details.component.scss']\r\n})\r\nexport class VendorSubsidyDetailsComponent implements OnInit {\r\n @ViewChild('miSurvey') miSurvey!: Table; // Correctly typed ViewChild\r\n @Output() mobilenumberEmit = new EventEmitter();\r\n\r\n public subActionType: string = 'CompletedApps';\r\n public finYear: any;\r\n vendorCode: any;\r\n userType: any;\r\n public miTableData: any = [];\r\n public actionTypesFromTableData: any = [];\r\n public miCompletedFilterList: any = [];\r\n public subscriptions: any = [];\r\n public userId: any;\r\n public vendorRegId: any;\r\n public micada1Data: any = [];\r\n actionId: any = 18;\r\n public miTableDataWithFilter: any = [];\r\n public tableHeaderName = 'Subsidary Details';\r\n public miCompletedReport: MenuItem[] = [];\r\n public loading: boolean = false;\r\n public items: any[] = [];\r\n public selectedStatus: any;\r\n\r\n constructor(\r\n private reportsService: ReportsService,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private loader: AppLoaderService,\r\n private jeService: JEService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private cryptoJsService: CryptoJsService,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.finYear = 'All';\r\n this.loadSubsidaryDetails();\r\n\r\n this.miCompletedReport = [\r\n {\r\n label: 'Download Excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel();\r\n },\r\n },\r\n // You can add more export options here if needed\r\n ];\r\n }\r\n\r\n /**\r\n * Event handler for the search input.\r\n * @param event The input event.\r\n */\r\n onSearchInput(event: Event): void {\r\n const input = event.target as HTMLInputElement;\r\n const value = input.value.trim();\r\n this.applyFilter(value);\r\n }\r\n\r\n /**\r\n * Applies a global filter to the p-table based on the search input.\r\n * @param value The search string entered by the user.\r\n */\r\n applyFilter(value: string): void {\r\n if (this.miSurvey) {\r\n this.miSurvey.filterGlobal(value, 'contains');\r\n }\r\n }\r\n\r\n /**\r\n * Exports the current table data to an Excel file.\r\n * If a global filter is applied, exports only the filtered data.\r\n */\r\n exportExcel(): void {\r\n // Get the filtered data if a filter is applied; otherwise, use all data\r\n const modelData = this.miSurvey?.filteredValue || this.micada1Data || [];\r\n\r\n if (!modelData.length) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'No Data',\r\n detail: 'No data available to export.',\r\n });\r\n return;\r\n }\r\n\r\n import('xlsx').then((xlsx) => {\r\n const dataToSave = modelData.map((d: any) => ({\r\n 'APP ID': d.AppID,\r\n 'Program Name': d.Program_Name,\r\n Amt: d.Amt,\r\n 'Farmer Name': d.FarmerName,\r\n 'Vendor Name': d.VendorName,\r\n District: d.District,\r\n Block: d.Block,\r\n Village: d.Village,\r\n PlantSpacing: d.PlantSpacing,\r\n RowSpacing: d.RowSpacing,\r\n MIArea: d.MIArea,\r\n }));\r\n\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n\r\n this.saveAsExcelFile(excelBuffer, `MI_${this.tableHeaderName}`);\r\n }).catch((error) => {\r\n console.error('Error importing xlsx:', error);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Export Error',\r\n detail: 'An error occurred while exporting the data.',\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Saves the Excel file to the user's device.\r\n * @param buffer The binary data of the Excel file.\r\n * @param fileName The desired name of the Excel file.\r\n */\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n const EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n const EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n saveAs(data, `${fileName}_export_${new Date().getTime()}${EXCEL_EXTENSION}`);\r\n }\r\n\r\n /**\r\n * Loads subsidary details from the backend service.\r\n * Handles loading state, success, and error scenarios.\r\n */\r\n loadSubsidaryDetails(): void {\r\n const tokenString = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n if (!tokenString) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Authentication Error',\r\n detail: 'No authentication token found.',\r\n });\r\n return;\r\n }\r\n\r\n let token: any;\r\n try {\r\n token = JSON.parse(tokenString);\r\n } catch (error) {\r\n console.error('Error parsing token:', error);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Authentication Error',\r\n detail: 'Invalid authentication token format.',\r\n });\r\n return;\r\n }\r\n\r\n let payload: any = {};\r\n try {\r\n const payloadBase64 = token?.authToken?.split('.')[1];\r\n if (payloadBase64) {\r\n const decodedPayload = atob(payloadBase64);\r\n payload = JSON.parse(decodedPayload);\r\n } else {\r\n throw new Error('Invalid token structure.');\r\n }\r\n } catch (error) {\r\n console.error('Error decoding token:', error);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Authentication Error',\r\n detail: 'Failed to decode authentication token.',\r\n });\r\n return;\r\n }\r\n\r\n this.userId = payload?.sub;\r\n this.vendorRegId = token?.officeCode; // Assuming officeCode is not an object\r\n console.log('User ID:', this.userId);\r\n console.log('Vendor Reg ID:', this.vendorRegId);\r\n\r\n // Fetch subsidary details for status\r\n this.deptDashBoardService\r\n .GetVendorSubsidaryDetails(this.vendorRegId,'Vendor')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.items = data.$values || data; // Adjust based on actual data structure\r\n this.selectedStatus = this.items[0]?.status;\r\n },\r\n error: (err) => {\r\n console.error('Error loading status master:', err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Status Master can\\'t be loaded.',\r\n });\r\n },\r\n });\r\n\r\n // Fetch subsidary details for table data\r\n this.loader.start();\r\n this.deptDashBoardService\r\n .GetVendorSubsidaryDetails(this.vendorRegId,'Vendor')\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n console.log('Response Data', data);\r\n if (Array.isArray(data) && data.length > 0) {\r\n this.micada1Data = data;\r\n } else {\r\n this.micada1Data = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'No Data',\r\n detail: 'Data Not Found.',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.micada1Data = [];\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Source Location',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n console.error('Error fetching subsidary details:', err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: err?.message || 'An unexpected error occurred.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Captures the filtered data from the table.\r\n * This method is optional if you decide to use a separate variable for filtered data.\r\n * @param event The filter event from the p-table.\r\n */\r\n onTableFilter(event: any): void {\r\n this.miTableDataWithFilter = event.filteredValue;\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{ tableHeaderName | translate }}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n {{ 'AppID' | translate }}\r\n \r\n \r\n {{ 'Program_Name' | translate }}\r\n \r\n \r\n {{ 'Amount' | translate }}\r\n \r\n \r\n {{ 'FarmerName' | translate }}\r\n \r\n \r\n {{ 'VendorName' | translate }}\r\n \r\n \r\n {{ 'District' | translate }}\r\n \r\n \r\n {{ 'Block' | translate }}\r\n \r\n \r\n {{ 'Village' | translate }}\r\n \r\n \r\n {{ 'PlantSpacing' | translate }}\r\n \r\n \r\n {{ 'RowSpacing' | translate }}\r\n \r\n \r\n {{ 'MIArea' | translate }}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ consolidateData?.AppID }}\r\n {{ consolidateData?.Program_Name }}\r\n {{ consolidateData?.Amt | currency }}\r\n {{ consolidateData?.FarmerName }}\r\n {{ consolidateData?.VendorName }}\r\n {{ consolidateData?.District }}\r\n {{ consolidateData?.Block }}\r\n {{ consolidateData?.Village }}\r\n {{ consolidateData?.PlantSpacing }}\r\n {{ consolidateData?.RowSpacing }}\r\n {{ consolidateData?.MIArea }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MenuItem,MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'primeng/table';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-full-paymentchallan-details',\r\n templateUrl: './full-paymentchallan-details.component.html',\r\n styleUrls: ['./full-paymentchallan-details.component.scss'],\r\n})\r\nexport class FullPaymentchallanDetailsComponent implements OnInit {\r\n @ViewChild('fullPaymentChallanDetailsTable', { static: true })\r\n public fullPaymentChallanDetailsTable: Table;\r\n\r\n public fullPaymentTableData: any = [];\r\n\r\n acknowledgement = [\r\n {\r\n val: 'Yes',\r\n },\r\n {\r\n val: 'No',\r\n },\r\n ];\r\n\r\n public displayDialog: boolean = false;\r\n public selectedAcknowledgement: any;\r\n public remarks: any = '';\r\n public vendorRegId: string;\r\n public userId: any;\r\n public programId: any;\r\n public appId: any;\r\n public vendorCode: any;\r\n public loading: boolean = false;\r\n appVerificationItems: MenuItem[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private vendorService: VendorDashboardService,\r\n private tokenService: TokenService,\r\n private translateService: TranslateService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.fullPaymentTableData, \"Challan_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.fullPaymentTableData, \"Challan_List\");\r\n }\r\n },\r\n ];\r\n // const token: any = this.tokenService.retrieve();\r\n // console.log('token', token)\r\n // this.vendorRegId = JSON.stringify(token?.value?.officeCode);\r\n // console.log('vendorRegId', this.vendorRegId)\r\n\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n // console.log('token1', token)\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log(\"officeCode\", this.vendorRegId)\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n // console.log('payload1', JSON.parse(payload))\r\n\r\n \r\n this.userId = JSON.parse(payload)?.sub;\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n this.selectedYear = res;\r\n this.getChallanForVendor(this.userId);\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.getChallanForVendor(this.userId);\r\n }\r\n\r\n\r\n getChallanForVendor(userId) {\r\n // const token: any = this.tokenService.retrieve();\r\n // console.log('token', token)\r\n // this.vendorRegId = JSON.stringify(token?.value?.officeCode);\r\n // console.log('vendorRegId', this.vendorRegId)\r\n\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .getChallanForVendor(userId, this.selectedYear)\r\n // .getChallanForVendor(this.vendorRegId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.activityRecordService.activityRecord(this.userId, 'Full Payment Intimation Details', '', new Date(), 'Success');\r\n\r\n this.fullPaymentTableData = res;\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"fullPaymentTableData\", this.fullPaymentTableData);\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.fullPaymentTableData = [];\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Full Payment Intimation Details', '', new Date(), err);\r\n\r\n // console.log(\"error\", err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n\r\n takeAction(row) {\r\n this.appId = row.AppId;\r\n this.programId = row.ProgId;\r\n this.vendorCode = row.VendorCode;\r\n this.displayDialog = true;\r\n }\r\n\r\n onCloseDialog() {\r\n this.displayDialog = false;\r\n this.selectedAcknowledgement = null;\r\n this.remarks = '';\r\n }\r\n\r\n onSubmitRemark(){\r\n // console.log('submit clicked')\r\n let reqBody = {\r\n appId: this.appId,\r\n progId: this.programId,\r\n remarks: this.remarks,\r\n acknowledgement: this.selectedAcknowledgement.val == \"Yes\" ? true : false,\r\n vendorCode: this.vendorCode\r\n }\r\n // console.log(reqBody);\r\n this.insertChallanAcknowledgement(reqBody);\r\n }\r\n\r\n\r\n insertChallanAcknowledgement(reqBody){\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .insertChallanAcknowledgement(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Full Payment Intimation Action', this.appId, new Date(), 'Success');\r\n\r\n // console.log('VendorEstimationUpdatedSuccessfull', data);\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n this.getChallanForVendor(this.userId);\r\n },\r\n error: (error) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Full Payment Intimation Action', this.appId, new Date(), error);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: error,\r\n });\r\n },\r\n });\r\n this.displayDialog = false;\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App Id\":d.AppId,\r\n \"Credit Date Time\":d.CreditDateTime,\r\n \"Transfer Mode\":d.TransferMode,\r\n \"Deposit Amount\":d.Deposit_Amount,\r\n \"Pending Completed Days\":d.PendingCompletedDays,\r\n \"Current Status\":d.Status_Ar,\r\n \"Account Number\":d.FromAccountNumber,\r\n \"Virtual Account\":d.VirtualAccount \r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppId', header: 'App Id' },\r\n { field: 'CreditDateTime', header: 'Credit Date Time' },\r\n { field: 'TransferMode', header: 'Transfer Mode' },\r\n { field: 'Deposit_Amount', header: 'Deposit Amount' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'FromAccountNumber', header: 'Account Number' },\r\n { field: 'VirtualAccount', header: 'Virtual Account' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.PendingCompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.PendingCompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.PendingCompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.PendingCompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'FULL_PAYMENT_CHALLAN_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n \r\n {{'CREDIT_DATE_TIME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TRANSFER_MODE'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DEPOSIT_AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'ACCOUNT_NUMBER'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VIRTUAL_ACCOUNT'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{ product.AppId }}\r\n \r\n {{ product.CreditDateTime }}\r\n {{ product.TransferMode }}\r\n {{ product.Deposit_Amount }}\r\n {{ product.PendingCompletedDays }}\r\n {{ product.Status_Ar }}\r\n {{ product.FromAccountNumber }}\r\n {{ product.VirtualAccount }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ fullPaymentTableData ? fullPaymentTableData.length : 0 }} {{'FULL_PAY_CHALLAN_DETAIL'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'APROVED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
{{'APPLICATION_ID'| translate}}: {{ appId }}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'ACKNOWLEDGEMENT'| translate}}
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-mi-inventory-details',\r\n templateUrl: './mi-inventory-details.component.html',\r\n styleUrls: ['./mi-inventory-details.component.scss'],\r\n providers: [DatePipe],\r\n})\r\nexport class MiInventoryDetailsComponent implements OnInit {\r\n submitInventoryForm: FormGroup;\r\n submitPurchaseForm: FormGroup;\r\n isSubmitted: boolean = false;\r\n categoryList: any;\r\n componentList: any;\r\n sizeIdList: any;\r\n itemTypeList: any = [];\r\n pogramNameList: any;\r\n datePurchase: any;\r\n uploadedFiles: any[] = [];\r\n hideData = true;\r\n public vendorRegId: any;\r\n public program: any;\r\n public selectedProgram: any = [];\r\n public vendor: any;\r\n public selectedVendor: any = [];\r\n public category: any;\r\n public selectedCategory: any = [];\r\n public cml: any;\r\n public selectedCML: any = [];\r\n public programId: any;\r\n public vendorId: any;\r\n public categoryId: any;\r\n public cmlId: any;\r\n public selectedDate: Date;\r\n public filteredVendor: any[];\r\n componentId: any;\r\n sizeId: any;\r\n userId: any;\r\n public ipAddress: any = '000.000.000';\r\n selectedItemType: any;\r\n uploadFileUrl: any;\r\n fileType: any;\r\n\r\n miInventoryData: any;\r\n mobileMiInventoryData: any;\r\n\r\n public currentDate: any;\r\n public minDate: any;\r\n\r\n public displayUpdateInventoryDialog: boolean = false;\r\n\r\n public rowDateToUpdate: any;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private vendorDashboardService: VendorDashboardService,\r\n private loader: AppLoaderService,\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private ipService: IpAddressService,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private datePipe: DatePipe,\r\n private confirmationService: ConfirmationService,\r\n private cryptoJsService: CryptoJsService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI Component Inventory Details',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n this.init();\r\n this.currentDate = new Date();\r\n this.minDate = new Date(\"04/01/2022\");\r\n }\r\n\r\n init() {\r\n this.submitInventoryForm = this.fb.group({\r\n programId: ['', Validators.required],\r\n categoryId: ['', Validators.required],\r\n componentId: ['', Validators.required],\r\n sizeId: ['', Validators.required],\r\n qauntity: ['', Validators.required],\r\n consumedQuantity: ['', Validators.required],\r\n batchNo: ['', Validators.required],\r\n lotNo: ['', Validators.required],\r\n itemType: ['', Validators.required],\r\n datePurchase: ['', Validators.required],\r\n purchaseInvoiceNo: ['', Validators.required],\r\n billCopyPath: [''],\r\n });\r\n \r\n this.getIP();\r\n this.loadData();\r\n this.itemTypeList = [\r\n {\r\n id: 1,\r\n item: 'Manufacture',\r\n },\r\n {\r\n id: 2,\r\n item: 'Purchase',\r\n },\r\n ];\r\n this.selectedItemType = 'Manufacture';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n this.getProgramList();\r\n // console.log('this.vendorRegId', this.vendorRegId)\r\n this.getInventoryPurchaseDetail(this.vendorRegId);\r\n }\r\n\r\n getInventoryPurchaseDetail(vendorRegId) {\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .getInventoryPurchaseDetail(vendorRegId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.miInventoryData = resp;\r\n this.miInventoryData = this.miInventoryData.map((val) => ({\r\n ...val,\r\n invoiceBillDateForSorting: new Date(val?.InvoiceBillDate),\r\n }));\r\n\r\n this.mobileMiInventoryData = this.miInventoryData;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Inventory Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getProgramList() {\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .getComponentMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.loader.close();\r\n this.pogramNameList = files;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Program Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCategoriesList() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n };\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .getCategory(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.categoryList = res.$values;\r\n this.loader.close();\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.category = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getComponentsList() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n };\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .getComponent(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.loader.close();\r\n this.componentList = files.$values;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Category Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getSizePriceList() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n ComponentId: this.componentId,\r\n };\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .getSizeAndPrice(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.loader.close();\r\n this.sizeIdList = files.$values;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Size Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n if (file.name.includes('.pdf')) {\r\n this.fileType = 'PDF';\r\n } else {\r\n this.fileType = 'IMAGE';\r\n }\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, formcontrol)\r\n .subscribe((resp: any) => {\r\n if (resp.data) {\r\n this.uploadFileUrl = resp.data;\r\n this.submitInventoryForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n if (resp.statusCode == 200) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n getChangeProgram(event) {\r\n this.programId = event.value;\r\n this.categoryId = '';\r\n this.componentId = '';\r\n this.sizeId = '';\r\n this.componentList = [];\r\n this.sizeIdList = [];\r\n this.getCategoriesList();\r\n }\r\n\r\n getCategoryChange(event) {\r\n this.categoryId = event.value;\r\n this.componentId = '';\r\n this.sizeId = '';\r\n this.sizeIdList = [];\r\n this.getComponentsList();\r\n }\r\n\r\n getComponentChange(event) {\r\n this.componentId = event.value;\r\n this.sizeId = '';\r\n this.getSizePriceList();\r\n }\r\n\r\n getSizeIdChange(event) {\r\n this.sizeId = event.value;\r\n }\r\n\r\n getItemTypeChange(event) {\r\n console.log(event);\r\n this.selectedItemType = event.value;\r\n if (event.value === 'Purchase') {\r\n this.hideData = false;\r\n // this.submitInventoryForm.controls['billNo'].setValidators(\r\n // Validators.required\r\n // );\r\n // this.submitInventoryForm.controls['gstCertificatePath'].setValidators(Validators.required);\r\n this.submitInventoryForm.controls['billCopyPath'].setValidators(Validators.required);\r\n this.submitInventoryForm.controls['billCopyPath'].updateValueAndValidity();\r\n this.submitInventoryForm.controls['billCopyPath'].setValue(null);\r\n } else {\r\n this.hideData = true;\r\n this.submitInventoryForm.controls['billCopyPath'].clearValidators();\r\n this.submitInventoryForm.controls['billCopyPath'].updateValueAndValidity();\r\n // this.submitInventoryForm.controls['billNo'].clearValidators();\r\n // this.submitInventoryForm.controls['gstCertificatePath'].clearValidators();\r\n }\r\n }\r\n\r\n get f() {\r\n return this.submitInventoryForm.controls;\r\n }\r\n\r\n submitInventoryDetails() {\r\n this.isSubmitted = true;\r\n // if (!this.submitInventoryForm.get('gstCertificatePath').value) {\r\n // this.submitInventoryForm.controls['gstCertificatePath'].setErrors({ 'required': true });\r\n // } else {\r\n // this.submitInventoryForm.controls['gstCertificatePath'].setErrors(null)\r\n // }\r\n if (this.hideData) {\r\n this.f.billCopyPath.setValue('');\r\n // this.f.purchaseInvoiceNo.setValue('');\r\n }\r\n let values = this.submitInventoryForm.value;\r\n console.log('values', values)\r\n\r\n if (this.submitInventoryForm.valid) {\r\n if (Number(values.qauntity) < Number(values.consumedQuantity)) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Validation Error',\r\n detail:\r\n 'Consumed Quantity must be less than or equal to the Quantity',\r\n });\r\n return;\r\n }\r\n this.isSubmitted = false;\r\n let reqBoady = {\r\n programId: Number(values.programId),\r\n categoryID: Number(values.categoryId),\r\n componentID: Number(values.componentId),\r\n sizeID: Number(values.sizeId),\r\n quantity: Number(values.qauntity),\r\n consumedQuantity: Number(values.consumedQuantity),\r\n lotNo: values.lotNo,\r\n batchNO: values.batchNo,\r\n itemType: values.itemType,\r\n billCopy: values.billCopyPath,\r\n purchaseInvoiceNo: values.purchaseInvoiceNo,\r\n invoiceBillDate: values.datePurchase\r\n ? this.datePipe.transform(new Date(values.datePurchase), 'yyyy-MM-dd')\r\n : values.datePurchase,\r\n userID: this.vendorRegId,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n };\r\n console.log(this.submitInventoryForm.controls, '***');\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .insertVendorInventoryDetail(reqBoady)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Add MI Component Inventory Details',\r\n '',\r\n new Date(),\r\n data,\r\n reqBoady\r\n );\r\n if (data == 'Record saved Successfully') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n this.isSubmitted = false;\r\n this.init();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Add MI Component Inventory Details',\r\n '',\r\n new Date(),\r\n err, \r\n reqBoady\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Updated',\r\n });\r\n },\r\n });\r\n }\r\n }\r\n\r\n mobileSearch(value) {\r\n this.mobileMiInventoryData = this.miInventoryData.filter((data: any) => {\r\n if (\r\n data.ProgramName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.CategoryName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.ComponentName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.SizeName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.LotNo.toLowerCase().includes(value.toLowerCase()) ||\r\n data.BatchNO.toLowerCase().includes(value.toLowerCase()) ||\r\n data.ItemType.toLowerCase().includes(value.toLowerCase()) ||\r\n data.PurchaseInvoiceNo.toLowerCase().includes(value.toLowerCase()) ||\r\n data.InvoiceBillDate.toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data;\r\n }\r\n });\r\n }\r\n\r\n updateInventory(val) {\r\n if (val?.ItemType == 'Purchase') {\r\n this.hideData = false;\r\n this.submitInventoryForm.controls['billCopyPath'].setValidators(\r\n Validators.required\r\n );\r\n } else {\r\n this.hideData = true;\r\n }\r\n\r\n this.rowDateToUpdate = val;\r\n this.submitInventoryForm.setValue({\r\n programId: val?.ProgramName,\r\n categoryId: val?.CategoryName,\r\n componentId: val?.ComponentName,\r\n sizeId: val?.SizeName,\r\n qauntity: val?.Quantity,\r\n consumedQuantity: val?.ConsumedQuantity,\r\n batchNo: val?.BatchNO,\r\n lotNo: val?.LotNo,\r\n itemType: val?.ItemType,\r\n datePurchase: val?.invoiceBillDateForSorting,\r\n purchaseInvoiceNo: val?.PurchaseInvoiceNo,\r\n billCopyPath: val?.BillCopy,\r\n });\r\n this.displayUpdateInventoryDialog = true;\r\n }\r\n\r\n deleteInventory(val) {\r\n this.confirmationService.confirm({\r\n message: 'Are you sure that you want to delete this Inventory?',\r\n accept: () => {\r\n let reqBody = {\r\n autoId: val.AutoId,\r\n userID: val.UserID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n };\r\n this.vendorDashboardService\r\n .deleteInventoryPurchaseDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n if (resp == 'Record deleted Successfully') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Info Message',\r\n detail: JSON.stringify(resp),\r\n });\r\n this.loadData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: JSON.stringify(resp),\r\n });\r\n }\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Delete MI Component Inventory Details',\r\n '',\r\n new Date(),\r\n resp,\r\n reqBody\r\n );\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Data not deleted.',\r\n });\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Delete MI Component Inventory Details',\r\n '',\r\n new Date(),\r\n err,\r\n reqBody\r\n );\r\n },\r\n });\r\n },\r\n });\r\n }\r\n\r\n onCloseDialog() {\r\n this.displayUpdateInventoryDialog = false;\r\n this.submitInventoryForm.reset();\r\n this.isSubmitted = false;\r\n this.rowDateToUpdate = null;\r\n }\r\n\r\n updateInventoryDetails() {\r\n // console.log(this.submitInventoryForm.value);\r\n this.isSubmitted = true;\r\n if (this.submitInventoryForm.invalid) {\r\n return;\r\n } else {\r\n // console.log('submit');\r\n let val = this.submitInventoryForm.value;\r\n\r\n if (Number(val.qauntity) < Number(val.consumedQuantity)) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Validation Error',\r\n detail:\r\n 'Consumed Quantity must be less than or equal to the Quantity',\r\n });\r\n return;\r\n }\r\n\r\n let reqBody = {\r\n autoId: this.rowDateToUpdate.AutoId,\r\n programId: this.rowDateToUpdate.ProgramId,\r\n categoryID: this.rowDateToUpdate.CategoryID,\r\n componentID: this.rowDateToUpdate.ComponentID,\r\n sizeID: this.rowDateToUpdate.SizeID,\r\n quantity: Number(val.qauntity),\r\n consumedQuantity: Number(val.consumedQuantity),\r\n lotNo: val.lotNo,\r\n batchNO: val.batchNo,\r\n billCopy: val.billCopyPath,\r\n itemType: val.itemType,\r\n purchaseInvoiceNo: val.purchaseInvoiceNo,\r\n invoiceBillDate: this.datePipe.transform(\r\n new Date(val.datePurchase),\r\n 'yyyy-MM-dd'\r\n ),\r\n userID: this.rowDateToUpdate.UserID,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n };\r\n\r\n this.vendorDashboardService\r\n .updateInventoryPurchaseDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Update MI Component Inventory Details',\r\n '',\r\n new Date(),\r\n resp,\r\n reqBody\r\n );\r\n if (resp == 'Record updated Successfully') {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n this.onCloseDialog();\r\n this.loadData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Update MI Component Inventory Details',\r\n '',\r\n new Date(),\r\n err,\r\n reqBody\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Data not updated.',\r\n });\r\n },\r\n });\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
{{'ADD_INVENTORY_DETAILS'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'PROGRAM_NAME_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CATEGORY_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'COMPONENT_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'SIZE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'QUANTITY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'CONSUMED_QUANTITY_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'BATCH_NO_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LOT_NO_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'DATE_PURCHASE_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'INVOICE_NO_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'ITEM_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'BILL_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n

{{'INVENTORY_DETAILS'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.ProgramName}}\r\n
{{'CATEGORY_NAME'| translate}}\r\n {{item.CategoryName}}\r\n
{{'COMPONENT_NAME'| translate}}\r\n {{item.ComponentName}}\r\n
{{'SIZE_NAME'| translate}}\r\n {{item.SizeName}}\r\n
{{'QUANTITY'| translate}}\r\n {{item.Quantity}}\r\n
{{'PREVIOUS_CONSUMED_QUANTITY'| translate}}\r\n {{item.ConsumedQuantity}}\r\n
{{'REMAINING_QUANTITY'| translate}}\r\n {{item.RemaningQuantity}}\r\n
{{'BATCH_NO'| translate}}\r\n {{item.BatchNO}}\r\n
{{'LOT_NO'| translate}}\r\n {{item.LotNo}}\r\n
{{'ITEM_TYPE'| translate}}\r\n {{item.ItemType}}\r\n
{{'INVOICE_NO'| translate}}\r\n {{item.PurchaseInvoiceNo}}\r\n
{{'INVOICE_BILL_DATE'| translate}}\r\n {{item.InvoiceBillDate | date}}\r\n
{{'INVENTORY_ACTION'| translate}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'BATCH_NO_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'LOT_NO_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'QUANTITY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'CONSUMED_QUANTITY_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
{{'DATE_PURCHASE_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'INVOICE_NO_IS_REQUIRED'|\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'ITEM_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'BILL_COPY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n\r\n","\r\nimport { Component, OnInit, ViewChild, OnDestroy, Output, EventEmitter, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Table } from 'primeng/table';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { crop_Datas } from '../../../../models/farmer-land.model';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport exifr from 'exifr';\r\nimport piexifjs from 'piexifjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-pre-estimate-survey-approved',\r\n templateUrl: './pre-estimate-survey-approved.component.html',\r\n styleUrls: ['./pre-estimate-survey-approved.component.scss']\r\n})\r\nexport class PreEstimateSurveyApprovedComponent implements OnInit {\r\n @ViewChild('farmerPreEstimateSurveyTable', { static: true })\r\n public farmerPreEstimateSurveyTable: Table;\r\n \r\n public farmerPreEstimateSurveyData: any = [];\r\n mobileFarmerPreEstimateSurveyData: any = [];\r\n displayPreEstDialog: boolean = false;\r\n isSubmitted: boolean = false;\r\n submitEstimateForm: FormGroup;\r\n latitude: any;\r\n longitude: any;\r\n geolocationsarray: any = [];\r\n overlays: any = [];\r\n mapEnable = false;\r\n public vendorRegId: any;\r\n selectedWatersourceType: string;\r\n componentList: any = [];\r\n public userId: any;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n // draggable: false,\r\n // icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'\r\n };\r\n\r\n programmeAppId: any;\r\n programmeFarmerName: any;\r\n programName: any;\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {};\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n private trigger: Subject = new Subject();\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n displayBasic: boolean = false;\r\n displayCameraComponent: any = false;\r\n selctedFileType: any;\r\n documentList: any = [];\r\n insertPondAttachments: any = [];\r\n selectedCropType: any;\r\n selectedCorpModel: crop_Datas;\r\n selectedCorpModelList: any;\r\n selectedNodes1: any[] = [];\r\n cropTypeList: any[];\r\n allSchemeMaster: any[] = [];\r\n waterSourceList: any[];\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n waterSourceNames: any;\r\n ProgramID: any;\r\n cropBasedNames: any;\r\n error: string;\r\n vendorCode: any;\r\n allAttachementsList: any = [];\r\n attachementDisplayName: any = [];\r\n imageError: string;\r\n uploadOptions: any[];\r\n autoId: any;\r\n appId: any;\r\n editBilledData: boolean = false;\r\n coordinateError: any;\r\n public multiSortMeta: any;\r\n ipAddress: any = '000.000.000';\r\n landArea: number = 0;\r\n surveyArea: number = null;\r\n\r\n public refreshLocation: any;\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[]\r\n\r\n public isGPSError: boolean = false;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public rowPlantSpacingData : any = [];\r\n\r\n public geoLocMulArray: any[] = [];\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private vendorService: VendorDashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private flService: FarmerLandDetailService,\r\n private route: ActivatedRoute,\r\n private fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private ipService: IpAddressService,\r\n public cd: ChangeDetectorRef,\r\n public router: Router,\r\n private service: BaseService,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n (this.waterSourceList = [\r\n { id: 1, waterSource: 'Canal' },\r\n { id: 2, waterSource: 'Tubewell' },\r\n { id: 3, waterSource: 'STP' },\r\n { id: 4, waterSource: 'Over Flow Pond' },\r\n ]),\r\n (this.uploadOptions = [\r\n { name: 'Farmer Photo', code: 'farmer_photo' },\r\n { name: 'Water Source', code: 'water_source' },\r\n { name: 'Land Photo', code: 'land_photo' },\r\n { name: 'Others', code: 'others' },\r\n ]);\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.onCapture();\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Pre_estimate_survey_file');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Pre_estimate_survey_file'\r\n );\r\n },\r\n },\r\n ];\r\n \r\n \r\n this.submitEstimateForm = this.fb.group({\r\n soilType: ['', Validators.required],\r\n cropType: ['', Validators.required],\r\n cropId: ['', Validators.required],\r\n waterSource: ['', Validators.required],\r\n waterPressure: ['', Validators.required],\r\n waterQuality: ['', Validators.required],\r\n ph: ['', Validators.required],\r\n ec: ['', Validators.required],\r\n waterReq: ['', Validators.required],\r\n // plantSpacing: ['', Validators.required],\r\n // rowSpacing: ['', Validators.required],\r\n spacing: ['', Validators.required]\r\n });\r\n // this.farmerPreEstimateSurveyTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.multiSortMeta = [];\r\n this.multiSortMeta.push({ field: 'AssignedDate', order: 1 });\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.farmerPreEstimateSurveyTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onRefreshCurrentLocation(){\r\n this.overlays.forEach((val, index) => {\r\n if(val?.title == \"Current Location\"){\r\n this.overlays.splice(index, 1); \r\n }\r\n })\r\n this.getCurrentLocation();\r\n }\r\n\r\n getCurrentLocation() {\r\n let overlay = this.overlays;\r\n let mapEnable = this.mapEnable;\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 10000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n const crd = pos.coords;\r\n const obj = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.options.center = obj;\r\n // const image = 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png';\r\n \r\n const currentLocationMarker = new google.maps.Marker({\r\n position: { lat: obj?.lat, lng: obj?.lng },\r\n title: 'Current Location',\r\n icon: '../../../assets/map/location-icon-5.png',\r\n });\r\n\r\n overlay.push(currentLocationMarker)\r\n \r\n instant.mapEnable = true;\r\n }\r\n\r\n function error(err) {\r\n instant.isGPSError = true;\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access.'\r\n } else{\r\n detailsMsg = 'Please Refresh the Current Location.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg,\r\n });\r\n }\r\n\r\n // this.mapEnable = true;\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n // this.addOverlay();\r\n }\r\n }\r\n\r\n get f() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // const token: any = this.tokenService.retrieve();\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .GetPreEstimationSurvey(JSON.parse(payload)?.sub, \"Approved\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.getCorpType();\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n data.forEach((e) => {\r\n if (e.AssignedDate) {\r\n e.AssignedDate = new Date(e.AssignedDate);\r\n e.registerationDate_filter = e.AssignedDate.toString().substring(\r\n 4,\r\n 24\r\n );\r\n }\r\n if (e.LastSubmittedDate) {\r\n e.LastSubmittedDate = new Date(e.LastSubmittedDate);\r\n e.registerationReassignDate_filter =\r\n e.LastSubmittedDate.toString().substring(4, 24);\r\n }\r\n });\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.farmerPreEstimateSurveyData = data;\r\n this.appVerificationModel= this.farmerPreEstimateSurveyData \r\n // this.mobileFarmerPreEstimateSurveyData = data;\r\n this.mobileFarmerPreEstimateSurveyData = this.farmerPreEstimateSurveyData.filter(val => val.FinYear==this.selectedYear);\r\n\r\n }\r\n else{\r\n this.farmerPreEstimateSurveyData = [];\r\n this.appVerificationModel= [] \r\n this.mobileFarmerPreEstimateSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n \r\n }\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.cropTypeList = files;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n getCropTypeName(event) {\r\n const data = this.cropTypeList.find((element) => element.data == event);\r\n if (data) {\r\n this.cropBasedNames = data.children;\r\n } else {\r\n this.cropBasedNames = [];\r\n }\r\n }\r\n selectPreSurveyData(event) {}\r\n onCloseDialog() {\r\n this.isGPSError = false;\r\n clearInterval(this.refreshLocation);\r\n this.displayPreEstDialog = false;\r\n this.mapEnable = false;\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.overlays = this.overlays.filter(val => {\r\n return !val?.title?.includes('Coordinate')\r\n });\r\n this.documentList = [];\r\n this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.landArea = 0;\r\n this.surveyArea = null;\r\n this.addOverlay();\r\n }\r\n\r\n onDeleteCoordinate(i, tableNo) {\r\n this.geoLocMulArray[tableNo].splice(i, 1);\r\n for (let index = 0; index < this.geoLocMulArray[tableNo].length; index++) {\r\n this.geoLocMulArray[tableNo][index].CornerID = `Polygon ${tableNo+1} : Coordinate ${index + 1}` ;\r\n } \r\n\r\n if(this.geoLocMulArray[tableNo].length > 0){\r\n this.onSave(tableNo);\r\n }else{\r\n this.onSave(0);\r\n }\r\n // }\r\n }\r\n\r\n onDeleteNewPolygon(i){\r\n if (i >= 0 && i < this.geoLocMulArray.length) {\r\n this.geoLocMulArray.splice(i, 1);\r\n \r\n // Renaming the remaining polygon corner IDs\r\n for (let j = 0; j < this.geoLocMulArray.length; j++) {\r\n for (let k = 0; k < this.geoLocMulArray[j].length; k++) {\r\n this.geoLocMulArray[j][k].CornerID = `Polygon ${j + 1} : Coordinate ${k + 1}`;\r\n }\r\n }\r\n\r\n this.onSave(0);\r\n\r\n } else {\r\n console.error(\"Index out of bounds\");\r\n }\r\n }\r\n \r\n onStartNewPolygon(index){\r\n this.geoLocMulArray.push([]);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onCapture(index) {\r\n this.cdr.detectChanges();\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 5000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n let isInvalid = instant.geoLocMulArray[index].find((data) => {\r\n if (\r\n data.lat == pos.coords.latitude &&\r\n data.lng == pos.coords.longitude\r\n ) {\r\n return data;\r\n }\r\n });\r\n\r\n if (isInvalid) {\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Please move to a different location to get new coordinates.',\r\n });\r\n return;\r\n }\r\n\r\n const crd = pos.coords;\r\n const obj = {\r\n // CornerID: instant.geoLocMulArray[index].length + 1,\r\n CornerID: `Polygon ${index+1} : Coordinate ${instant.geoLocMulArray[index].length + 1}`,\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.geoLocMulArray[index].push(obj);\r\n \r\n // Check for self-intersections before allowing the polygon creation\r\n if (instant.isSelfIntersecting(instant.geoLocMulArray[index])) {\r\n instant.geoLocMulArray[index].pop();\r\n alert('Polygon is invalid due to intersecting edges. Please redraw.');\r\n return;\r\n }else {\r\n instant.onSave(index);\r\n }\r\n }\r\n\r\n function error(err) {\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access'\r\n } else{\r\n detailsMsg = 'Please capture again.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg\r\n ,\r\n });\r\n }\r\n\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n }\r\n }\r\n\r\n isSelfIntersecting(coordsArray) {\r\n for (let i = 0; i < coordsArray.length - 1; i++) {\r\n for (let j = i + 2; j < coordsArray.length; j++) {\r\n // Prevent checking consecutive edges or the last edge with the first one\r\n if (i === 0 && j === coordsArray.length - 1) continue;\r\n if (this.doLinesIntersect(coordsArray[i], coordsArray[i + 1], coordsArray[j], coordsArray[(j + 1) % coordsArray.length])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n doLinesIntersect(p1, q1, p2, q2) {\r\n // Helper function to calculate orientation of the points\r\n function orientation(p, q, r) {\r\n let val = (q.lat - p.lat) * (r.lng - q.lng) - (q.lng - p.lng) * (r.lat - q.lat);\r\n if (val === 0) return 0; // collinear\r\n return (val > 0) ? 1 : 2; // clock or counterclockwise\r\n }\r\n\r\n // Check the four orientations needed for the general and special cases\r\n let o1 = orientation(p1, q1, p2);\r\n let o2 = orientation(p1, q1, q2);\r\n let o3 = orientation(p2, q2, p1);\r\n let o4 = orientation(p2, q2, q1);\r\n\r\n // General case\r\n if (o1 !== o2 && o3 !== o4) return true;\r\n\r\n // Special cases\r\n // p1, q1, p2 are collinear and p2 lies on segment p1q1\r\n if (o1 === 0 && this.onSegment(p1, p2, q1)) return true;\r\n\r\n // p1, q1, q2 are collinear and q2 lies on segment p1q1\r\n if (o2 === 0 && this.onSegment(p1, q2, q1)) return true;\r\n\r\n // p2, q2, p1 are collinear and p1 lies on segment p2q2\r\n if (o3 === 0 && this.onSegment(p2, p1, q2)) return true;\r\n\r\n // p2, q2, q1 are collinear and q1 lies on segment p2q2\r\n if (o4 === 0 && this.onSegment(p2, q1, q2)) return true;\r\n\r\n return false;\r\n }\r\n\r\n onSegment(p, q, r) {\r\n return q.lng <= Math.max(p.lng, r.lng) && q.lng >= Math.min(p.lng, r.lng) &&\r\n q.lat <= Math.max(p.lat, r.lat) && q.lat >= Math.min(p.lat, r.lat);\r\n }\r\n\r\n onSave(tableNo) {\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.options.center = this.geoLocMulArray[tableNo][0];\r\n this.overlays = [];\r\n this.geoLocMulArray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.addMarkers(row, index, tableIndex);\r\n });\r\n })\r\n \r\n this.addOverlay();\r\n }\r\n\r\n onNext() {}\r\n mobileSearch(value) {\r\n this.mobileFarmerPreEstimateSurveyData =\r\n this.farmerPreEstimateSurveyData.filter((data: any) => {\r\n if (\r\n data.appID.toLowerCase().includes(value.toLowerCase()) ||\r\n data.FarmerName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.ProgrammeName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.district.toLowerCase().includes(value.toLowerCase()) ||\r\n data.village.toLowerCase().includes(value.toLowerCase()) ||\r\n data.block.toLowerCase().includes(value.toLowerCase()) ||\r\n data.Status_Ar.toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data;\r\n }\r\n });\r\n }\r\n addOverlay() {\r\n this.overlays.forEach((val, index) => {\r\n if(val?.fillColor){\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n\r\n this.geoLocMulArray.forEach(arr => {\r\n this.overlays.push(\r\n new google.maps.Polygon({\r\n paths: arr,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n\r\n let area = 0;\r\n this.geoLocMulArray.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.landArea = Number((0.000247105*area).toFixed(2));\r\n\r\n // if(this.geolocationsarray.length >=3){\r\n // let polygon = new google.maps.Polygon({paths: this.geolocationsarray})\r\n // let area = this.calculateLandArea(polygon.getPath());\r\n // this.landArea = Number((0.000247105*area).toFixed(2));\r\n // }\r\n \r\n // this.onRefreshCurrentLocation();\r\n }\r\n\r\n calculateLandArea(polygon){\r\n return google?.maps?.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n removeOverlay() {\r\n this.overlays.pop().setMap(null);\r\n }\r\n addMarkers(row: any, index, tableNo) { \r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: `${row?.CornerID}`,\r\n // draggable: false,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n onDrag(event) {\r\n let indexVal = this.getTableAndCoordinateVal(event?.overlay?.title)\r\n\r\n\r\n let index = indexVal?.coordinateValue ? indexVal?.coordinateValue : 1;\r\n let tableNo = indexVal?.polygonIndex ? indexVal?.polygonIndex : 1;\r\n\r\n // index = event?.overlay?.title ? event?.overlay?.title.split(' ')[1] : -1;\r\n if (index >= 1) {\r\n this.geoLocMulArray[tableNo - 1][index - 1].lat = event?.overlay?.position?.lat();\r\n this.geoLocMulArray[tableNo - 1][index - 1].lng = event?.overlay?.position?.lng();\r\n\r\n this.removeOverlay();\r\n this.addOverlay();\r\n }\r\n }\r\n\r\n\r\n getTableAndCoordinateVal(val) {\r\n let polygonIndex = null; // Default to null if not present\r\n let coordinateValue = null; // Default to null if not present\r\n\r\n // Match both patterns\r\n const polygonMatch = val.match(/Polygon\\s+(\\d+)/);\r\n const coordinateMatch = val.match(/Coordinate\\s+(\\d+)/);\r\n\r\n // Extract polygon index if it exists\r\n if (polygonMatch) {\r\n polygonIndex = parseInt(polygonMatch[1], 10);\r\n }\r\n\r\n // Extract coordinate value if it exists\r\n if (coordinateMatch) {\r\n coordinateValue = parseInt(coordinateMatch[1], 10);\r\n }\r\n\r\n return { polygonIndex, coordinateValue };\r\n }\r\n\r\n showBasicDialog() {\r\n this.displayBasic = true;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n exifr\r\n .parse(this.webcamImage.imageAsDataUrl)\r\n .then((output) => {\r\n } );\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], this.selctedFileType + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // if (params.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `preEstimateSurvey_${new Date().getTime()}`;\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n document_type: this.selctedFileType.name,\r\n displayName: fileName,\r\n name: this.selctedFileType.name,\r\n // this.selctedFileType.code === 'farmer_photo'\r\n // ? 'Farmer Photo'\r\n // : this.selctedFileType.code === 'water_source'\r\n // ? 'Water Source'\r\n // : this.selctedFileType.code === 'land_photo'\r\n // ? 'Land Photo'\r\n // : this.selctedFileType.code === 'others'\r\n // ? 'Others'\r\n // : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n // let documentListObject = {\r\n // // 'appId': this.cryptoJsService.DecryptData(params.appId),\r\n // 'documentList': this.documentList\r\n // }\r\n // sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n }\r\n this.selctedFileType = '';\r\n });\r\n // });\r\n }\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n onCaptureImage() {\r\n this.displayCameraComponent = true;\r\n }\r\n onCloseImageDialog() {\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n }\r\n getImagesArray() {\r\n if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'ERROR_MESSAGE',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n return;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n submitSurveyDetails() {\r\n let existImage = true;\r\n this.isSubmitted = true;\r\n if (this.submitEstimateForm.valid) {\r\n let geoCoordinateError = false;\r\n this.geoLocMulArray.forEach((array, index) => {\r\n if(array.length < 4){\r\n this.coordinateError = `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`,\r\n });\r\n geoCoordinateError = true;\r\n }\r\n })\r\n if (geoCoordinateError) {\r\n // this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES';\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Please provide atleast 4 GPS Coordinates',\r\n // });\r\n return;\r\n } else if((Math.abs(this.landArea - this.surveyArea) > 0.1*this.landArea)){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Difference between Calculated Area (${this.landArea}) and Survey Area (${this.surveyArea}) is more. Please recapture the coordinates.`,\r\n });\r\n return;\r\n } else if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n existImage = false;\r\n }\r\n }\r\n });\r\n let attachemntArray = [];\r\n if (!existImage) {\r\n return;\r\n }\r\n for (let index = 0; index < this.documentList.length; index++) {\r\n const obj = {\r\n attachmentsDoc: this.documentList[index].attachment,\r\n documentType: this.documentList[index].document_type,\r\n };\r\n attachemntArray.push(obj);\r\n }\r\n // for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n // const gpsObj = {\r\n // CornerID: index + 1,\r\n // latitude: this.geolocationsarray[index].lat,\r\n // longitude: this.geolocationsarray[index].lng,\r\n // };\r\n // geoCoordinates.push(gpsObj);\r\n // }\r\n \r\n let geoCoordinates: any []= [];\r\n this.geoLocMulArray.forEach((array) => {\r\n let val = array.map((val) => ({\r\n CornerID: val.CornerID,\r\n latitude: val.lat,\r\n longitude: val.lng\r\n }))\r\n geoCoordinates.push(val);\r\n })\r\n\r\n const dataObj = [\r\n {\r\n appID: this.programmeAppId,\r\n progID: this.ProgramID,\r\n FarmerName: this.programmeFarmerName,\r\n soilType: this.submitEstimateForm.value.soilType,\r\n cropTypeID: this.submitEstimateForm.value.cropType,\r\n cropID: this.submitEstimateForm.value.cropId,\r\n waterSourceId: this.submitEstimateForm.value.waterSource,\r\n waterPressure: this.submitEstimateForm.value.waterPressure,\r\n waterQuality: this.submitEstimateForm.value.waterQuality,\r\n PH: this.submitEstimateForm.value.ph,\r\n EC: this.submitEstimateForm.value.ec,\r\n waterQuantity: this.submitEstimateForm.value.waterReq,\r\n plantSpacing: parseFloat(this.submitEstimateForm.value.spacing.split(\"X\")[1]),\r\n rowSpacing: parseFloat(this.submitEstimateForm.value.spacing.split(\"X\")[0]),\r\n vendorCode: this.vendorCode,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n insertServeyAttachments: attachemntArray,\r\n insertSurveyGPSCoordiantes: geoCoordinates,\r\n },\r\n ];\r\n\r\n let reqBody = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(dataObj))\r\n }\r\n\r\n this.loader.start();\r\n this.flService\r\n .getPreEstimateSurvey(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey Action (Pending)',\r\n this.programmeAppId,\r\n new Date(),\r\n resp,\r\n dataObj[0]\r\n );\r\n if(resp.startsWith(\"S:Successfully\")){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n this.isSubmitted = true;\r\n this.onCloseDialog();\r\n this.loadData();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'info Message',\r\n detail: resp,\r\n });\r\n return;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey Action (Err: Pending)',\r\n this.programmeAppId,\r\n new Date(),\r\n err,\r\n dataObj[0]\r\n );\r\n this.isSubmitted = true;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please fill all the mandatory feilds',\r\n });\r\n }\r\n }\r\n removeImg(i) {\r\n this.documentList.splice(i, 1);\r\n }\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.Pending_CompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.Pending_CompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.Pending_CompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.Pending_CompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getRowPlantSpacing(progId){\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getProDataSpacing(progId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.rowPlantSpacingData = data; \r\n }else{\r\n this.rowPlantSpacingData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found for row and plant spacing',\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.rowPlantSpacingData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n addEstimation(data) {\r\n this.getRowPlantSpacing(data?.ProgramID);\r\n this.getCurrentLocation();\r\n this.addOverlay();\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([])\r\n this.refreshLocation = setInterval(() =>\r\n this.onRefreshCurrentLocation(), 4000);\r\n\r\n // setTimeout(() => {\r\n // if(!this.isGPSError){\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 5000)\r\n // }\r\n // }, 7000)\r\n\r\n \r\n\r\n this.displayPreEstDialog = true;\r\n this.geolocationsarray = [];\r\n this.programmeAppId = data.appID;\r\n this.programmeFarmerName = data.FarmerName;\r\n this.programName = data.ProgrammeName;\r\n this.ProgramID = data.ProgramID;\r\n this.vendorCode = data.Vendor_Code;\r\n this.isSubmitted = false;\r\n this.surveyArea = data.Total_Area;\r\n // this.applyConditionalValidation(data);\r\n }\r\n updateEstimation(data) {\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 6000)\r\n this.getRowPlantSpacing(data?.ProgramID);\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([])\r\n this.surveyArea = data.Total_Area\r\n \r\n this.isSubmitted = false;\r\n // this.applyConditionalValidation(data);\r\n this.displayPreEstDialog = true;\r\n this.programmeFarmerName = data.FarmerName;\r\n let reqBody = {\r\n AppId: data.appID,\r\n ProgramId: data.ProgramID,\r\n };\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .GetEditPreEstimationSurvey(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (typeof data.WaterPressure == 'number') {\r\n data.WaterPressure = JSON.stringify(data.WaterPressure);\r\n }\r\n if (typeof data.WaterQuantity == 'number') {\r\n data.WaterQuantity = JSON.stringify(data.WaterQuantity);\r\n }\r\n // this.loader.close();\r\n this.loading = false;\r\n this.programmeAppId = data.AppID;\r\n this.programName = data.ProgramName;\r\n this.ProgramID = data.ProgId;\r\n this.vendorCode = data.VendorCode;\r\n this.f.soilType.setValue(data.SoilType);\r\n this.f.cropType.setValue(data.CropTypeID);\r\n this.f.cropId.setValue(data.CropId);\r\n this.f.waterSource.setValue(data.WaterSourceId);\r\n this.f.waterPressure.setValue(data.WaterPressure);\r\n this.f.waterQuality.setValue(data.WaterQuality);\r\n this.f.ph.setValue(data?.PH);\r\n this.f.ec.setValue(data?.EC);\r\n this.f.waterReq.setValue(data.WaterQuantity);\r\n // this.f.plantSpacing.setValue(data.PlantSpacing);\r\n // this.f.rowSpacing.setValue(data.RowSpacing);\r\n this.f.spacing.setValue(`${data.RowSpacing}X${data.PlantSpacing}`)\r\n for (let index = 0; index < data.listGPSCoordinates.length; index++) {\r\n let geoData = {\r\n CornerID: data.listGPSCoordinates[index].CornerID,\r\n lat: data.listGPSCoordinates[index].Latitude,\r\n lng: data.listGPSCoordinates[index].Longitude,\r\n };\r\n this.geolocationsarray.push(geoData);\r\n }\r\n if (this.geolocationsarray.length == 0) {\r\n this.mapEnable = false;\r\n } else {\r\n if (this.geolocationsarray && this.geolocationsarray.length > 0) {\r\n this.options.center = this.geolocationsarray[0];\r\n }\r\n this.mapEnable = true;\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index, 'tableNO');\r\n });\r\n this.addOverlay();\r\n }\r\n\r\n for (let index = 0; index < data.listImagePath.length; index++) {\r\n let imagesData = {\r\n attachment: data.listImagePath[index].ImagePath,\r\n attachmentRawUrl: data.listImagePath[index].ImagePath,\r\n document_type: data.listImagePath[index].DocumentType,\r\n displayName: data.listImagePath[index].DocumentType,\r\n name: data.listImagePath[index].DocumentType,\r\n };\r\n this.documentList.push(imagesData);\r\n }\r\n },\r\n });\r\n }\r\n\r\n applyConditionalValidation(data){\r\n // if(data?.ApplicantType == '7500' && data?.ProgrammeName == 'Drip Irrigation'){\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.min(0.3)]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.min(0.6)]);\r\n // }\r\n // else{\r\n // this.submitEstimateForm.controls['rowSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['plantSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.required]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.required]);\r\n // }\r\n // this.submitEstimateForm.controls['rowSpacing'].updateValueAndValidity();\r\n // this.submitEstimateForm.controls['plantSpacing'].updateValueAndValidity();\r\n }\r\n\r\n selectViewApplication(application, statusCode) {\r\n if (application.appID) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'print',\r\n this.cryptoJsService.Encrypt(application.appID),\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'date of Submit':d.registerationDate_filter,\r\n 'date of Resubmit':d.registerationReassignDate_filter,\r\n 'Applicant Type': d.ApplicantType,\r\n 'App type': d.FarmerName,\r\n \"Village\": d.village,\r\n 'block': d.block,\r\n 'District': d.district,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Program Name': d.ProgrammeName,\r\n 'Land Detail': d.LandDetail,\r\n 'Total Area': d.Total_Area,\r\n 'current status': d.Status_Ar,\r\n 'Remarks': d.DeptRemarks,\r\n 'Act on PrevAction': d.ActOnPrevAction,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'registerationDate_filter', header: 'date of Submit' },\r\n { field: 'registerationReassignDate_filter', header: 'date of Resubmit' },\r\n { field: 'ApplicantType', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'village' },\r\n { field: 'block', header: 'block' },\r\n { field: 'district', header: 'district' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Program Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'Status_Ar', header: 'current status' },\r\n { field: 'DeptRemarks', header: 'Remarks' },\r\n { field: 'ActOnPrevAction', header: 'Act on PrevAction' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n }\r\n}\r\n\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}{{item.appID}}\r\n
{{'DATE_OF_SUBMIT'| translate}}\r\n {{item.AssignedDate | date:'medium'}}\r\n
{{'DATE_OF_RESUBMIT'| translate}}\r\n {{item.LastSubmittedDate | date:'medium'}}\r\n
{{'APPLICANT_TYPE'| translate}}\r\n {{item.ApplicantType}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.FarmerName}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.village}}\r\n
{{'BLOCK'| translate}}\r\n {{item.block}}\r\n
{{'DISTRICT'| translate}}\r\n {{item.district}}\r\n
{{'AGE_OF_APPLICATION'| translate}}\r\n {{item.AgeOfApplication}}\r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.ProgrammeName}}\r\n
{{'LAND_DETAIL'| translate}}\r\n {{item.LandDetail}}\r\n
{{'TOTAL_AREA'| translate}}\r\n {{item.Total_Area}}\r\n
{{'APPLICATION_STATUS'| translate}}\r\n {{item.Status_Ar}}\r\n
{{'DEPT_REMARKS'| translate}}\r\n {{item.DeptRemarks}}\r\n
{{'ACT_ON_PREVIOUS_ACTION'| translate}}\r\n {{item.ActOnPrevAction}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.FinYear}}\r\n
{{'VIEW_APPLICATION' | translate}}
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'SOIL_TYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_IS_REQ'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'WATER_SOURCE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_PRESSURE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_QUALITY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'PH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'EC_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_REQ_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{'SPACING_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}
\r\n
0 || overlays.length>0\" class=\"dashboardTable\">\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n {{'ACTIONS'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n

{{coordinateError | translate}}

\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
0\" class=\"field md:col-4 col-12\">\r\n \r\n
\r\n
\r\n
0 && (landArea - surveyArea > 0.1*landArea || surveyArea - landArea > 0.1*landArea)\" class=\"p-fluid p-formgrid justify-content-center areaError mb-4\" style=\"display: flex; flex-wrap:wrap\">\r\n

{{ \"CALCULATED_AREA_IS_MUCH_GREATER_THAN_SURVEYED_AREA._PLEASE_RECAPTURE_THE_COORDINATES\" | translate }}

\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
{{'CAPTURE_IMAGE'| translate}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{item.name}}\r\n

\r\n

\r\n {{item.name}}\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{imageError}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">\"{{'MESSAGES'| translate}}\":

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n
\r\n\r\n","\r\nimport { Component, OnInit, ViewChild, OnDestroy, Output, EventEmitter, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Table } from 'primeng/table';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { crop_Datas } from '../../../../models/farmer-land.model';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport exifr from 'exifr';\r\nimport piexifjs from 'piexifjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-pre-estimate-survey-current',\r\n templateUrl: './pre-estimate-survey-current.component.html',\r\n styleUrls: ['./pre-estimate-survey-current.component.scss']\r\n})\r\nexport class PreEstimateSurveyCurrentComponent implements OnInit {\r\n @ViewChild('farmerPreEstimateSurveyTable', { static: true })\r\n public farmerPreEstimateSurveyTable: Table;\r\n \r\n public farmerPreEstimateSurveyData: any = [];\r\n mobileFarmerPreEstimateSurveyData: any = [];\r\n displayPreEstDialog: boolean = false;\r\n isSubmitted: boolean = false;\r\n submitEstimateForm: FormGroup;\r\n latitude: any;\r\n longitude: any;\r\n geolocationsarray: any = [];\r\n overlays: any = [];\r\n mapEnable = false;\r\n public vendorRegId: any;\r\n selectedWatersourceType: string;\r\n componentList: any = [];\r\n public userId: any;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n // draggable: false,\r\n // icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'\r\n };\r\n\r\n programmeAppId: any;\r\n programmeFarmerName: any;\r\n programName: any;\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {};\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n private trigger: Subject = new Subject();\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n displayBasic: boolean = false;\r\n displayCameraComponent: any = false;\r\n selctedFileType: any;\r\n documentList: any = [];\r\n insertPondAttachments: any = [];\r\n selectedCropType: any;\r\n selectedCorpModel: crop_Datas;\r\n selectedCorpModelList: any;\r\n selectedNodes1: any[] = [];\r\n cropTypeList: any[];\r\n allSchemeMaster: any[] = [];\r\n waterSourceList: any[];\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n waterSourceNames: any;\r\n ProgramID: any;\r\n cropBasedNames: any;\r\n error: string;\r\n vendorCode: any;\r\n allAttachementsList: any = [];\r\n attachementDisplayName: any = [];\r\n imageError: string;\r\n uploadOptions: any[];\r\n autoId: any;\r\n appId: any;\r\n editBilledData: boolean = false;\r\n coordinateError: any;\r\n public multiSortMeta: any;\r\n ipAddress: any = '000.000.000';\r\n landArea: number = 0;\r\n surveyArea: number = null;\r\n\r\n public refreshLocation: any;\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[]\r\n\r\n public isGPSError: boolean = false;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public rowPlantSpacingData : any = [];\r\n\r\n public geoLocMulArray: any[] = [];\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private vendorService: VendorDashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private flService: FarmerLandDetailService,\r\n private route: ActivatedRoute,\r\n private fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private ipService: IpAddressService,\r\n public cd: ChangeDetectorRef,\r\n public router: Router,\r\n private service: BaseService,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n (this.waterSourceList = [\r\n { id: 1, waterSource: 'Canal' },\r\n { id: 2, waterSource: 'Tubewell' },\r\n { id: 3, waterSource: 'STP' },\r\n { id: 4, waterSource: 'Over Flow Pond' },\r\n ]),\r\n (this.uploadOptions = [\r\n { name: 'Farmer Photo', code: 'farmer_photo' },\r\n { name: 'Water Source', code: 'water_source' },\r\n { name: 'Land Photo', code: 'land_photo' },\r\n { name: 'Others', code: 'others' },\r\n ]);\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.onCapture();\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Pre_estimate_survey_file');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Pre_estimate_survey_file'\r\n );\r\n },\r\n },\r\n ];\r\n \r\n \r\n this.submitEstimateForm = this.fb.group({\r\n soilType: ['', Validators.required],\r\n cropType: ['', Validators.required],\r\n cropId: ['', Validators.required],\r\n waterSource: ['', Validators.required],\r\n waterPressure: ['', Validators.required],\r\n waterQuality: ['', Validators.required],\r\n ph: ['', Validators.required],\r\n ec: ['', Validators.required],\r\n waterReq: ['', Validators.required],\r\n // plantSpacing: ['', Validators.required],\r\n // rowSpacing: ['', Validators.required],\r\n spacing: ['', Validators.required]\r\n });\r\n // this.farmerPreEstimateSurveyTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.multiSortMeta = [];\r\n this.multiSortMeta.push({ field: 'AssignedDate', order: 1 });\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.farmerPreEstimateSurveyTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n\r\n if (this.refreshLocation) {\r\n clearTimeout(this.refreshLocation);\r\n }\r\n }\r\n\r\n onRefreshCurrentLocation(){\r\n this.overlays.forEach((val, index) => {\r\n if(val?.title == \"Current Location\"){\r\n this.overlays.splice(index, 1); \r\n }\r\n })\r\n this.getCurrentLocation();\r\n }\r\n\r\n getCurrentLocation() {\r\n let overlay = this.overlays;\r\n let mapEnable = this.mapEnable;\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 10000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n const crd = pos.coords;\r\n const obj = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.options.center = obj;\r\n // const image = 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png';\r\n \r\n const currentLocationMarker = new google.maps.Marker({\r\n position: { lat: obj?.lat, lng: obj?.lng },\r\n title: 'Current Location',\r\n icon: '../../../assets/map/location-icon-5.png',\r\n });\r\n\r\n overlay.push(currentLocationMarker)\r\n \r\n instant.mapEnable = true;\r\n }\r\n\r\n function error(err) {\r\n instant.isGPSError = true;\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access.'\r\n } else{\r\n detailsMsg = 'Please Refresh the Current Location.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg,\r\n });\r\n }\r\n\r\n // this.mapEnable = true;\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n // this.addOverlay();\r\n }\r\n }\r\n\r\n get f() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // const token: any = this.tokenService.retrieve();\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .GetPreEstimationSurvey(JSON.parse(payload)?.sub, \"Current\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.getCorpType();\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n data.forEach((e) => {\r\n if (e.AssignedDate) {\r\n e.AssignedDate = new Date(e.AssignedDate);\r\n e.registerationDate_filter = e.AssignedDate.toString().substring(\r\n 4,\r\n 24\r\n );\r\n }\r\n if (e.LastSubmittedDate) {\r\n e.LastSubmittedDate = new Date(e.LastSubmittedDate);\r\n e.registerationReassignDate_filter =\r\n e.LastSubmittedDate.toString().substring(4, 24);\r\n }\r\n });\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.farmerPreEstimateSurveyData = data;\r\n this.appVerificationModel= this.farmerPreEstimateSurveyData \r\n // this.mobileFarmerPreEstimateSurveyData = data;\r\n this.mobileFarmerPreEstimateSurveyData = this.farmerPreEstimateSurveyData.filter(val => val.FinYear==this.selectedYear);\r\n\r\n }\r\n else{\r\n this.farmerPreEstimateSurveyData = [];\r\n this.appVerificationModel= [] \r\n this.mobileFarmerPreEstimateSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n \r\n }\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.cropTypeList = files;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n getCropTypeName(event) {\r\n const data = this.cropTypeList.find((element) => element.data == event);\r\n if (data) {\r\n this.cropBasedNames = data.children;\r\n } else {\r\n this.cropBasedNames = [];\r\n }\r\n }\r\n selectPreSurveyData(event) {}\r\n onCloseDialog() {\r\n this.isGPSError = false;\r\n clearInterval(this.refreshLocation);\r\n clearTimeout(this.refreshLocation);\r\n this.displayPreEstDialog = false;\r\n this.mapEnable = false;\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.overlays = this.overlays.filter(val => {\r\n return !val?.title?.includes('Coordinate')\r\n });\r\n this.documentList = [];\r\n this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.landArea = 0;\r\n this.surveyArea = null;\r\n this.addOverlay();\r\n }\r\n\r\n onDeleteCoordinate(i, tableNo) {\r\n this.geoLocMulArray[tableNo].splice(i, 1);\r\n for (let index = 0; index < this.geoLocMulArray[tableNo].length; index++) {\r\n this.geoLocMulArray[tableNo][index].CornerID = `Polygon ${tableNo+1} : Coordinate ${index + 1}` ;\r\n } \r\n\r\n if(this.geoLocMulArray[tableNo].length > 0){\r\n this.onSave(tableNo);\r\n }else{\r\n this.onSave(0);\r\n }\r\n // }\r\n }\r\n\r\n onDeleteNewPolygon(i){\r\n if (i >= 0 && i < this.geoLocMulArray.length) {\r\n this.geoLocMulArray.splice(i, 1);\r\n \r\n // Renaming the remaining polygon corner IDs\r\n for (let j = 0; j < this.geoLocMulArray.length; j++) {\r\n for (let k = 0; k < this.geoLocMulArray[j].length; k++) {\r\n this.geoLocMulArray[j][k].CornerID = `Polygon ${j + 1} : Coordinate ${k + 1}`;\r\n }\r\n }\r\n\r\n this.onSave(0);\r\n\r\n } else {\r\n console.error(\"Index out of bounds\");\r\n }\r\n }\r\n \r\n onStartNewPolygon(index){\r\n this.geoLocMulArray.push([]);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onCapture(index) {\r\n this.cdr.detectChanges();\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 5000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n let isInvalid = instant.geoLocMulArray[index].find((data) => {\r\n if (\r\n data.lat == pos.coords.latitude &&\r\n data.lng == pos.coords.longitude\r\n ) {\r\n return data;\r\n }\r\n });\r\n\r\n if (isInvalid) {\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Please move to a different location to get new coordinates.',\r\n });\r\n return;\r\n }\r\n\r\n const crd = pos.coords;\r\n const obj = {\r\n // CornerID: instant.geoLocMulArray[index].length + 1,\r\n CornerID: `Polygon ${index+1} : Coordinate ${instant.geoLocMulArray[index].length + 1}`,\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.geoLocMulArray[index].push(obj);\r\n \r\n // Check for self-intersections before allowing the polygon creation\r\n if (instant.isSelfIntersecting(instant.geoLocMulArray[index])) {\r\n instant.geoLocMulArray[index].pop();\r\n alert('Polygon is invalid due to intersecting edges. Please redraw.');\r\n return;\r\n }else {\r\n instant.onSave(index);\r\n }\r\n }\r\n\r\n function error(err) {\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access'\r\n } else{\r\n detailsMsg = 'Please capture again.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg\r\n ,\r\n });\r\n }\r\n\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n }\r\n }\r\n\r\n isSelfIntersecting(coordsArray) {\r\n for (let i = 0; i < coordsArray.length - 1; i++) {\r\n for (let j = i + 2; j < coordsArray.length; j++) {\r\n // Prevent checking consecutive edges or the last edge with the first one\r\n if (i === 0 && j === coordsArray.length - 1) continue;\r\n if (this.doLinesIntersect(coordsArray[i], coordsArray[i + 1], coordsArray[j], coordsArray[(j + 1) % coordsArray.length])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n doLinesIntersect(p1, q1, p2, q2) {\r\n // Helper function to calculate orientation of the points\r\n function orientation(p, q, r) {\r\n let val = (q.lat - p.lat) * (r.lng - q.lng) - (q.lng - p.lng) * (r.lat - q.lat);\r\n if (val === 0) return 0; // collinear\r\n return (val > 0) ? 1 : 2; // clock or counterclockwise\r\n }\r\n\r\n // Check the four orientations needed for the general and special cases\r\n let o1 = orientation(p1, q1, p2);\r\n let o2 = orientation(p1, q1, q2);\r\n let o3 = orientation(p2, q2, p1);\r\n let o4 = orientation(p2, q2, q1);\r\n\r\n // General case\r\n if (o1 !== o2 && o3 !== o4) return true;\r\n\r\n // Special cases\r\n // p1, q1, p2 are collinear and p2 lies on segment p1q1\r\n if (o1 === 0 && this.onSegment(p1, p2, q1)) return true;\r\n\r\n // p1, q1, q2 are collinear and q2 lies on segment p1q1\r\n if (o2 === 0 && this.onSegment(p1, q2, q1)) return true;\r\n\r\n // p2, q2, p1 are collinear and p1 lies on segment p2q2\r\n if (o3 === 0 && this.onSegment(p2, p1, q2)) return true;\r\n\r\n // p2, q2, q1 are collinear and q1 lies on segment p2q2\r\n if (o4 === 0 && this.onSegment(p2, q1, q2)) return true;\r\n\r\n return false;\r\n }\r\n\r\n onSegment(p, q, r) {\r\n return q.lng <= Math.max(p.lng, r.lng) && q.lng >= Math.min(p.lng, r.lng) &&\r\n q.lat <= Math.max(p.lat, r.lat) && q.lat >= Math.min(p.lat, r.lat);\r\n }\r\n\r\n onSave(tableNo) {\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.options.center = this.geoLocMulArray[tableNo][0];\r\n this.overlays = [];\r\n this.geoLocMulArray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.addMarkers(row, index, tableIndex);\r\n });\r\n })\r\n \r\n this.addOverlay();\r\n }\r\n\r\n onNext() {}\r\n mobileSearch(value) {\r\n this.mobileFarmerPreEstimateSurveyData =\r\n this.farmerPreEstimateSurveyData.filter((data: any) => {\r\n if (\r\n data.appID.toLowerCase().includes(value.toLowerCase()) ||\r\n data.FarmerName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.ProgrammeName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.district.toLowerCase().includes(value.toLowerCase()) ||\r\n data.village.toLowerCase().includes(value.toLowerCase()) ||\r\n data.block.toLowerCase().includes(value.toLowerCase()) ||\r\n data.Status_Ar.toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data;\r\n }\r\n });\r\n }\r\n addOverlay() {\r\n this.overlays.forEach((val, index) => {\r\n if(val?.fillColor){\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n\r\n this.geoLocMulArray.forEach(arr => {\r\n this.overlays.push(\r\n new google.maps.Polygon({\r\n paths: arr,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n\r\n let area = 0;\r\n this.geoLocMulArray.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.landArea = Number((0.000247105*area).toFixed(2));\r\n\r\n // if(this.geolocationsarray.length >=3){\r\n // let polygon = new google.maps.Polygon({paths: this.geolocationsarray})\r\n // let area = this.calculateLandArea(polygon.getPath());\r\n // this.landArea = Number((0.000247105*area).toFixed(2));\r\n // }\r\n \r\n // this.onRefreshCurrentLocation();\r\n }\r\n\r\n calculateLandArea(polygon){\r\n return google?.maps?.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n removeOverlay() {\r\n this.overlays.pop().setMap(null);\r\n }\r\n addMarkers(row: any, index, tableNo) { \r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: `${row?.CornerID}`,\r\n draggable: false,\r\n // draggable: true,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n onDrag(event) {\r\n let indexVal = this.getTableAndCoordinateVal(event?.overlay?.title)\r\n\r\n\r\n let index = indexVal?.coordinateValue ? indexVal?.coordinateValue : 1;\r\n let tableNo = indexVal?.polygonIndex ? indexVal?.polygonIndex : 1;\r\n\r\n // index = event?.overlay?.title ? event?.overlay?.title.split(' ')[1] : -1;\r\n if (index >= 1) {\r\n this.geoLocMulArray[tableNo - 1][index - 1].lat = event?.overlay?.position?.lat();\r\n this.geoLocMulArray[tableNo - 1][index - 1].lng = event?.overlay?.position?.lng();\r\n\r\n this.removeOverlay();\r\n this.addOverlay();\r\n }\r\n }\r\n\r\n\r\n getTableAndCoordinateVal(val) {\r\n let polygonIndex = null; // Default to null if not present\r\n let coordinateValue = null; // Default to null if not present\r\n\r\n // Match both patterns\r\n const polygonMatch = val.match(/Polygon\\s+(\\d+)/);\r\n const coordinateMatch = val.match(/Coordinate\\s+(\\d+)/);\r\n\r\n // Extract polygon index if it exists\r\n if (polygonMatch) {\r\n polygonIndex = parseInt(polygonMatch[1], 10);\r\n }\r\n\r\n // Extract coordinate value if it exists\r\n if (coordinateMatch) {\r\n coordinateValue = parseInt(coordinateMatch[1], 10);\r\n }\r\n\r\n return { polygonIndex, coordinateValue };\r\n }\r\n\r\n showBasicDialog() {\r\n this.displayBasic = true;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n exifr\r\n .parse(this.webcamImage.imageAsDataUrl)\r\n .then((output) => {\r\n } );\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], this.selctedFileType + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // if (params.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `preEstimateSurvey_${new Date().getTime()}`;\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n document_type: this.selctedFileType.name,\r\n displayName: fileName,\r\n name: this.selctedFileType.name,\r\n // this.selctedFileType.code === 'farmer_photo'\r\n // ? 'Farmer Photo'\r\n // : this.selctedFileType.code === 'water_source'\r\n // ? 'Water Source'\r\n // : this.selctedFileType.code === 'land_photo'\r\n // ? 'Land Photo'\r\n // : this.selctedFileType.code === 'others'\r\n // ? 'Others'\r\n // : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n // let documentListObject = {\r\n // // 'appId': this.cryptoJsService.DecryptData(params.appId),\r\n // 'documentList': this.documentList\r\n // }\r\n // sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n }\r\n this.selctedFileType = '';\r\n });\r\n // });\r\n }\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n onCaptureImage() {\r\n this.displayCameraComponent = true;\r\n }\r\n onCloseImageDialog() {\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n }\r\n getImagesArray() {\r\n if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'ERROR_MESSAGE',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n return;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n submitSurveyDetails() {\r\n let existImage = true;\r\n this.isSubmitted = true;\r\n if (this.submitEstimateForm.valid) {\r\n let geoCoordinateError = false;\r\n this.geoLocMulArray.forEach((array, index) => {\r\n if(array.length < 4){\r\n this.coordinateError = `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`,\r\n });\r\n geoCoordinateError = true;\r\n }\r\n })\r\n if (geoCoordinateError) {\r\n // this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES';\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Please provide atleast 4 GPS Coordinates',\r\n // });\r\n return;\r\n } else if((Math.abs(this.landArea - this.surveyArea) > 0.1*this.landArea)){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Difference between Calculated Area (${this.landArea}) and Survey Area (${this.surveyArea}) is more. Please recapture the coordinates.`,\r\n });\r\n return;\r\n } else if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n existImage = false;\r\n }\r\n }\r\n });\r\n let attachemntArray = [];\r\n if (!existImage) {\r\n return;\r\n }\r\n for (let index = 0; index < this.documentList.length; index++) {\r\n const obj = {\r\n attachmentsDoc: this.documentList[index].attachment,\r\n documentType: this.documentList[index].document_type,\r\n };\r\n attachemntArray.push(obj);\r\n }\r\n // for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n // const gpsObj = {\r\n // CornerID: index + 1,\r\n // latitude: this.geolocationsarray[index].lat,\r\n // longitude: this.geolocationsarray[index].lng,\r\n // };\r\n // geoCoordinates.push(gpsObj);\r\n // }\r\n \r\n let geoCoordinates: any []= [];\r\n this.geoLocMulArray.forEach((array) => {\r\n let val = array.map((val) => ({\r\n CornerID: val.CornerID,\r\n latitude: val.lat,\r\n longitude: val.lng\r\n }))\r\n geoCoordinates.push(val);\r\n })\r\n\r\n const dataObj = [\r\n {\r\n appID: this.programmeAppId,\r\n progID: this.ProgramID,\r\n FarmerName: this.programmeFarmerName,\r\n soilType: this.submitEstimateForm.value.soilType,\r\n cropTypeID: this.submitEstimateForm.value.cropType,\r\n cropID: this.submitEstimateForm.value.cropId,\r\n waterSourceId: this.submitEstimateForm.value.waterSource,\r\n waterPressure: this.submitEstimateForm.value.waterPressure,\r\n waterQuality: this.submitEstimateForm.value.waterQuality,\r\n PH: this.submitEstimateForm.value.ph,\r\n EC: this.submitEstimateForm.value.ec,\r\n waterQuantity: this.submitEstimateForm.value.waterReq,\r\n plantSpacing: parseFloat(this.submitEstimateForm.value.spacing.split(\"X\")[1]),\r\n rowSpacing: parseFloat(this.submitEstimateForm.value.spacing.split(\"X\")[0]),\r\n vendorCode: this.vendorCode,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n insertServeyAttachments: attachemntArray,\r\n insertSurveyGPSCoordiantes: geoCoordinates,\r\n },\r\n ];\r\n\r\n let reqBody = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(dataObj))\r\n }\r\n\r\n this.loader.start();\r\n this.flService\r\n .getPreEstimateSurvey(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey Action (Current)',\r\n this.programmeAppId,\r\n new Date(),\r\n resp,\r\n dataObj[0]\r\n );\r\n if(resp.startsWith(\"S:Successfully\")){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n this.isSubmitted = true;\r\n this.onCloseDialog();\r\n this.loadData();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'info Message',\r\n detail: resp,\r\n });\r\n return;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey Action (Err: Current)',\r\n this.programmeAppId,\r\n new Date(),\r\n err,\r\n dataObj[0]\r\n );\r\n this.isSubmitted = true;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please fill all the mandatory feilds',\r\n });\r\n }\r\n }\r\n removeImg(i) {\r\n this.documentList.splice(i, 1);\r\n }\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.Pending_CompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.Pending_CompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.Pending_CompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.Pending_CompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getRowPlantSpacing(progId){\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getProDataSpacing(progId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.rowPlantSpacingData = data; \r\n }else{\r\n this.rowPlantSpacingData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found for row and plant spacing',\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.rowPlantSpacingData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n addEstimation(data) {\r\n this.getRowPlantSpacing(data?.ProgramID);\r\n this.getCurrentLocation();\r\n this.addOverlay();\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([])\r\n this.refreshLocation = setInterval(() =>\r\n this.onRefreshCurrentLocation(), 4000);\r\n\r\n // setTimeout(() => {\r\n // if(!this.isGPSError){\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 5000)\r\n // }\r\n // }, 7000)\r\n\r\n \r\n\r\n this.displayPreEstDialog = true;\r\n this.geolocationsarray = [];\r\n this.programmeAppId = data.appID;\r\n this.programmeFarmerName = data.FarmerName;\r\n this.programName = data.ProgrammeName;\r\n this.ProgramID = data.ProgramID;\r\n this.vendorCode = data.Vendor_Code;\r\n this.isSubmitted = false;\r\n this.surveyArea = data.Total_Area;\r\n // this.applyConditionalValidation(data);\r\n }\r\n updateEstimation(data) {\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 6000)\r\n this.getRowPlantSpacing(data?.ProgramID);\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([])\r\n this.surveyArea = data.Total_Area\r\n \r\n this.isSubmitted = false;\r\n // this.applyConditionalValidation(data);\r\n this.displayPreEstDialog = true;\r\n this.programmeFarmerName = data.FarmerName;\r\n let reqBody = {\r\n AppId: data.appID,\r\n ProgramId: data.ProgramID,\r\n };\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .GetEditPreEstimationSurvey(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (typeof data.WaterPressure == 'number') {\r\n data.WaterPressure = JSON.stringify(data.WaterPressure);\r\n }\r\n if (typeof data.WaterQuantity == 'number') {\r\n data.WaterQuantity = JSON.stringify(data.WaterQuantity);\r\n }\r\n // this.loader.close();\r\n this.loading = false;\r\n this.programmeAppId = data.AppID;\r\n this.programName = data.ProgramName;\r\n this.ProgramID = data.ProgId;\r\n this.vendorCode = data.VendorCode;\r\n this.f.soilType.setValue(data.SoilType);\r\n this.f.cropType.setValue(data.CropTypeID);\r\n this.f.cropId.setValue(data.CropId);\r\n this.f.waterSource.setValue(data.WaterSourceId);\r\n this.f.waterPressure.setValue(data.WaterPressure);\r\n this.f.waterQuality.setValue(data.WaterQuality);\r\n this.f.ph.setValue(data?.PH);\r\n this.f.ec.setValue(data?.EC);\r\n this.f.waterReq.setValue(data.WaterQuantity);\r\n // this.f.plantSpacing.setValue(data.PlantSpacing);\r\n // this.f.rowSpacing.setValue(data.RowSpacing);\r\n this.f.spacing.setValue(`${data.RowSpacing}X${data.PlantSpacing}`)\r\n for (let index = 0; index < data.listGPSCoordinates.length; index++) {\r\n let geoData = {\r\n CornerID: data.listGPSCoordinates[index].CornerID,\r\n lat: data.listGPSCoordinates[index].Latitude,\r\n lng: data.listGPSCoordinates[index].Longitude,\r\n };\r\n this.geolocationsarray.push(geoData);\r\n }\r\n if (this.geolocationsarray.length == 0) {\r\n this.mapEnable = false;\r\n } else {\r\n if (this.geolocationsarray && this.geolocationsarray.length > 0) {\r\n this.options.center = this.geolocationsarray[0];\r\n }\r\n this.mapEnable = true;\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index, 'tableNO');\r\n });\r\n this.addOverlay();\r\n }\r\n\r\n for (let index = 0; index < data.listImagePath.length; index++) {\r\n let imagesData = {\r\n attachment: data.listImagePath[index].ImagePath,\r\n attachmentRawUrl: data.listImagePath[index].ImagePath,\r\n document_type: data.listImagePath[index].DocumentType,\r\n displayName: data.listImagePath[index].DocumentType,\r\n name: data.listImagePath[index].DocumentType,\r\n };\r\n this.documentList.push(imagesData);\r\n }\r\n },\r\n });\r\n }\r\n\r\n applyConditionalValidation(data){\r\n // if(data?.ApplicantType == '7500' && data?.ProgrammeName == 'Drip Irrigation'){\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.min(0.3)]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.min(0.6)]);\r\n // }\r\n // else{\r\n // this.submitEstimateForm.controls['rowSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['plantSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.required]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.required]);\r\n // }\r\n // this.submitEstimateForm.controls['rowSpacing'].updateValueAndValidity();\r\n // this.submitEstimateForm.controls['plantSpacing'].updateValueAndValidity();\r\n }\r\n\r\n selectViewApplication(application, statusCode) {\r\n if (application.appID) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'print',\r\n this.cryptoJsService.Encrypt(application.appID),\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'date of Submit':d.registerationDate_filter,\r\n 'date of Resubmit':d.registerationReassignDate_filter,\r\n 'Applicant Type': d.ApplicantType,\r\n 'App type': d.FarmerName,\r\n \"Village\": d.village,\r\n 'block': d.block,\r\n 'District': d.district,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Program Name': d.ProgrammeName,\r\n 'Land Detail': d.LandDetail,\r\n 'Total Area': d.Total_Area,\r\n 'current status': d.Status_Ar,\r\n 'Remarks': d.DeptRemarks,\r\n 'Act on PrevAction': d.ActOnPrevAction,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'registerationDate_filter', header: 'date of Submit' },\r\n { field: 'registerationReassignDate_filter', header: 'date of Resubmit' },\r\n { field: 'ApplicantType', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'village' },\r\n { field: 'block', header: 'block' },\r\n { field: 'district', header: 'district' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Program Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'Status_Ar', header: 'current status' },\r\n { field: 'DeptRemarks', header: 'Remarks' },\r\n { field: 'ActOnPrevAction', header: 'Act on PrevAction' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n }\r\n}\r\n\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}{{item.appID}}\r\n
{{'DATE_OF_SUBMIT'| translate}}\r\n {{item.AssignedDate | date:'medium'}}\r\n
{{'DATE_OF_RESUBMIT'| translate}}\r\n {{item.LastSubmittedDate | date:'medium'}}\r\n
{{'APPLICANT_TYPE'| translate}}\r\n {{item.ApplicantType}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.FarmerName}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.village}}\r\n
{{'BLOCK'| translate}}\r\n {{item.block}}\r\n
{{'DISTRICT'| translate}}\r\n {{item.district}}\r\n
{{'AGE_OF_APPLICATION'| translate}}\r\n {{item.AgeOfApplication}}\r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.ProgrammeName}}\r\n
{{'LAND_DETAIL'| translate}}\r\n {{item.LandDetail}}\r\n
{{'TOTAL_AREA'| translate}}\r\n {{item.Total_Area}}\r\n
{{'APPLICATION_STATUS'| translate}}\r\n {{item.Status_Ar}}\r\n
{{'DEPT_REMARKS'| translate}}\r\n {{item.DeptRemarks}}\r\n
{{'ACT_ON_PREVIOUS_ACTION'| translate}}\r\n {{item.ActOnPrevAction}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.FinYear}}\r\n
{{'VIEW_APPLICATION' | translate}}
{{'ESTIMATION_ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'SOIL_TYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_IS_REQ'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'WATER_SOURCE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_PRESSURE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_QUALITY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'PH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'EC_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_REQ_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{'SPACING_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}
\r\n
0 || overlays.length>0\" class=\"dashboardTable\">\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n {{'ACTIONS'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n

{{coordinateError | translate}}

\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
0\" class=\"field md:col-4 col-12\">\r\n \r\n
\r\n
\r\n
0 && (landArea - surveyArea > 0.1*landArea || surveyArea - landArea > 0.1*landArea)\" class=\"p-fluid p-formgrid justify-content-center areaError mb-4\" style=\"display: flex; flex-wrap:wrap\">\r\n

{{ \"CALCULATED_AREA_IS_MUCH_GREATER_THAN_SURVEYED_AREA._PLEASE_RECAPTURE_THE_COORDINATES\" | translate }}

\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
{{'CAPTURE_IMAGE'| translate}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{item.name}}\r\n

\r\n

\r\n {{item.name}}\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{imageError}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">\"{{'MESSAGES'| translate}}\":

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n
\r\n\r\n","\r\nimport { Component, OnInit, ViewChild, OnDestroy, Output, EventEmitter, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Table } from 'primeng/table';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport { WebcamImage, WebcamInitError, WebcamUtil } from 'ngx-webcam';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { crop_Datas } from '../../../../models/farmer-land.model';\r\nimport { FarmerLandDetailService } from 'src/app/services/farmer-land-detail.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport exifr from 'exifr';\r\nimport piexifjs from 'piexifjs';\r\nimport saveAs from 'file-saver';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-pre-estimate-survey-pending',\r\n templateUrl: './pre-estimate-survey-pending.component.html',\r\n styleUrls: ['./pre-estimate-survey-pending.component.scss']\r\n})\r\nexport class PreEstimateSurveyPendingComponent implements OnInit {\r\n @ViewChild('farmerPreEstimateSurveyTable', { static: true })\r\n public farmerPreEstimateSurveyTable: Table;\r\n \r\n public farmerPreEstimateSurveyData: any = [];\r\n mobileFarmerPreEstimateSurveyData: any = [];\r\n displayPreEstDialog: boolean = false;\r\n isSubmitted: boolean = false;\r\n submitEstimateForm: FormGroup;\r\n latitude: any;\r\n longitude: any;\r\n geolocationsarray: any = [];\r\n overlays: any = [];\r\n mapEnable = false;\r\n public vendorRegId: any;\r\n selectedWatersourceType: string;\r\n componentList: any = [];\r\n public userId: any;\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n options = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n // draggable: false,\r\n // icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'\r\n };\r\n\r\n programmeAppId: any;\r\n programmeFarmerName: any;\r\n programName: any;\r\n public showWebcam = true;\r\n public allowCameraSwitch = true;\r\n public multipleWebcamsAvailable = false;\r\n public deviceId!: string;\r\n public webcamImage!: WebcamImage;\r\n public videoOptions: MediaTrackConstraints = {};\r\n public imageCaptured = false;\r\n public errors: WebcamInitError[] = [];\r\n private trigger: Subject = new Subject();\r\n @Output()\r\n public pictureTaken = new EventEmitter();\r\n displayBasic: boolean = false;\r\n displayCameraComponent: any = false;\r\n selctedFileType: any;\r\n documentList: any = [];\r\n insertPondAttachments: any = [];\r\n selectedCropType: any;\r\n selectedCorpModel: crop_Datas;\r\n selectedCorpModelList: any;\r\n selectedNodes1: any[] = [];\r\n cropTypeList: any[];\r\n allSchemeMaster: any[] = [];\r\n waterSourceList: any[];\r\n private nextWebcam: Subject = new Subject<\r\n boolean | string\r\n >();\r\n waterSourceNames: any;\r\n ProgramID: any;\r\n cropBasedNames: any;\r\n error: string;\r\n vendorCode: any;\r\n allAttachementsList: any = [];\r\n attachementDisplayName: any = [];\r\n imageError: string;\r\n uploadOptions: any[];\r\n autoId: any;\r\n appId: any;\r\n editBilledData: boolean = false;\r\n coordinateError: any;\r\n public multiSortMeta: any;\r\n ipAddress: any = '000.000.000';\r\n landArea: number = 0;\r\n surveyArea: number = null;\r\n\r\n public refreshLocation: any;\r\n appVerificationItems:MenuItem[];\r\n appVerificationModel:any[]\r\n\r\n public isGPSError: boolean = false;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n public rowPlantSpacingData : any = [];\r\n\r\n public geoLocMulArray: any[] = [];\r\n\r\n constructor(\r\n private loader: AppLoaderService,\r\n private vendorService: VendorDashboardService,\r\n private activityRecordService: ActivityRecordService,\r\n private messageService: MessageService,\r\n private flService: FarmerLandDetailService,\r\n private route: ActivatedRoute,\r\n private fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private cryptoJsService: CryptoJsService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private ipService: IpAddressService,\r\n public cd: ChangeDetectorRef,\r\n public router: Router,\r\n private service: BaseService,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n (this.waterSourceList = [\r\n { id: 1, waterSource: 'Canal' },\r\n { id: 2, waterSource: 'Tubewell' },\r\n { id: 3, waterSource: 'STP' },\r\n { id: 4, waterSource: 'Over Flow Pond' },\r\n ]),\r\n (this.uploadOptions = [\r\n { name: 'Farmer Photo', code: 'farmer_photo' },\r\n { name: 'Water Source', code: 'water_source' },\r\n { name: 'Land Photo', code: 'land_photo' },\r\n { name: 'Others', code: 'others' },\r\n ]);\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.onCapture();\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.appVerificationModel, 'Pre_estimate_survey_file');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(\r\n this.appVerificationModel,\r\n 'Pre_estimate_survey_file'\r\n );\r\n },\r\n },\r\n ];\r\n \r\n \r\n this.submitEstimateForm = this.fb.group({\r\n soilType: ['', Validators.required],\r\n cropType: ['', Validators.required],\r\n cropId: ['', Validators.required],\r\n waterSource: ['', Validators.required],\r\n waterPressure: ['', Validators.required],\r\n waterQuality: ['', Validators.required],\r\n ph: ['', Validators.required],\r\n ec: ['', Validators.required],\r\n waterReq: ['', Validators.required],\r\n // plantSpacing: ['', Validators.required],\r\n // rowSpacing: ['', Validators.required],\r\n spacing: ['', Validators.required]\r\n });\r\n // this.farmerPreEstimateSurveyTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.multiSortMeta = [];\r\n this.multiSortMeta.push({ field: 'AssignedDate', order: 1 });\r\n WebcamUtil.getAvailableVideoInputs().then(\r\n (mediaDevices: MediaDeviceInfo[]) => {\r\n this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;\r\n }\r\n );\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.farmerPreEstimateSurveyTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n\r\n if (this.refreshLocation) {\r\n clearTimeout(this.refreshLocation);\r\n }\r\n }\r\n\r\n onRefreshCurrentLocation(){\r\n this.overlays.forEach((val, index) => {\r\n if(val?.title == \"Current Location\"){\r\n this.overlays.splice(index, 1); \r\n }\r\n })\r\n this.getCurrentLocation();\r\n }\r\n\r\n getCurrentLocation() {\r\n let overlay = this.overlays;\r\n let mapEnable = this.mapEnable;\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 10000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n const crd = pos.coords;\r\n const obj = {\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.options.center = obj;\r\n // const image = 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png';\r\n \r\n const currentLocationMarker = new google.maps.Marker({\r\n position: { lat: obj?.lat, lng: obj?.lng },\r\n title: 'Current Location',\r\n icon: '../../../assets/map/location-icon-5.png',\r\n });\r\n\r\n overlay.push(currentLocationMarker)\r\n \r\n instant.mapEnable = true;\r\n }\r\n\r\n function error(err) {\r\n instant.isGPSError = true;\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access.'\r\n } else{\r\n detailsMsg = 'Please Refresh the Current Location.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg,\r\n });\r\n }\r\n\r\n // this.mapEnable = true;\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n // this.addOverlay();\r\n }\r\n }\r\n\r\n get f() {\r\n return this.submitEstimateForm.controls;\r\n }\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n // const token: any = this.tokenService.retrieve();\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .GetPreEstimationSurvey(JSON.parse(payload)?.sub, \"Pending\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.getCorpType();\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n data.forEach((e) => {\r\n if (e.AssignedDate) {\r\n e.AssignedDate = new Date(e.AssignedDate);\r\n e.registerationDate_filter = e.AssignedDate.toString().substring(\r\n 4,\r\n 24\r\n );\r\n }\r\n if (e.LastSubmittedDate) {\r\n e.LastSubmittedDate = new Date(e.LastSubmittedDate);\r\n e.registerationReassignDate_filter =\r\n e.LastSubmittedDate.toString().substring(4, 24);\r\n }\r\n });\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.farmerPreEstimateSurveyData = data;\r\n this.appVerificationModel= this.farmerPreEstimateSurveyData \r\n // this.mobileFarmerPreEstimateSurveyData = data;\r\n this.mobileFarmerPreEstimateSurveyData = this.farmerPreEstimateSurveyData.filter(val => val.FinYear==this.selectedYear);\r\n\r\n }\r\n else{\r\n this.farmerPreEstimateSurveyData = [];\r\n this.appVerificationModel= [] \r\n this.mobileFarmerPreEstimateSurveyData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n \r\n }\r\n getCorpType() {\r\n this.flService\r\n .GetCorpType()\r\n .pipe(first())\r\n .subscribe({\r\n next: (files) => {\r\n this.cropTypeList = files;\r\n },\r\n error: () => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Corp Type Details not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n getCropTypeName(event) {\r\n const data = this.cropTypeList.find((element) => element.data == event);\r\n if (data) {\r\n this.cropBasedNames = data.children;\r\n } else {\r\n this.cropBasedNames = [];\r\n }\r\n }\r\n selectPreSurveyData(event) {}\r\n onCloseDialog() {\r\n this.isGPSError = false;\r\n clearInterval(this.refreshLocation);\r\n clearTimeout(this.refreshLocation);\r\n this.displayPreEstDialog = false;\r\n this.mapEnable = false;\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.overlays = this.overlays.filter(val => {\r\n return !val?.title?.includes('Coordinate')\r\n });\r\n this.documentList = [];\r\n this.isSubmitted = false;\r\n this.submitEstimateForm.reset();\r\n this.landArea = 0;\r\n this.surveyArea = null;\r\n this.addOverlay();\r\n }\r\n\r\n onDeleteCoordinate(i, tableNo) {\r\n this.geoLocMulArray[tableNo].splice(i, 1);\r\n for (let index = 0; index < this.geoLocMulArray[tableNo].length; index++) {\r\n this.geoLocMulArray[tableNo][index].CornerID = `Polygon ${tableNo+1} : Coordinate ${index + 1}` ;\r\n } \r\n\r\n if(this.geoLocMulArray[tableNo].length > 0){\r\n this.onSave(tableNo);\r\n }else{\r\n this.onSave(0);\r\n }\r\n // }\r\n }\r\n\r\n onDeleteNewPolygon(i){\r\n if (i >= 0 && i < this.geoLocMulArray.length) {\r\n this.geoLocMulArray.splice(i, 1);\r\n \r\n // Renaming the remaining polygon corner IDs\r\n for (let j = 0; j < this.geoLocMulArray.length; j++) {\r\n for (let k = 0; k < this.geoLocMulArray[j].length; k++) {\r\n this.geoLocMulArray[j][k].CornerID = `Polygon ${j + 1} : Coordinate ${k + 1}`;\r\n }\r\n }\r\n\r\n this.onSave(0);\r\n\r\n } else {\r\n console.error(\"Index out of bounds\");\r\n }\r\n }\r\n \r\n onStartNewPolygon(index){\r\n this.geoLocMulArray.push([]);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onCapture(index) {\r\n this.cdr.detectChanges();\r\n let instant = this;\r\n this.coordinateError = '';\r\n if ('geolocation' in navigator) {\r\n const options = {\r\n enableHighAccuracy: true,\r\n timeout: 5000,\r\n maximumAge: 0,\r\n };\r\n\r\n function success(pos) {\r\n let isInvalid = instant.geoLocMulArray[index].find((data) => {\r\n if (\r\n data.lat == pos.coords.latitude &&\r\n data.lng == pos.coords.longitude\r\n ) {\r\n return data;\r\n }\r\n });\r\n\r\n if (isInvalid) {\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail:\r\n 'Please move to a different location to get new coordinates.',\r\n });\r\n return;\r\n }\r\n\r\n const crd = pos.coords;\r\n const obj = {\r\n // CornerID: instant.geoLocMulArray[index].length + 1,\r\n CornerID: `Polygon ${index+1} : Coordinate ${instant.geoLocMulArray[index].length + 1}`,\r\n lat: pos.coords.latitude,\r\n lng: pos.coords.longitude,\r\n };\r\n\r\n instant.geoLocMulArray[index].push(obj);\r\n \r\n // Check for self-intersections before allowing the polygon creation\r\n if (instant.isSelfIntersecting(instant.geoLocMulArray[index])) {\r\n instant.geoLocMulArray[index].pop();\r\n alert('Polygon is invalid due to intersecting edges. Please redraw.');\r\n return;\r\n }else {\r\n instant.onSave(index);\r\n }\r\n }\r\n\r\n function error(err) {\r\n let detailsMsg = '';\r\n if(err?.message== 'User denied Geolocation'){\r\n detailsMsg = 'Please enable Geolocation access'\r\n } else{\r\n detailsMsg = 'Please capture again.'\r\n }\r\n instant.messageService.add({\r\n severity: 'error',\r\n summary: err.message,\r\n detail: detailsMsg\r\n ,\r\n });\r\n }\r\n\r\n navigator.geolocation.getCurrentPosition(success, error, options);\r\n }\r\n }\r\n\r\n isSelfIntersecting(coordsArray) {\r\n for (let i = 0; i < coordsArray.length - 1; i++) {\r\n for (let j = i + 2; j < coordsArray.length; j++) {\r\n // Prevent checking consecutive edges or the last edge with the first one\r\n if (i === 0 && j === coordsArray.length - 1) continue;\r\n if (this.doLinesIntersect(coordsArray[i], coordsArray[i + 1], coordsArray[j], coordsArray[(j + 1) % coordsArray.length])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n doLinesIntersect(p1, q1, p2, q2) {\r\n // Helper function to calculate orientation of the points\r\n function orientation(p, q, r) {\r\n let val = (q.lat - p.lat) * (r.lng - q.lng) - (q.lng - p.lng) * (r.lat - q.lat);\r\n if (val === 0) return 0; // collinear\r\n return (val > 0) ? 1 : 2; // clock or counterclockwise\r\n }\r\n\r\n // Check the four orientations needed for the general and special cases\r\n let o1 = orientation(p1, q1, p2);\r\n let o2 = orientation(p1, q1, q2);\r\n let o3 = orientation(p2, q2, p1);\r\n let o4 = orientation(p2, q2, q1);\r\n\r\n // General case\r\n if (o1 !== o2 && o3 !== o4) return true;\r\n\r\n // Special cases\r\n // p1, q1, p2 are collinear and p2 lies on segment p1q1\r\n if (o1 === 0 && this.onSegment(p1, p2, q1)) return true;\r\n\r\n // p1, q1, q2 are collinear and q2 lies on segment p1q1\r\n if (o2 === 0 && this.onSegment(p1, q2, q1)) return true;\r\n\r\n // p2, q2, p1 are collinear and p1 lies on segment p2q2\r\n if (o3 === 0 && this.onSegment(p2, p1, q2)) return true;\r\n\r\n // p2, q2, q1 are collinear and q1 lies on segment p2q2\r\n if (o4 === 0 && this.onSegment(p2, q1, q2)) return true;\r\n\r\n return false;\r\n }\r\n\r\n onSegment(p, q, r) {\r\n return q.lng <= Math.max(p.lng, r.lng) && q.lng >= Math.min(p.lng, r.lng) &&\r\n q.lat <= Math.max(p.lat, r.lat) && q.lat >= Math.min(p.lat, r.lat);\r\n }\r\n\r\n onSave(tableNo) {\r\n this.mapEnable = false;\r\n this.mapEnable = true;\r\n this.options.center = this.geoLocMulArray[tableNo][0];\r\n this.overlays = [];\r\n this.geoLocMulArray.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n this.addMarkers(row, index, tableIndex);\r\n });\r\n })\r\n \r\n this.addOverlay();\r\n }\r\n\r\n onNext() {}\r\n mobileSearch(value) {\r\n this.mobileFarmerPreEstimateSurveyData =\r\n this.farmerPreEstimateSurveyData.filter((data: any) => {\r\n if (\r\n data.appID.toLowerCase().includes(value.toLowerCase()) ||\r\n data.FarmerName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.ProgrammeName.toLowerCase().includes(value.toLowerCase()) ||\r\n data.district.toLowerCase().includes(value.toLowerCase()) ||\r\n data.village.toLowerCase().includes(value.toLowerCase()) ||\r\n data.block.toLowerCase().includes(value.toLowerCase()) ||\r\n data.Status_Ar.toLowerCase().includes(value.toLowerCase())\r\n ) {\r\n return data;\r\n }\r\n });\r\n }\r\n addOverlay() {\r\n this.overlays.forEach((val, index) => {\r\n if(val?.fillColor){\r\n this.overlays.splice(index, 1);\r\n }\r\n })\r\n\r\n this.geoLocMulArray.forEach(arr => {\r\n this.overlays.push(\r\n new google.maps.Polygon({\r\n paths: arr,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n\r\n let area = 0;\r\n this.geoLocMulArray.forEach(array => {\r\n if(array.length >= 3 ){\r\n let polygon = new google.maps.Polygon({paths: array});\r\n area += this.calculateLandArea(polygon.getPath());\r\n }\r\n });\r\n this.landArea = Number((0.000247105*area).toFixed(2));\r\n\r\n // if(this.geolocationsarray.length >=3){\r\n // let polygon = new google.maps.Polygon({paths: this.geolocationsarray})\r\n // let area = this.calculateLandArea(polygon.getPath());\r\n // this.landArea = Number((0.000247105*area).toFixed(2));\r\n // }\r\n \r\n // this.onRefreshCurrentLocation();\r\n }\r\n\r\n calculateLandArea(polygon){\r\n return google?.maps?.geometry?.spherical.computeArea(polygon)\r\n }\r\n\r\n removeOverlay() {\r\n this.overlays.pop().setMap(null);\r\n }\r\n addMarkers(row: any, index, tableNo) { \r\n this.overlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.lat, lng: row?.lng },\r\n title: `${row?.CornerID}`,\r\n // draggable: false,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n }\r\n\r\n onDrag(event) {\r\n let indexVal = this.getTableAndCoordinateVal(event?.overlay?.title)\r\n\r\n\r\n let index = indexVal?.coordinateValue ? indexVal?.coordinateValue : 1;\r\n let tableNo = indexVal?.polygonIndex ? indexVal?.polygonIndex : 1;\r\n\r\n // index = event?.overlay?.title ? event?.overlay?.title.split(' ')[1] : -1;\r\n if (index >= 1) {\r\n this.geoLocMulArray[tableNo - 1][index - 1].lat = event?.overlay?.position?.lat();\r\n this.geoLocMulArray[tableNo - 1][index - 1].lng = event?.overlay?.position?.lng();\r\n\r\n this.removeOverlay();\r\n this.addOverlay();\r\n }\r\n }\r\n\r\n\r\n getTableAndCoordinateVal(val) {\r\n let polygonIndex = null; // Default to null if not present\r\n let coordinateValue = null; // Default to null if not present\r\n\r\n // Match both patterns\r\n const polygonMatch = val.match(/Polygon\\s+(\\d+)/);\r\n const coordinateMatch = val.match(/Coordinate\\s+(\\d+)/);\r\n\r\n // Extract polygon index if it exists\r\n if (polygonMatch) {\r\n polygonIndex = parseInt(polygonMatch[1], 10);\r\n }\r\n\r\n // Extract coordinate value if it exists\r\n if (coordinateMatch) {\r\n coordinateValue = parseInt(coordinateMatch[1], 10);\r\n }\r\n\r\n return { polygonIndex, coordinateValue };\r\n }\r\n\r\n showBasicDialog() {\r\n this.displayBasic = true;\r\n }\r\n\r\n public triggerSnapshot(): void {\r\n this.trigger.next();\r\n }\r\n\r\n public toggleWebcam(): void {\r\n this.showWebcam = !this.showWebcam;\r\n }\r\n\r\n public handleInitError(error: WebcamInitError): void {\r\n this.errors.push(error);\r\n }\r\n\r\n public showNextWebcam(directionOrDeviceId: boolean | string): void {\r\n this.nextWebcam.next(directionOrDeviceId);\r\n }\r\n\r\n public handleImage(webcamImage: WebcamImage): void {\r\n this.webcamImage = webcamImage;\r\n this.imageCaptured = true;\r\n this.pictureTaken.emit(webcamImage);\r\n }\r\n\r\n public cameraWasSwitched(deviceId: string): void {\r\n this.deviceId = deviceId;\r\n }\r\n\r\n public get triggerObservable(): Observable {\r\n return this.trigger.asObservable();\r\n }\r\n\r\n public get nextWebcamObservable(): Observable {\r\n return this.nextWebcam.asObservable();\r\n }\r\n\r\n public uploadPicture() {\r\n const arr = this.webcamImage.imageAsDataUrl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n exifr\r\n .parse(this.webcamImage.imageAsDataUrl)\r\n .then((output) => {\r\n } );\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n const file: File = new File([u8arr], this.selctedFileType + '.jpeg', {\r\n type: mime,\r\n });\r\n let data = new FormData();\r\n data.append('file', file);\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n let phNo = JSON.parse(payload)?.sub;\r\n // this.route.queryParams\r\n // .subscribe(params => {\r\n // if (params.autoId) {\r\n this._personalDetalSer\r\n .uploadFile(data, phNo, this.selctedFileType.code)\r\n .subscribe((resp: any) => {\r\n if (resp.statusCode == 200) {\r\n const fileName = `preEstimateSurvey_${new Date().getTime()}`;\r\n this.documentList.push({\r\n attachment: resp.data,\r\n attachmentRawUrl: this.webcamImage.imageAsDataUrl,\r\n document_type: this.selctedFileType.name,\r\n displayName: fileName,\r\n name: this.selctedFileType.name,\r\n // this.selctedFileType.code === 'farmer_photo'\r\n // ? 'Farmer Photo'\r\n // : this.selctedFileType.code === 'water_source'\r\n // ? 'Water Source'\r\n // : this.selctedFileType.code === 'land_photo'\r\n // ? 'Land Photo'\r\n // : this.selctedFileType.code === 'others'\r\n // ? 'Others'\r\n // : 'Component Photo',\r\n isUploaded: false,\r\n });\r\n\r\n // let documentListObject = {\r\n // // 'appId': this.cryptoJsService.DecryptData(params.appId),\r\n // 'documentList': this.documentList\r\n // }\r\n // sessionStorage.setItem('documentList', JSON.stringify(documentListObject));\r\n this.selctedFileType = '';\r\n this.retake();\r\n this.displayCameraComponent = false;\r\n } else {\r\n }\r\n this.selctedFileType = '';\r\n });\r\n // });\r\n }\r\n retake() {\r\n this.imageCaptured = false;\r\n }\r\n onCaptureImage() {\r\n this.displayCameraComponent = true;\r\n }\r\n onCloseImageDialog() {\r\n this.displayCameraComponent = false;\r\n this.imageCaptured = false;\r\n }\r\n getImagesArray() {\r\n if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'ERROR_MESSAGE',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n return;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n submitSurveyDetails() {\r\n let existImage = true;\r\n this.isSubmitted = true;\r\n if (this.submitEstimateForm.valid) {\r\n let geoCoordinateError = false;\r\n this.geoLocMulArray.forEach((array, index) => {\r\n if(array.length < 4){\r\n this.coordinateError = `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Please provide atleast 4 GPS Coordinates for polygon ${index+1}`,\r\n });\r\n geoCoordinateError = true;\r\n }\r\n })\r\n if (geoCoordinateError) {\r\n // this.coordinateError = 'PLEASE_PROVIDE_ATLEAST_4_GPS_COORDINATES';\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Please provide atleast 4 GPS Coordinates',\r\n // });\r\n return;\r\n } else if((Math.abs(this.landArea - this.surveyArea) > 0.1*this.landArea)){\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: `Difference between Calculated Area (${this.landArea}) and Survey Area (${this.surveyArea}) is more. Please recapture the coordinates.`,\r\n });\r\n return;\r\n } else if (this.documentList.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Images are Mandatory',\r\n });\r\n return;\r\n } else {\r\n this.uploadOptions.forEach((option) => {\r\n if (option.code != 'others') {\r\n let filtered = this.documentList.filter((doc) => {\r\n return doc.document_type == option.name;\r\n });\r\n if (filtered?.length == 0) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Atleast one ' + option.name + ' is Needed!',\r\n });\r\n existImage = false;\r\n }\r\n }\r\n });\r\n let attachemntArray = [];\r\n if (!existImage) {\r\n return;\r\n }\r\n for (let index = 0; index < this.documentList.length; index++) {\r\n const obj = {\r\n attachmentsDoc: this.documentList[index].attachment,\r\n documentType: this.documentList[index].document_type,\r\n };\r\n attachemntArray.push(obj);\r\n }\r\n // for (let index = 0; index < this.geolocationsarray.length; index++) {\r\n // const gpsObj = {\r\n // CornerID: index + 1,\r\n // latitude: this.geolocationsarray[index].lat,\r\n // longitude: this.geolocationsarray[index].lng,\r\n // };\r\n // geoCoordinates.push(gpsObj);\r\n // }\r\n \r\n let geoCoordinates: any []= [];\r\n this.geoLocMulArray.forEach((array) => {\r\n let val = array.map((val) => ({\r\n CornerID: val.CornerID,\r\n latitude: val.lat,\r\n longitude: val.lng\r\n }))\r\n geoCoordinates.push(val);\r\n })\r\n\r\n const dataObj = [\r\n {\r\n appID: this.programmeAppId,\r\n progID: this.ProgramID,\r\n FarmerName: this.programmeFarmerName,\r\n soilType: this.submitEstimateForm.value.soilType,\r\n cropTypeID: this.submitEstimateForm.value.cropType,\r\n cropID: this.submitEstimateForm.value.cropId,\r\n waterSourceId: this.submitEstimateForm.value.waterSource,\r\n waterPressure: this.submitEstimateForm.value.waterPressure,\r\n waterQuality: this.submitEstimateForm.value.waterQuality,\r\n PH: this.submitEstimateForm.value.ph,\r\n EC: this.submitEstimateForm.value.ec,\r\n waterQuantity: this.submitEstimateForm.value.waterReq,\r\n plantSpacing: parseFloat(this.submitEstimateForm.value.spacing.split(\"X\")[1]),\r\n rowSpacing: parseFloat(this.submitEstimateForm.value.spacing.split(\"X\")[0]),\r\n vendorCode: this.vendorCode,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n insertServeyAttachments: attachemntArray,\r\n insertSurveyGPSCoordiantes: geoCoordinates,\r\n },\r\n ];\r\n\r\n let reqBody = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(dataObj))\r\n }\r\n\r\n this.loader.start();\r\n this.flService\r\n .getPreEstimateSurvey(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (resp) => {\r\n this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey Action (Pending)',\r\n this.programmeAppId,\r\n new Date(),\r\n resp,\r\n dataObj[0]\r\n );\r\n if(resp.startsWith(\"S:Successfully\")){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success Message',\r\n detail: resp,\r\n });\r\n this.isSubmitted = true;\r\n this.onCloseDialog();\r\n this.loadData();\r\n }else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'info Message',\r\n detail: resp,\r\n });\r\n return;\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'Pre-Estimation Survey Action (Err: Pending)',\r\n this.programmeAppId,\r\n new Date(),\r\n err,\r\n dataObj[0]\r\n );\r\n this.isSubmitted = true;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Please fill all the mandatory feilds',\r\n });\r\n }\r\n }\r\n removeImg(i) {\r\n this.documentList.splice(i, 1);\r\n }\r\n rowBackgroundColor(row) {\r\n if (row.Status_Ar == 'P') {\r\n if (row.Pending_CompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (row.Pending_CompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (row.Status_Ar == 'C' || row.Status_Ar == 'A') {\r\n if (row.Pending_CompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (row.Pending_CompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getRowPlantSpacing(progId){\r\n this.loader.start();\r\n let sub = this.vendorService\r\n .getProDataSpacing(progId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n if (data.length > 0) {\r\n this.rowPlantSpacingData = data; \r\n }else{\r\n this.rowPlantSpacingData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data not found for row and plant spacing',\r\n });\r\n }\r\n \r\n },\r\n error: (err) => {\r\n this.rowPlantSpacingData = [];\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n addEstimation(data) {\r\n this.getRowPlantSpacing(data?.ProgramID);\r\n this.getCurrentLocation();\r\n this.addOverlay();\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([])\r\n this.refreshLocation = setInterval(() =>\r\n this.onRefreshCurrentLocation(), 4000);\r\n\r\n // setTimeout(() => {\r\n // if(!this.isGPSError){\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 5000)\r\n // }\r\n // }, 7000)\r\n\r\n \r\n\r\n this.displayPreEstDialog = true;\r\n this.geolocationsarray = [];\r\n this.programmeAppId = data.appID;\r\n this.programmeFarmerName = data.FarmerName;\r\n this.programName = data.ProgrammeName;\r\n this.ProgramID = data.ProgramID;\r\n this.vendorCode = data.Vendor_Code;\r\n this.isSubmitted = false;\r\n this.surveyArea = data.Total_Area;\r\n // this.applyConditionalValidation(data);\r\n }\r\n updateEstimation(data) {\r\n // this.getCurrentLocation();\r\n // this.addOverlay();\r\n // this.refreshLocation = setInterval(() =>\r\n // this.onRefreshCurrentLocation(), 6000)\r\n this.getRowPlantSpacing(data?.ProgramID);\r\n this.geolocationsarray = [];\r\n this.geoLocMulArray = [];\r\n this.geoLocMulArray.push([])\r\n this.surveyArea = data.Total_Area\r\n \r\n this.isSubmitted = false;\r\n // this.applyConditionalValidation(data);\r\n this.displayPreEstDialog = true;\r\n this.programmeFarmerName = data.FarmerName;\r\n let reqBody = {\r\n AppId: data.appID,\r\n ProgramId: data.ProgramID,\r\n };\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .GetEditPreEstimationSurvey(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (typeof data.WaterPressure == 'number') {\r\n data.WaterPressure = JSON.stringify(data.WaterPressure);\r\n }\r\n if (typeof data.WaterQuantity == 'number') {\r\n data.WaterQuantity = JSON.stringify(data.WaterQuantity);\r\n }\r\n // this.loader.close();\r\n this.loading = false;\r\n this.programmeAppId = data.AppID;\r\n this.programName = data.ProgramName;\r\n this.ProgramID = data.ProgId;\r\n this.vendorCode = data.VendorCode;\r\n this.f.soilType.setValue(data.SoilType);\r\n this.f.cropType.setValue(data.CropTypeID);\r\n this.f.cropId.setValue(data.CropId);\r\n this.f.waterSource.setValue(data.WaterSourceId);\r\n this.f.waterPressure.setValue(data.WaterPressure);\r\n this.f.waterQuality.setValue(data.WaterQuality);\r\n this.f.ph.setValue(data?.PH);\r\n this.f.ec.setValue(data?.EC);\r\n this.f.waterReq.setValue(data.WaterQuantity);\r\n // this.f.plantSpacing.setValue(data.PlantSpacing);\r\n // this.f.rowSpacing.setValue(data.RowSpacing);\r\n this.f.spacing.setValue(`${data.RowSpacing}X${data.PlantSpacing}`)\r\n for (let index = 0; index < data.listGPSCoordinates.length; index++) {\r\n let geoData = {\r\n CornerID: data.listGPSCoordinates[index].CornerID,\r\n lat: data.listGPSCoordinates[index].Latitude,\r\n lng: data.listGPSCoordinates[index].Longitude,\r\n };\r\n this.geolocationsarray.push(geoData);\r\n }\r\n if (this.geolocationsarray.length == 0) {\r\n this.mapEnable = false;\r\n } else {\r\n if (this.geolocationsarray && this.geolocationsarray.length > 0) {\r\n this.options.center = this.geolocationsarray[0];\r\n }\r\n this.mapEnable = true;\r\n this.geolocationsarray.forEach((row, index) => {\r\n this.addMarkers(row, index, 'tableNO');\r\n });\r\n this.addOverlay();\r\n }\r\n\r\n for (let index = 0; index < data.listImagePath.length; index++) {\r\n let imagesData = {\r\n attachment: data.listImagePath[index].ImagePath,\r\n attachmentRawUrl: data.listImagePath[index].ImagePath,\r\n document_type: data.listImagePath[index].DocumentType,\r\n displayName: data.listImagePath[index].DocumentType,\r\n name: data.listImagePath[index].DocumentType,\r\n };\r\n this.documentList.push(imagesData);\r\n }\r\n },\r\n });\r\n }\r\n\r\n applyConditionalValidation(data){\r\n // if(data?.ApplicantType == '7500' && data?.ProgrammeName == 'Drip Irrigation'){\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.min(0.3)]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.min(0.6)]);\r\n // }\r\n // else{\r\n // this.submitEstimateForm.controls['rowSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['plantSpacing'].clearValidators();\r\n // this.submitEstimateForm.controls['rowSpacing'].setValidators([Validators.required]);\r\n // this.submitEstimateForm.controls['plantSpacing'].setValidators([Validators.required]);\r\n // }\r\n // this.submitEstimateForm.controls['rowSpacing'].updateValueAndValidity();\r\n // this.submitEstimateForm.controls['plantSpacing'].updateValueAndValidity();\r\n }\r\n\r\n selectViewApplication(application, statusCode) {\r\n if (application.appID) {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree([\r\n this.router.url.split('/')[1],\r\n 'print',\r\n this.cryptoJsService.Encrypt(application.appID),\r\n ])\r\n );\r\n window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP ID': d.appID,\r\n 'date of Submit':d.registerationDate_filter,\r\n 'date of Resubmit':d.registerationReassignDate_filter,\r\n 'Applicant Type': d.ApplicantType,\r\n 'App type': d.FarmerName,\r\n \"Village\": d.village,\r\n 'block': d.block,\r\n 'District': d.district,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Program Name': d.ProgrammeName,\r\n 'Land Detail': d.LandDetail,\r\n 'Total Area': d.Total_Area,\r\n 'current status': d.Status_Ar,\r\n 'Remarks': d.DeptRemarks,\r\n 'Act on PrevAction': d.ActOnPrevAction,\r\n \r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'appID' },\r\n { field: 'registerationDate_filter', header: 'date of Submit' },\r\n { field: 'registerationReassignDate_filter', header: 'date of Resubmit' },\r\n { field: 'ApplicantType', header: 'Applicant type' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'village' },\r\n { field: 'block', header: 'block' },\r\n { field: 'district', header: 'district' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Program Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'Status_Ar', header: 'current status' },\r\n { field: 'DeptRemarks', header: 'Remarks' },\r\n { field: 'ActOnPrevAction', header: 'Act on PrevAction' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData, {styles: {fontSize: 6 }});\r\n\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n refreshTable() {\r\n // this.tankDataTable.filters['Status_Ar'] = [{ value: \"P\", matchMode: \"startsWith\", operator: \"and\" }];\r\n this.loadData();\r\n }\r\n}\r\n\r\n","\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'WELOCOME_TO'| translate}}

\r\n

{{'MICADA_MOBILE_APPLICATION'| translate}}

\r\n
\r\n
\r\n

{{'EFFICIENT_AND_ELEGANT_WAY_TO_VERIFY_SITE'| translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'APP_ID'| translate}}{{item.appID}}\r\n
{{'DATE_OF_SUBMIT'| translate}}\r\n {{item.AssignedDate | date:'medium'}}\r\n
{{'DATE_OF_RESUBMIT'| translate}}\r\n {{item.LastSubmittedDate | date:'medium'}}\r\n
{{'APPLICANT_TYPE'| translate}}\r\n {{item.ApplicantType}}\r\n
{{'FARMER_NAME'| translate}}\r\n {{item.FarmerName}}\r\n
{{'VILLAGE'| translate}}\r\n {{item.village}}\r\n
{{'BLOCK'| translate}}\r\n {{item.block}}\r\n
{{'DISTRICT'| translate}}\r\n {{item.district}}\r\n
{{'AGE_OF_APPLICATION'| translate}}\r\n {{item.AgeOfApplication}}\r\n
{{'PROGRAMME_NAME'| translate}}\r\n {{item.ProgrammeName}}\r\n
{{'LAND_DETAIL'| translate}}\r\n {{item.LandDetail}}\r\n
{{'TOTAL_AREA'| translate}}\r\n {{item.Total_Area}}\r\n
{{'APPLICATION_STATUS'| translate}}\r\n {{item.Status_Ar}}\r\n
{{'DEPT_REMARKS'| translate}}\r\n {{item.DeptRemarks}}\r\n
{{'ACT_ON_PREVIOUS_ACTION'| translate}}\r\n {{item.ActOnPrevAction}}\r\n
{{'FINANCIAL_YEAR'| translate}}\r\n {{item.FinYear}}\r\n
{{'VIEW_APPLICATION' | translate}}
{{'ESTIMATION_ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'SOIL_TYPE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_TYPE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'CROP_IS_REQ'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'WATER_SOURCE_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_PRESSURE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_QUALITY_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'PH_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'EC_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'WATER_REQ_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
{{'SPACING_IS_REQUIRED'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CAPTURE_GPS_COORDINATES' | translate}}
\r\n
0 || overlays.length>0\" class=\"dashboardTable\">\r\n \r\n \r\n \r\n

Table {{ i + 1}}

\r\n
\r\n \r\n \r\n {{'CORNER_ID' | translate}}\r\n {{'LATITUDE'| translate}}\r\n {{'LONGITUDE'| translate}}\r\n {{'ACTIONS'| translate}}\r\n \r\n \r\n \r\n \r\n {{product.CornerID}}\r\n {{product.lat}}\r\n {{product.lng}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n

{{coordinateError | translate}}

\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
0\" class=\"field md:col-4 col-12\">\r\n \r\n
\r\n
\r\n
0 && (landArea - surveyArea > 0.1*landArea || surveyArea - landArea > 0.1*landArea)\" class=\"p-fluid p-formgrid justify-content-center areaError mb-4\" style=\"display: flex; flex-wrap:wrap\">\r\n

{{ \"CALCULATED_AREA_IS_MUCH_GREATER_THAN_SURVEYED_AREA._PLEASE_RECAPTURE_THE_COORDINATES\" | translate }}

\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
{{'CAPTURE_IMAGE'| translate}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{item.name}}\r\n

\r\n

\r\n {{item.name}}\r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{imageError}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

0\">\"{{'MESSAGES'| translate}}\":

\r\n
    \r\n
  • {{error | json}}
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n
\r\n\r\n","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n\r\n@Component({\r\n selector: 'app-pre-estimate-survey',\r\n templateUrl: './pre-estimate-survey.component.html',\r\n styleUrls: ['./pre-estimate-survey.component.scss'],\r\n})\r\nexport class PreEstimateSurveyComponent implements OnInit {\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/pre-estimate-survey/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/pre-estimate-survey/current` },\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/pre-estimate-survey/approved` },\r\n \r\n ];\r\n }\r\n );\r\n\r\n }\r\n}","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-upload-gst',\r\n templateUrl: './upload-gst.component.html',\r\n styleUrls: ['./upload-gst.component.scss']\r\n})\r\nexport class UploadGstComponent implements OnInit {\r\n\r\n financialYearList: any = [\r\n {\r\n name: 'Select Financial Year',\r\n },\r\n {\r\n name: '2022-23',\r\n value: '2022-23'\r\n },\r\n {\r\n name: '2023-24',\r\n value: '2023-24'\r\n },\r\n {\r\n name: '2024-25',\r\n value: '2024-25'\r\n },\r\n {\r\n name: '2025-26',\r\n value: '2025-26'\r\n }\r\n ]\r\n\r\n isSubmitted: boolean = false;\r\n gstDeatilsForm: FormGroup;\r\n fileType: any;\r\n uploadFileUrl: any;\r\n userId: any;\r\n vendorCode: any;\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private vendorDashboardService: VendorDashboardService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'GST Details', '', new Date(), 'Success');\r\n\r\n this.vendorCode = sessionStorage.getItem('officeCode')\r\n this.gstDeatilsForm = this.fb.group({ \r\n financialYear: ['', Validators.required],\r\n gstCertificatePath: ['', Validators.required],\r\n remarks: ['', Validators.required],\r\n })\r\n }\r\n\r\n get f() {\r\n return this.gstDeatilsForm.controls;\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n if (file.name.includes('.pdf')) {\r\n this.fileType = 'PDF'\r\n } else {\r\n this.fileType = 'IMAGE'\r\n }\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let phNo = farmerconfData.get('farmerPh') ? farmerconfData.get('farmerPh') : '';\r\n\r\n this._personalDetalSer.uploadFile(data, phNo, formcontrol).subscribe((resp: any) => {\r\n if (resp.data) {\r\n this.uploadFileUrl = resp.data\r\n this.gstDeatilsForm.patchValue({ [formcontrol]: resp.data });\r\n }\r\n if (resp.statusCode == 200) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n submitUploadGSTDetails(){\r\n this.isSubmitted = true;\r\n console.log(this.gstDeatilsForm.value, this.gstDeatilsForm.valid)\r\n if(this.gstDeatilsForm.valid){\r\n\r\n let val = this.gstDeatilsForm.value;\r\n let reqBody = {\r\n finYear: val?.financialYear,\r\n gstCertificatePath: val?.gstCertificatePath,\r\n remarks: val?.remarks,\r\n vendorCode: this.vendorCode,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress\r\n }\r\n\r\n\r\n this.loader.start();\r\n this.vendorDashboardService\r\n .insertUploadedGSTDetail(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n\r\n this.activityRecordService.activityRecord(this.userId, 'GST Details Submit', '', new Date(), 'Success');\r\n if(data == \"Record saved Successfully\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n\r\n this.isSubmitted = false;\r\n this.gstDeatilsForm.reset();\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'GST Details Submit', '', new Date(), err);\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n else{\r\n return;\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\n\r\n\r\n@Component({\r\n selector: 'app-vendor-all-applications',\r\n templateUrl: './vendor-all-applications.component.html',\r\n styleUrls: ['./vendor-all-applications.component.scss']\r\n})\r\nexport class VendorAllApplicationsComponent implements OnInit {\r\n exportMenu: MenuItem[];\r\n\r\n public tableData: any = [];\r\n public tableHeaderName = 'All Farmer Applications';\r\n\r\n public subscriptions: any = [];\r\n public subjectSub:any;\r\n public loading: boolean = false;\r\n public userId: any;\r\n\r\n constructor(\r\n private messageService: MessageService, \r\n private cryptoJsService: CryptoJsService, \r\n private ipService: IpAddressService, \r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private vendorService: VendorDashboardService,\r\n private router: Router, \r\n ) { }\r\n\r\n ngOnInit(): void {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n // this.vendorRegId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n this.exportMenu = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.tableData, `MI_${this.tableHeaderName}`);\r\n },\r\n }\r\n ];\r\n\r\n this.loadData();\r\n }\r\n\r\n\r\n loadData() {\r\n this.loading = true;\r\n\r\n let sub = this.vendorService\r\n .getAllAppIdsByVendor(this.userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loading = false;\r\n if (data?.length > 0) {\r\n this.tableData = data;\r\n } else {\r\n this.tableData = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: 'Data Not Found',\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loading = false;\r\n this.tableData = [];\r\n \r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'APP Id': d.APP_ID,\r\n 'Status': d.FarmerStatus,\r\n 'Farmer Name': d.farmerName,\r\n 'App Type': d.Applicant_type,\r\n 'Constituency': d.Constituency,\r\n 'District': d?.District,\r\n 'Block': d?.Block,\r\n 'Village': d?.Village,\r\n 'Scheme': d.Scheme,\r\n 'KYC Status': d.KYC_Status\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n rowBackgroundColor(row) {\r\n if (row.FarmerStatus == 'A') {\r\n //light green\r\n return '#99e699'\r\n } \r\n else if (row.FarmerStatus == 'P') {\r\n // light yellow\r\n return '#ffffc5'\r\n } \r\n else if (row.FarmerStatus == 'R') {\r\n //red\r\n return '#ff8080';\r\n } \r\n else if (row.FarmerStatus == 'RP') {\r\n //orange\r\n return '#ffc966';\r\n } \r\n else return '#ffffff';\r\n }\r\n\r\n selectFarmerApplication(application) {\r\n if (application?.APP_ID) {\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application?.APP_ID)]));\r\n window.open(link, '_blank');\r\n }\r\n else{\r\n this.messageService.add({\r\n summary: 'Error Message',\r\n severity: 'info',\r\n detail: 'Application Id Not Found',\r\n });\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
{{ tableHeaderName | translate}}\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'APP_ID'| translate}}\r\n {{'STATUS'| translate}}\r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n {{'APPLICANT_TYPE'| translate}}\r\n {{'CONSTITUENCY'| translate}}\r\n {{'DISTRICT'| translate}}\r\n {{'BLOCK'| translate}}\r\n {{'VILLAGE'| translate}}\r\n {{'SCHEME'| translate}}\r\n {{'KYC_STATUS'| translate}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ ri + 1 }}\r\n {{val?.APP_ID}}\r\n {{val?.FarmerStatus_Description }}\r\n {{val?.farmerName}}\r\n {{val?.Applicant_type}}\r\n {{val?.Constituency}}\r\n {{val?.District}}\r\n {{val?.Block}}\r\n {{val?.Village}}\r\n {{val?.Scheme}}\r\n {{val?.KYC_Status}}\r\n \r\n \r\n\r\n \r\n
\r\n

{{'IN_TOTAL_THERE_ARE'| translate}} {{tableData ?\r\n tableData.length : 0 }} {{'RECORDS_ADDED'| translate}}\r\n

\r\n
\r\n
{{'APPROVED' | translate}}
\r\n
{{'PENDING' | translate}}
\r\n
{{'RETUREN_PROCESS' | translate}}
\r\n
{{'REJECTED' | translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
","\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\n\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\n\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { Dialog, DialogModule } from 'primeng/dialog';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BankDetail } from 'src/app/components/registration/bank-details/bankDetails';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-app-approved',\r\n templateUrl: './vendor-app-approved.component.html',\r\n styleUrls: ['./vendor-app-approved.component.scss']\r\n})\r\nexport class VendorAppApprovedComponent implements OnInit {\r\n\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n @ViewChild('estVerificationTable', { static: true })\r\n public estVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n items: MenuItem[];\r\n\r\n statuses: any[];\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n\r\n displayEstimateDialog: boolean = false;\r\n\r\n public category: any;\r\n public selectedCategory: any = [];\r\n public component: any;\r\n public selectedComponent: any = [];\r\n public sizePrice: any;\r\n public selectedSizePrice: any = [];\r\n\r\n public vendorRegId: any;\r\n public programId: any;\r\n public programmeName: any;\r\n public programmeAppId: any;\r\n public programmeFarmerName: any;\r\n public appId: any;\r\n public userId: any;\r\n public vendorAssociateID: any;\r\n\r\n public categoryId: any;\r\n public componentId: any;\r\n public sizeId: any;\r\n\r\n public tableHide: boolean = false;\r\n\r\n public tableData: any = [];\r\n\r\n uploadedFiles: any[] = [];\r\n\r\n public transCharge: any;\r\n public plantSpacing: any;\r\n public rowSpacing: any;\r\n\r\n public estimatedComponentTotal: any;\r\n public estimatedGSTTotal: any;\r\n public estimatedGrandTotal: any;\r\n\r\n finalEstimationDetails: FormGroup;\r\n public enteredQuantity: number = 1;\r\n filteredCropType: any[];\r\n filteredCrop: any[];\r\n\r\n public added: boolean = false;\r\n public reqBody: any;\r\n public isUpdateClicked: boolean = false;\r\n\r\n public isTransportFree: boolean = false;\r\n\r\n public cropType: any = [];\r\n public crop: any = [];\r\n // crop: any = [\r\n // {\r\n // cropName: 'Wheat',\r\n // cropId: 0,\r\n // },\r\n // {\r\n // cropName: 'Rice',\r\n // cropId: 1,\r\n // },\r\n // {\r\n // cropName: 'Barley',\r\n // cropId: 2,\r\n // },\r\n // ];\r\n\r\n public showProDataCalError: boolean = false;\r\n public isProDataCalculated: boolean = false;\r\n public showInputfields: boolean = true;\r\n public proCalculatedData: any;\r\n\r\n public grandTotal: any\r\n public totalarea: any;\r\n public MIAreaCustomerror: any\r\n \r\n ipAddress: any = '000.000.000';\r\n\r\n public maxSubsidy: number;\r\n \r\n tableDataForReqBody: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private vendorService: VendorDashboardService,\r\n private router: Router,\r\n private tokenService: TokenService,\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private confirmationService: ConfirmationService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService,\r\n private translateService: TranslateService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n \r\n ) { }\r\n\r\n ngOnInit() {\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n\r\n this.getCropMaster();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_MI_Estimation_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_MI_Estimation_List\");\r\n }\r\n },\r\n ];\r\n // this.items = [\r\n // {\r\n // label: 'Download excel',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.exportExcel();\r\n // },\r\n // },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf();\r\n // },\r\n // },\r\n // ];\r\n\r\n this.finalEstimationDetails = this._fb.group({\r\n // transOtherCharges: ['', Validators.required],\r\n plantSpacing: ['', Validators.required],\r\n rowSpacing: ['', Validators.required],\r\n latitude: [''],\r\n longitude: [''],\r\n remarks: ['', Validators.required],\r\n cropType: ['', Validators.required],\r\n crop: ['', Validators.required],\r\n discountRate: [''],\r\n landMapPath: ['', Validators.required],\r\n signaturePath: ['', Validators.required],\r\n // taxRate: ['', Validators.required],\r\n MIArea: ['', Validators.required],\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n refreshTable() {\r\n \r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n // console.log('token1', token);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n // console.log('payload1', JSON.parse(payload));\r\n this.userId = JSON.parse(payload)?.sub;\r\n // const token: any = this.tokenService.retrieve();\r\n // console.log('token', token)\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .GetVendorDashboard(JSON.parse(payload)?.sub, \"Approved\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Estimation Details', '', new Date(), 'Success');\r\n\r\n // console.log('Response Data', data);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.appVerificationModel = data;\r\n }\r\n else{\r\n this.appVerificationModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Estimation Details', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'APP ID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'Village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'DeptRemarks', header: 'Dept Remarks' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.appVerificationModel);\r\n doc.save('Applications_Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n printForm(appId,statusCode,programId) {\r\n // console.log(appId,statusCode)\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n \r\n // this.router.navigate(['vendor', 'print', appId,this.vendorRegId,programId],{ queryParams: { statusCode: statusCodeEncrypted}});\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n \r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App ID\":d.appID,\r\n \"Farmer Name\":d.FarmerName,\r\n \"Village\":d.village,\r\n \"Block\":d.block,\r\n \"District\":d.district,\r\n \"Age Of Application\":d.AgeOfApplication,\r\n \"Programme Name\":d.ProgrammeName,\r\n \"Land Detail\":d.LandDetail,\r\n \"Total Area\":d.Total_Area,\r\n \"Pending Completed Days\":d.PendingCompletedDays,\r\n \"Current Status\":d.Status_Ar,\r\n \"Status\":d.status,\r\n \"Dept Remarks\":d.DeptRemarks, \r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n // import('xlsx').then((xlsx) => {\r\n // let dataToSave = this.appVerificationModel.map((d: any) => {\r\n // return {\r\n // 'APP ID': d.appID,\r\n // FarmerName: d.farmerName,\r\n // //\"Farmer Name\": d.farmerName,\r\n // Village: d.village,\r\n // Block: d.block,\r\n // District: d.district,\r\n // 'Age Of Application': d.AgeOfApplication,\r\n // 'Programme Name': d.ProgrammeName,\r\n // 'Land Detail': d.LandDetail,\r\n // 'Total Area': d.Total_Area,\r\n // Status: d.status,\r\n // 'Dept Remarks': d.DeptRemarks,\r\n // };\r\n // });\r\n // const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n // const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n // const excelBuffer: any = xlsx.write(workbook, {\r\n // bookType: 'xlsx',\r\n // type: 'array',\r\n // });\r\n // this.saveAsExcelFile(excelBuffer, 'Applications List');\r\n // });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n addEstimation(product) {\r\n // this.solarApplicatonForm.patchValue({\r\n // solarId: solarMasteredFilteredData.Solar_ID,\r\n // });\r\n this.programmeName = product.ProgrammeName;\r\n this.programmeAppId = product.appID;\r\n this.programmeFarmerName = product.FarmerName;\r\n\r\n // CropIDEst, CropTypeIDEst, CropNameEst, CropTypeNameEst\r\n\r\n if (product.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // console.log(product, 'selected rowData');\r\n this.appId = product.appID;\r\n\r\n this.totalarea = product.Total_Area;\r\n this.finalEstimationDetails.get('MIArea').setValue(product.Total_Area);\r\n // console.log(this.appId, 'App ID from addEstimation()');\r\n\r\n this.programId = product.ProgramID;\r\n // this.getCropMaster();\r\n this.getCategoryDropdown();\r\n\r\n let reqBody = {\r\n AppId: product.appID,\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: product.ProgramID,\r\n };\r\n\r\n this.showInputfields = true;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getVendorMIEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Get Vendor Estimation Detailss', data);\r\n this.displayEstimateDialog = true;\r\n\r\n if(data.CropTypeIDEst && data.CropIDEst && data.PlantSpacingPreEst && data.RowSpacingPreEst){\r\n this.showInputfields = false;\r\n }\r\n\r\n let label: any;\r\n let label2: any;\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeIDEst) {\r\n label = res;\r\n this.crop = label.children;\r\n this.crop.forEach((res2) => {\r\n if(res2.data === data.CropIDEst){\r\n label2 = res2;\r\n }\r\n })\r\n return;\r\n }\r\n });\r\n\r\n // this.appId = data.AppID;\r\n // this.programId = data.ProgID;\r\n this.vendorAssociateID = data.VandorAssociateID;\r\n // this.getCategoryDropdown();\r\n // this.tableData = [];\r\n // this.tableData = data.EstimationComponentDetail.map((row) => ({\r\n // ...row,\r\n // Amount: row.Price * row.Quantity,\r\n // GSTAmount: (row.Price * row.Quantity * row.GST) / 100,\r\n // AmountWithGST:\r\n // row.Price * row.Quantity +\r\n // (row.Price * row.Quantity * row.GST) / 100,\r\n // }));\r\n // this.calculatePrice();\r\n // console.log('table dataaaaa', this.tableData);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n plantSpacing: data.PlantSpacingPreEst,\r\n rowSpacing: data.RowSpacingPreEst,\r\n cropType: label,\r\n crop: label2,\r\n });\r\n // this.onMIAreaChange()\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n\r\n this.displayEstimateDialog = true;\r\n }\r\n\r\n getCategoryDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n };\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getCategory(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.category = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.category = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Category not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getComponentDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n };\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getComponent(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.component = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Component not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getSizeAndPriceDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n ComponentId: this.componentId,\r\n };\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getSizeAndPrice(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.sizePrice = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Size And Price not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropMaster() {\r\n // this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log('Crop Master', res);\r\n this.cropType = res;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectCategory() {\r\n this.tableHide = false;\r\n this.component = null;\r\n this.componentId = null;\r\n this.selectedComponent = [];\r\n this.sizePrice = null;\r\n this.sizeId = null;\r\n this.selectedSizePrice = [];\r\n this.categoryId = this.selectedCategory?.categoryId;\r\n this.getComponentDropdown();\r\n }\r\n\r\n onSelectComponent() {\r\n this.tableHide = false;\r\n this.sizeId = null;\r\n this.sizePrice = null;\r\n this.selectedSizePrice = [];\r\n this.componentId = this.selectedComponent?.componentId;\r\n this.getSizeAndPriceDropdown();\r\n }\r\n\r\n onSelectSizePrice() {\r\n this.sizeId = this.selectedSizePrice?.sizeId;\r\n this.tableHide = true;\r\n }\r\n\r\n addTable() {\r\n this.tableData.push({\r\n CatID: this.selectedCategory.categoryId,\r\n CatName: this.selectedCategory.categoryName,\r\n ComponentID: this.selectedComponent.componentId,\r\n ComponentName: this.selectedComponent.componentName,\r\n SizeID: this.selectedSizePrice.sizeId,\r\n autoIdPriceTable: this.selectedSizePrice.autoIdPriceTable,\r\n Size: this.selectedSizePrice.sizeAndPrice.split('and')[0],\r\n Price: this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2],\r\n Quantity: this.enteredQuantity,\r\n Amount:\r\n parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) * this.enteredQuantity,\r\n GST: this.selectedSizePrice.gstPercent,\r\n GSTAmount:\r\n ((parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity) /\r\n 100) *\r\n this.selectedSizePrice.gstPercent,\r\n AmountWithGST:\r\n parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity +\r\n ((parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity) /\r\n 100) *\r\n this.selectedSizePrice.gstPercent,\r\n });\r\n // console.log('tableData', this.tableData);\r\n\r\n // this.selectedCategory = [];\r\n // this.selectedComponent = [];\r\n // this.selectedSizePrice = [];\r\n // this.component = [];\r\n // this.sizePrice = [];\r\n // this.enteredQuantity = 1;\r\n this.tableHide = false;\r\n this.calculatePrice();\r\n }\r\n\r\n calculatePrice() {\r\n this.estimatedComponentTotal = 0;\r\n this.estimatedGSTTotal = 0;\r\n this.estimatedGrandTotal = 0;\r\n this.tableData.forEach((element) => {\r\n this.estimatedComponentTotal =\r\n this.estimatedComponentTotal + element.Amount;\r\n\r\n this.estimatedGSTTotal = this.estimatedGSTTotal + element.GSTAmount;\r\n // this.estimatedGrandTotal =\r\n // this.estimatedGrandTotal + element.AmountWithGST;\r\n });\r\n this.onMIAreaChange()\r\n\r\n }\r\n onMIAreaChange() {\r\n this.grandTotal = 0\r\n let MiArea = this.finalEstimationDetails.value.MIArea ? this.finalEstimationDetails.value.MIArea : 0\r\n if (Number(this.totalarea) < MiArea) {\r\n this.MIAreaCustomerror = true\r\n this.finalEstimationControls.MIArea.setErrors({error:'MI Area should not be greater than farmer area'})\r\n } else {\r\n this.MIAreaCustomerror = false\r\n }\r\n let transPortArea = this.isTransportFree ? 0 : (2500 * MiArea)\r\n let discount = this.finalEstimationDetails.value.discountRate ? this.finalEstimationDetails.value.discountRate : 0;\r\n let componentTotal = discount ? this.estimatedComponentTotal - ((this.estimatedComponentTotal * discount) / 100) : this.estimatedComponentTotal;\r\n this.grandTotal = componentTotal + transPortArea\r\n this.estimatedGSTTotal = (componentTotal * 12) / 100\r\n }\r\n\r\n onRowDelete(rowIndex) {\r\n // console.log(this.tableData, 'beforeData');\r\n this.tableData = this.tableData.filter((q, i) => rowIndex != i);\r\n // console.log(this.tableData, 'updatedTableDtata');\r\n this.calculatePrice();\r\n }\r\n\r\n submitFinalEstimation() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n this.tableDataForReqBody = this.tableData;\r\n\r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n sizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable : row.autoIdPriceTable\r\n });\r\n });\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n proData_MaxSubsidy:this.proCalculatedData.maxSubsidy,\r\n // componentAmount: this.estimatedComponentTotal - this.estimatedComponentTotal*value.discountPercent/100,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n // vendorAssociateID: this.vendorRegId,\r\n vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n signaturePath: value.SignaturePath,\r\n // lat: value.latitude,\r\n // long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropTypeId: value.cropType.data,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n\r\n estimationComponentDetail: tableDataToPush,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n this.reqBody = [finalData];\r\n this.postVendorEstimationDetail(this.reqBody);\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n get finalEstimationControls() {\r\n return this.finalEstimationDetails.controls;\r\n }\r\n\r\n filterCropType(event: any) {\r\n // console.log(event);\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.cropType.length; i++) {\r\n const crop = this.cropType[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCropType = filtered;\r\n if(this.filteredCropType.length == 1){\r\n this.onSelectCropType(this.filteredCropType);\r\n }\r\n }\r\n\r\n filterCrop(event: any){\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.crop.length; i++) {\r\n const crop = this.crop[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCrop = filtered;\r\n // console.log(this.filteredCrop, 'FilteredCrop');\r\n }\r\n\r\n onSelectCropType(event){\r\n this.crop = event[0].children;\r\n this.finalEstimationControls.crop.reset();\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer\r\n .uploadFile(data, this.userId, formcontrol)\r\n .subscribe((resp: any) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // console.log(this.finalEstimationDetails);\r\n // this.onLandMapUpload();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n postVendorEstimationDetail(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .postVendorMIEstimationDetail(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})), this.tableDataForReqBody, \"helllooooo\")\r\n this.activityRecordService.activityRecord(this.userId, 'Create Vendor Estimation', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n if(data == \"S:Successfully Submitted\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n // console.log('VendorEstimationAddedSuccessfull', data);\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Create Vendor Estimation', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Added Successfully',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n cancelFinalEstimation() {\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n }\r\n\r\n onCloseDialog() {\r\n this.isTransportFree = false;\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.isUpdateClicked = false;\r\n this.isProDataCalculated = false;\r\n this.selectedCategory = [];\r\n this.selectedComponent = [];\r\n this.selectedSizePrice = [];\r\n this.enteredQuantity = 1;\r\n }\r\n\r\n deleteEstimation(product) {\r\n let reqBody = {\r\n AppId: product.appID,\r\n VendorRegId: product.Vendor_Code,\r\n ProgramId: product.ProgramID,\r\n };\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .deleteEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Vendor Estimation Deleted Success', data);\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Deleted',\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Deleted Successfully',\r\n // });\r\n // },\r\n });\r\n this.loadData();\r\n },\r\n });\r\n }\r\n\r\n updateEstimation(product) {\r\n this.programmeName = product.ProgrammeName;\r\n this.programmeAppId = product.appID;\r\n this.programmeFarmerName = product.FarmerName;\r\n this.totalarea = product.Total_Area;\r\n\r\n if (product.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // this.getCropMaster();\r\n this.isUpdateClicked = true;\r\n // console.log('vendddoooooor', this.vendorRegId);\r\n let reqBody = {\r\n AppId: product.appID,\r\n // VendorRegId: product.Vendor_Code,\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: product.ProgramID,\r\n };\r\n\r\n this.showInputfields = true;\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getVendorMIEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Get Vendor Estimation Detailss', data);\r\n \r\n if(data.CropTypeIDEst && data.CropIDEst && data.PlantSpacingPreEst && data.RowSpacingPreEst){\r\n this.showInputfields = false;\r\n }\r\n \r\n this.displayEstimateDialog = true;\r\n \r\n let label: any;\r\n let label2: any;\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeIDEst) {\r\n label = res;\r\n this.crop = label.children;\r\n this.crop.forEach((res2) => {\r\n if(res2.data === data.CropIDEst){\r\n label2 = res2;\r\n }\r\n })\r\n return;\r\n }\r\n });\r\n\r\n this.appId = data.AppID;\r\n // this.vendorRegId = data.VendorRegId;\r\n this.programId = data.ProgID;\r\n this.vendorAssociateID = data.VandorAssociateID;\r\n this.getCategoryDropdown();\r\n // this.tableData = [];\r\n this.tableData = data.EstimationComponentDetail.map((row) => ({\r\n ...row,\r\n Amount: row.Price * row.Quantity,\r\n GSTAmount: (row.Price * row.Quantity * row.GST) / 100,\r\n AmountWithGST:\r\n row.Price * row.Quantity +\r\n (row.Price * row.Quantity * row.GST) / 100,\r\n }));\r\n this.calculatePrice();\r\n // console.log('table dataaaaa', this.tableData);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n // transOtherCharges: data.TransportOtherExpenses,\r\n plantSpacing: data.PlantSpacing,\r\n rowSpacing: data.RowSpacing,\r\n // latitude: data.Lat,\r\n // longitude: data.Long,\r\n remarks: data.Remarks,\r\n cropType: label,\r\n crop: label2,\r\n discountRate: data.DiscountRate,\r\n landMapPath: data.LandMapPath,\r\n signaturePath: data.signaturePath,\r\n // taxRate: data.TaxRate,\r\n MIArea: data.MIArea,\r\n });\r\n this.onMIAreaChange()\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitFinalEstimationUpdated() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n this.tableDataForReqBody = this.tableData;\r\n \r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n SizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable : row.autoIdPriceTable ? row.autoIdPriceTable : row.AutoIdPriceTable\r\n });\r\n });\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n // console.log('tableDatatoUpdate', tableDataToPush);\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n // componentAmount: this.estimatedComponentTotal - this.estimatedComponentTotal*value.discountPercent/100,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n // vendorAssociateID: JSON.stringify(this.vendorRegId),\r\n vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n signaturePath: value.signaturePath,\r\n // lat: value.latitude,\r\n // long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropTypeId: value.cropType.data,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n estimationComponentDetail: tableDataToPush,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n this.reqBody = [finalData];\r\n this.updateVendorEstimationDetail(this.reqBody);\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n updateVendorEstimationDetail(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .updateVendorEstimationDetail(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log(reqBody, this.tableDataForReqBody, \"helllooooo\")\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Vendor Estimation', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n if(data == \"S:Successfully Updated\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n // console.log('VendorEstimationUpdatedSuccessfull', data);\r\n \r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Vendor Estimation', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Updated',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n },\r\n });\r\n // this.loadData();\r\n this.isUpdateClicked = false;\r\n }\r\n\r\n getMaxSubsidy(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('getMaxSubsidy', data);\r\n this.proCalculatedData = data;\r\n this.isProDataCalculated = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Status',\r\n // detail: data,\r\n // });\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n proDataCalculation() {\r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n cat:\r\n typeof row.CatID == 'string' ? row.CatID : JSON.stringify(row.CatID),\r\n component: row.ComponentName,\r\n size: row.Size,\r\n quantity: row.Quantity,\r\n price:\r\n typeof row.Price == 'string' ? row.Price : JSON.stringify(row.Price),\r\n });\r\n });\r\n\r\n if (\r\n !(\r\n this.finalEstimationControls?.rowSpacing?.errors?.required ||\r\n this.finalEstimationControls?.plantSpacing?.errors?.required ||\r\n this.finalEstimationControls?.MIArea?.errors?.required\r\n )\r\n ) {\r\n this.showProDataCalError = false;\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.programId,\r\n applicationId: this.appId,\r\n vendorId: this.vendorRegId,\r\n rowSpacing: this.finalEstimationDetails.value.rowSpacing,\r\n plantSpacing: this.finalEstimationDetails.value.plantSpacing,\r\n area: this.finalEstimationDetails.value.MIArea,\r\n //maxSubsidy:this.ProData_MaxSubsidy,\r\n // ProData_MaxSubsidy:this.proCalculatedData?.maxSubsidy,\r\n //ProData_MaxSubsidy:this.proCalculatedData?.ProData_MaxSubsidy,\r\n \r\n };\r\n let reqBody = finalDataToPost;\r\n\r\n // console.log('final Data to post', reqBody);\r\n this.getMaxSubsidy(reqBody);\r\n } else {\r\n this.showProDataCalError = true;\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.PendingCompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.PendingCompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.PendingCompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.PendingCompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n \r\n getCropTypeName(event) {\r\n this.finalEstimationDetails.controls['crop'].reset();\r\n this.crop = [];\r\n // console.log('event', event, this.cropType)\r\n const data = this.cropType.find(element => element?.data == event?.data)\r\n if (data) {\r\n this.crop = data.children\r\n } else {\r\n this.crop = []\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
{{'MI_ESTIMATION_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'DEPT_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VIEW_APPLICATION'| translate}} \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n \r\n {{product.FarmerName | uppercase}}\r\n {{product.village}}\r\n {{product.block}}\r\n {{product.district}}\r\n {{product.AgeOfApplication}}\r\n {{product.ProgrammeName}}\r\n {{product.LandDetail}}\r\n {{product.Total_Area}}\r\n {{product.PendingCompletedDays}}\r\n {{product.Status_Ar}}\r\n {{product.status}}\r\n {{product.DeptRemarks}}\r\n {{product.FinYear}} \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{appVerificationModel ? appVerificationModel.length : 0 }}\r\n {{'VER_APP_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'ESTIMATED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n = 48 && event.charCode <= 57\" title=\"Numbers only\" pInputText\r\n [(ngModel)]=\"enteredQuantity\" required [ngClass]=\"{ 'ng-invalid ng-dirty': enteredQuantity<1 }\">\r\n
\r\n
{{'NOTE_ON_INVALID_QUANTITY'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CML_VALIDITY_EXP_ON'| translate}}\r\n {{selectedSizePrice?.cmlValidity}} {{'FOR'| translate}} {{selectedComponent?.componentName}}.\r\n {{'PLEASE_UPLOAD_CML_VALIDTY'| translate}}
\r\n
\r\n
\r\n
{{'CML_VALIDITY_IS_VALID_UPTO'| translate}}\r\n {{selectedSizePrice?.cmlValidity}} {{'FOR'| translate}} {{selectedComponent?.componentName}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n {{'CATEGORY_NAME'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n {{'PRICE'| translate}}\r\n \r\n \r\n \r\n {{'QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.CatName}}\r\n {{product.ComponentName}}\r\n {{product.Size}}\r\n {{'RS.'| translate}} {{product.Price | number : '1.2-2'}}\r\n {{product.Quantity}}\r\n \r\n {{'RS.'| translate}} {{product.Amount | number : '1.2-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
{{'CROP_TYPE_IS_REQ'| translate}}
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
{{'CROP_IS_REQ'| translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MI_AREA_IS_REQ'|\r\n translate}}\r\n
\r\n
{{'ON_INVALID_MI_AREA'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'REMARKS_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'LAND_MAP_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'SIGNATURE_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n {{'MI_AREA_SPACING_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
","\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\n\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\n\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { Dialog, DialogModule } from 'primeng/dialog';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BankDetail } from 'src/app/components/registration/bank-details/bankDetails';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-vendor-app-current',\r\n templateUrl: './vendor-app-current.component.html',\r\n styleUrls: ['./vendor-app-current.component.scss']\r\n})\r\nexport class VendorAppCurrentComponent implements OnInit {\r\n\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n @ViewChild('estVerificationTable', { static: true })\r\n public estVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n items: MenuItem[];\r\n\r\n statuses: any[];\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n\r\n displayEstimateDialog: boolean = false;\r\n\r\n public category: any;\r\n public selectedCategory: any = [];\r\n public component: any;\r\n public selectedComponent: any = [];\r\n public sizePrice: any;\r\n public selectedSizePrice: any = [];\r\n\r\n public vendorRegId: any;\r\n public programId: any;\r\n public programmeName: any;\r\n public programmeAppId: any;\r\n public programmeFarmerName: any;\r\n public appId: any;\r\n public userId: any;\r\n public vendorAssociateID: any;\r\n\r\n public categoryId: any;\r\n public componentId: any;\r\n public sizeId: any;\r\n\r\n public tableHide: boolean = false;\r\n\r\n public tableData: any = [];\r\n\r\n uploadedFiles: any[] = [];\r\n\r\n public transCharge: any;\r\n public plantSpacing: any;\r\n public rowSpacing: any;\r\n\r\n public estimatedComponentTotal: any;\r\n public estimatedGSTTotal: any;\r\n public estimatedGrandTotal: any;\r\n\r\n finalEstimationDetails: FormGroup;\r\n public enteredQuantity: number = 1;\r\n filteredCropType: any[];\r\n filteredCrop: any[];\r\n\r\n public added: boolean = false;\r\n public reqBody: any;\r\n public isUpdateClicked: boolean = false;\r\n\r\n public isTransportFree: boolean = false;\r\n\r\n public cropType: any = [];\r\n public crop: any = [];\r\n // crop: any = [\r\n // {\r\n // cropName: 'Wheat',\r\n // cropId: 0,\r\n // },\r\n // {\r\n // cropName: 'Rice',\r\n // cropId: 1,\r\n // },\r\n // {\r\n // cropName: 'Barley',\r\n // cropId: 2,\r\n // },\r\n // ];\r\n\r\n public showProDataCalError: boolean = false;\r\n public isProDataCalculated: boolean = false;\r\n public showInputfields: boolean = true;\r\n public proCalculatedData: any;\r\n\r\n public grandTotal: any;\r\n public farmerShare: any;\r\n public subsidyAmount: any;\r\n public totalarea: any;\r\n public MIAreaCustomerror: any\r\n \r\n ipAddress: any = '000.000.000';\r\n\r\n public maxSubsidy: number;\r\n \r\n tableDataForReqBody: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private vendorService: VendorDashboardService,\r\n private router: Router,\r\n private tokenService: TokenService,\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private confirmationService: ConfirmationService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService,\r\n private translateService: TranslateService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n\r\n this.getCropMaster();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_MI_Estimation_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_MI_Estimation_List\");\r\n }\r\n },\r\n ];\r\n // this.items = [\r\n // {\r\n // label: 'Download excel',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.exportExcel();\r\n // },\r\n // },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf();\r\n // },\r\n // },\r\n // ];\r\n\r\n this.finalEstimationDetails = this._fb.group({\r\n // transOtherCharges: ['', Validators.required],\r\n plantSpacing: ['', Validators.required],\r\n rowSpacing: ['', Validators.required],\r\n latitude: [''],\r\n longitude: [''],\r\n remarks: ['', Validators.required],\r\n cropType: ['', Validators.required],\r\n crop: ['', Validators.required],\r\n discountRate: [''],\r\n landMapPath: ['', Validators.required],\r\n signaturePath: ['', Validators.required],\r\n // taxRate: ['', Validators.required],\r\n MIArea: ['', Validators.required],\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n refreshTable() {\r\n \r\n this.loadData();\r\n }\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token')));\r\n // console.log('token1', token);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n // console.log('payload1', JSON.parse(payload));\r\n this.userId = JSON.parse(payload)?.sub;\r\n // const token: any = this.tokenService.retrieve();\r\n // console.log('token', token)\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .GetVendorDashboard(JSON.parse(payload)?.sub, \"Current\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Estimation Details', '', new Date(), 'Success');\r\n\r\n // console.log('Response Data', data);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.appVerificationModel = data;\r\n }\r\n else{\r\n this.appVerificationModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Estimation Details', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'APP ID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'Village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'DeptRemarks', header: 'Dept Remarks' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.appVerificationModel);\r\n doc.save('Applications_Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n printForm(appId,statusCode,programId) {\r\n // console.log(appId,statusCode)\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n \r\n // this.router.navigate(['vendor', 'print', appId,this.vendorRegId,programId],{ queryParams: { statusCode: statusCodeEncrypted}});\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n \r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App ID\":d.appID,\r\n \"Farmer Name\":d.FarmerName,\r\n \"Village\":d.village,\r\n \"Block\":d.block,\r\n \"District\":d.district,\r\n \"Age Of Application\":d.AgeOfApplication,\r\n \"Programme Name\":d.ProgrammeName,\r\n \"Land Detail\":d.LandDetail,\r\n \"Total Area\":d.Total_Area,\r\n \"Pending Completed Days\":d.PendingCompletedDays,\r\n \"Current Status\":d.Status_Ar,\r\n \"Status\":d.status,\r\n \"Dept Remarks\":d.DeptRemarks, \r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n // import('xlsx').then((xlsx) => {\r\n // let dataToSave = this.appVerificationModel.map((d: any) => {\r\n // return {\r\n // 'APP ID': d.appID,\r\n // FarmerName: d.farmerName,\r\n // //\"Farmer Name\": d.farmerName,\r\n // Village: d.village,\r\n // Block: d.block,\r\n // District: d.district,\r\n // 'Age Of Application': d.AgeOfApplication,\r\n // 'Programme Name': d.ProgrammeName,\r\n // 'Land Detail': d.LandDetail,\r\n // 'Total Area': d.Total_Area,\r\n // Status: d.status,\r\n // 'Dept Remarks': d.DeptRemarks,\r\n // };\r\n // });\r\n // const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n // const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n // const excelBuffer: any = xlsx.write(workbook, {\r\n // bookType: 'xlsx',\r\n // type: 'array',\r\n // });\r\n // this.saveAsExcelFile(excelBuffer, 'Applications List');\r\n // });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n addEstimation(product) {\r\n // this.solarApplicatonForm.patchValue({\r\n // solarId: solarMasteredFilteredData.Solar_ID,\r\n // });\r\n this.programmeName = product.ProgrammeName;\r\n this.programmeAppId = product.appID;\r\n this.programmeFarmerName = product.FarmerName;\r\n\r\n // CropIDEst, CropTypeIDEst, CropNameEst, CropTypeNameEst\r\n\r\n if (product.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // console.log(product, 'selected rowData');\r\n this.appId = product.appID;\r\n\r\n this.totalarea = product.Total_Area;\r\n this.finalEstimationDetails.get('MIArea').setValue(product.Total_Area);\r\n // console.log(this.appId, 'App ID from addEstimation()');\r\n\r\n this.programId = product.ProgramID;\r\n // this.getCropMaster();\r\n this.getCategoryDropdown();\r\n\r\n let reqBody = {\r\n AppId: product.appID,\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: product.ProgramID,\r\n };\r\n\r\n this.showInputfields = true;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getVendorMIEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Get Vendor Estimation Detailss', data);\r\n this.displayEstimateDialog = true;\r\n\r\n if(data.CropTypeIDEst && data.CropIDEst && data.PlantSpacingPreEst && data.RowSpacingPreEst){\r\n this.showInputfields = false;\r\n }\r\n\r\n let label: any;\r\n let label2: any;\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeIDEst) {\r\n label = res;\r\n this.crop = label.children;\r\n this.crop.forEach((res2) => {\r\n if(res2.data === data.CropIDEst){\r\n label2 = res2;\r\n }\r\n })\r\n return;\r\n }\r\n });\r\n\r\n // this.appId = data.AppID;\r\n // this.programId = data.ProgID;\r\n this.vendorAssociateID = data.VandorAssociateID;\r\n // this.getCategoryDropdown();\r\n // this.tableData = [];\r\n // this.tableData = data.EstimationComponentDetail.map((row) => ({\r\n // ...row,\r\n // Amount: row.Price * row.Quantity,\r\n // GSTAmount: (row.Price * row.Quantity * row.GST) / 100,\r\n // AmountWithGST:\r\n // row.Price * row.Quantity +\r\n // (row.Price * row.Quantity * row.GST) / 100,\r\n // }));\r\n // this.calculatePrice();\r\n // console.log('table dataaaaa', this.tableData);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n plantSpacing: data.PlantSpacingPreEst,\r\n rowSpacing: data.RowSpacingPreEst,\r\n cropType: label,\r\n crop: label2,\r\n });\r\n // this.onMIAreaChange()\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n\r\n this.displayEstimateDialog = true;\r\n }\r\n\r\n getCategoryDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n };\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getCategory(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.category = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.category = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Category not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getComponentDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n };\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getComponent(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.component = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Component not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getSizeAndPriceDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n ComponentId: this.componentId,\r\n };\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getSizeAndPrice(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.sizePrice = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Size And Price not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropMaster() {\r\n // this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log('Crop Master', res);\r\n this.cropType = res;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectCategory() {\r\n this.tableHide = false;\r\n this.component = null;\r\n this.componentId = null;\r\n this.selectedComponent = [];\r\n this.sizePrice = null;\r\n this.sizeId = null;\r\n this.selectedSizePrice = [];\r\n this.categoryId = this.selectedCategory?.categoryId;\r\n this.getComponentDropdown();\r\n }\r\n\r\n onSelectComponent() {\r\n this.tableHide = false;\r\n this.sizeId = null;\r\n this.sizePrice = null;\r\n this.selectedSizePrice = [];\r\n this.componentId = this.selectedComponent?.componentId;\r\n this.getSizeAndPriceDropdown();\r\n }\r\n\r\n onSelectSizePrice() {\r\n this.sizeId = this.selectedSizePrice?.sizeId;\r\n this.tableHide = true;\r\n }\r\n\r\n addTable() {\r\n this.tableData.push({\r\n CatID: this.selectedCategory.categoryId,\r\n CatName: this.selectedCategory.categoryName,\r\n ComponentID: this.selectedComponent.componentId,\r\n ComponentName: this.selectedComponent.componentName,\r\n SizeID: this.selectedSizePrice.sizeId,\r\n autoIdPriceTable: this.selectedSizePrice.autoIdPriceTable,\r\n Size: this.selectedSizePrice.sizeAndPrice.split('and')[0],\r\n Price: this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2],\r\n Quantity: this.enteredQuantity,\r\n Amount:\r\n parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) * this.enteredQuantity,\r\n GST: this.selectedSizePrice.gstPercent,\r\n GSTAmount:\r\n ((parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity) /\r\n 100) *\r\n this.selectedSizePrice.gstPercent,\r\n AmountWithGST:\r\n parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity +\r\n ((parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity) /\r\n 100) *\r\n this.selectedSizePrice.gstPercent,\r\n });\r\n // console.log('tableData', this.tableData);\r\n\r\n // this.selectedCategory = [];\r\n // this.selectedComponent = [];\r\n // this.selectedSizePrice = [];\r\n // this.component = [];\r\n // this.sizePrice = [];\r\n // this.enteredQuantity = 1;\r\n this.tableHide = false;\r\n this.calculatePrice();\r\n }\r\n\r\n calculatePrice() {\r\n this.estimatedComponentTotal = 0;\r\n this.estimatedGSTTotal = 0;\r\n this.estimatedGrandTotal = 0;\r\n this.tableData.forEach((element) => {\r\n this.estimatedComponentTotal =\r\n this.estimatedComponentTotal + element.Amount;\r\n\r\n this.estimatedGSTTotal = this.estimatedGSTTotal + element.GSTAmount;\r\n // this.estimatedGrandTotal =\r\n // this.estimatedGrandTotal + element.AmountWithGST;\r\n });\r\n this.onMIAreaChange()\r\n\r\n }\r\n onMIAreaChange() {\r\n this.grandTotal = 0\r\n let MiArea = this.finalEstimationDetails.value.MIArea ? this.finalEstimationDetails.value.MIArea : 0\r\n if (Number(this.totalarea) < MiArea) {\r\n this.MIAreaCustomerror = true\r\n this.finalEstimationControls.MIArea.setErrors({error:'MI Area should not be greater than farmer area'})\r\n } else {\r\n this.MIAreaCustomerror = false\r\n }\r\n let transPortArea = this.isTransportFree ? 0 : (2500 * MiArea)\r\n let discount = this.finalEstimationDetails.value.discountRate ? this.finalEstimationDetails.value.discountRate : 0;\r\n let componentTotal = discount ? this.estimatedComponentTotal - ((this.estimatedComponentTotal * discount) / 100) : this.estimatedComponentTotal;\r\n this.grandTotal = componentTotal + transPortArea\r\n this.estimatedGSTTotal = (componentTotal * 12) / 100\r\n this.subsidyAmount = (this.grandTotal * 85)/100\r\n this.farmerShare = (this.grandTotal * 15)/100\r\n }\r\n\r\n onRowDelete(rowIndex) {\r\n // console.log(this.tableData, 'beforeData');\r\n this.tableData = this.tableData.filter((q, i) => rowIndex !== i);\r\n // console.log(this.tableData, 'updatedTableDtata');\r\n this.calculatePrice();\r\n }\r\n\r\n submitFinalEstimation() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n this.tableDataForReqBody = this.tableData;\r\n\r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n sizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable : row.autoIdPriceTable\r\n });\r\n });\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n proData_MaxSubsidy:this.proCalculatedData.maxSubsidy,\r\n // componentAmount: this.estimatedComponentTotal - this.estimatedComponentTotal*value.discountPercent/100,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n // vendorAssociateID: this.vendorRegId,\r\n vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n signaturePath: value.signaturePath,\r\n // lat: value.latitude,\r\n // long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropTypeId: value.cropType.data,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n\r\n estimationComponentDetail: tableDataToPush,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n this.reqBody = [finalData];\r\n this.postVendorEstimationDetail(this.reqBody);\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n get finalEstimationControls() {\r\n return this.finalEstimationDetails.controls;\r\n }\r\n\r\n filterCropType(event: any) {\r\n //console.log(event);\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.cropType.length; i++) {\r\n const crop = this.cropType[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCropType = filtered;\r\n if(this.filteredCropType.length == 1){\r\n this.onSelectCropType(this.filteredCropType);\r\n }\r\n }\r\n\r\n filterCrop(event: any){\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.crop.length; i++) {\r\n const crop = this.crop[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCrop = filtered;\r\n // console.log(this.filteredCrop, 'FilteredCrop');\r\n }\r\n\r\n onSelectCropType(event){\r\n this.crop = event[0].children;\r\n this.finalEstimationControls.crop.reset();\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer\r\n .uploadFile(data, this.userId, formcontrol)\r\n .subscribe((resp: any) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // console.log(this.finalEstimationDetails);\r\n // this.onLandMapUpload();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n postVendorEstimationDetail(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .postVendorMIEstimationDetail(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})), this.tableDataForReqBody, \"helllooooo\")\r\n this.activityRecordService.activityRecord(this.userId, 'Create Vendor Estimation', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n if(data == \"S:Successfully Submitted\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n // console.log('VendorEstimationAddedSuccessfull', data);\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Create Vendor Estimation', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Added Successfully',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n cancelFinalEstimation() {\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n }\r\n\r\n onCloseDialog() {\r\n this.isTransportFree = false;\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.isUpdateClicked = false;\r\n this.isProDataCalculated = false;\r\n this.selectedCategory = [];\r\n this.selectedComponent = [];\r\n this.selectedSizePrice = [];\r\n this.enteredQuantity = 1;\r\n }\r\n\r\n deleteEstimation(product) {\r\n let reqBody = {\r\n AppId: product.appID,\r\n VendorRegId: product.Vendor_Code,\r\n ProgramId: product.ProgramID,\r\n };\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .deleteEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Vendor Estimation Deleted Success', data);\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Deleted',\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Deleted Successfully',\r\n // });\r\n // },\r\n });\r\n this.loadData();\r\n },\r\n });\r\n }\r\n\r\n updateEstimation(product) {\r\n this.programmeName = product.ProgrammeName;\r\n this.programmeAppId = product.appID;\r\n this.programmeFarmerName = product.FarmerName;\r\n this.totalarea = product.Total_Area;\r\n\r\n if (product.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // this.getCropMaster();\r\n this.isUpdateClicked = true;\r\n // console.log('vendddoooooor', this.vendorRegId);\r\n let reqBody = {\r\n AppId: product.appID,\r\n // VendorRegId: product.Vendor_Code,\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: product.ProgramID,\r\n };\r\n\r\n this.showInputfields = true;\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getVendorMIEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Get Vendor Estimation Detailss', data);\r\n \r\n if(data.CropTypeIDEst && data.CropIDEst && data.PlantSpacingPreEst && data.RowSpacingPreEst){\r\n this.showInputfields = false;\r\n }\r\n \r\n this.displayEstimateDialog = true;\r\n \r\n let label: any;\r\n let label2: any;\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeIDEst) {\r\n label = res;\r\n this.crop = label.children;\r\n this.crop.forEach((res2) => {\r\n if(res2.data === data.CropIDEst){\r\n label2 = res2;\r\n }\r\n })\r\n return;\r\n }\r\n });\r\n\r\n this.appId = data.AppID;\r\n // this.vendorRegId = data.VendorRegId;\r\n this.programId = data.ProgID;\r\n this.vendorAssociateID = data.VandorAssociateID;\r\n this.getCategoryDropdown();\r\n // this.tableData = [];\r\n this.tableData = data.EstimationComponentDetail.map((row) => ({\r\n ...row,\r\n Amount: row.Price * row.Quantity,\r\n GSTAmount: (row.Price * row.Quantity * row.GST) / 100,\r\n AmountWithGST:\r\n row.Price * row.Quantity +\r\n (row.Price * row.Quantity * row.GST) / 100,\r\n }));\r\n this.calculatePrice();\r\n // console.log('table dataaaaa', this.tableData);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n // transOtherCharges: data.TransportOtherExpenses,\r\n plantSpacing: data.PlantSpacing,\r\n rowSpacing: data.RowSpacing,\r\n // latitude: data.Lat,\r\n // longitude: data.Long,\r\n remarks: data.Remarks,\r\n cropType: label,\r\n crop: label2,\r\n discountRate: data.DiscountRate,\r\n landMapPath: data.LandMapPath,\r\n signaturePath: data.SignaturePath,\r\n // taxRate: data.TaxRate,\r\n MIArea: data.MIArea,\r\n });\r\n this.onMIAreaChange()\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitFinalEstimationUpdated() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n this.tableDataForReqBody = this.tableData;\r\n \r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n SizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable : row.autoIdPriceTable ? row.autoIdPriceTable : row.AutoIdPriceTable\r\n });\r\n });\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n // console.log('tableDatatoUpdate', tableDataToPush);\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n // componentAmount: this.estimatedComponentTotal - this.estimatedComponentTotal*value.discountPercent/100,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n // vendorAssociateID: JSON.stringify(this.vendorRegId),\r\n vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n signaturePath: value.signaturePath,\r\n // lat: value.latitude,\r\n // long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropTypeId: value.cropType.data,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n estimationComponentDetail: tableDataToPush,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n this.reqBody = [finalData];\r\n this.updateVendorEstimationDetail(this.reqBody);\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n updateVendorEstimationDetail(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .updateVendorEstimationDetail(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log(reqBody, this.tableDataForReqBody, \"helllooooo\")\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Vendor Estimation', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n if(data == \"S:Successfully Updated\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n // console.log('VendorEstimationUpdatedSuccessfull', data);\r\n \r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Vendor Estimation', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Updated',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n },\r\n });\r\n // this.loadData();\r\n this.isUpdateClicked = false;\r\n }\r\n\r\n getMaxSubsidy(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('getMaxSubsidy', data);\r\n this.proCalculatedData = data;\r\n this.isProDataCalculated = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Status',\r\n // detail: data,\r\n // });\r\n if(this.subsidyAmount > data.maxSubsidy){\r\n let diff = this.subsidyAmount - data.maxSubsidy;\r\n this.subsidyAmount = data.maxSubsidy;\r\n this.farmerShare = this.farmerShare + diff;\r\n\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n proDataCalculation() {\r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n cat:\r\n typeof row.CatID == 'string' ? row.CatID : JSON.stringify(row.CatID),\r\n component: row.ComponentName,\r\n size: row.Size,\r\n quantity: row.Quantity,\r\n price:\r\n typeof row.Price == 'string' ? row.Price : JSON.stringify(row.Price),\r\n });\r\n });\r\n\r\n if (\r\n !(\r\n this.finalEstimationControls?.rowSpacing?.errors?.required ||\r\n this.finalEstimationControls?.plantSpacing?.errors?.required ||\r\n this.finalEstimationControls?.MIArea?.errors?.required\r\n )\r\n ) {\r\n this.showProDataCalError = false;\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.programId,\r\n applicationId: this.appId,\r\n vendorId: this.vendorRegId,\r\n rowSpacing: this.finalEstimationDetails.value.rowSpacing,\r\n plantSpacing: this.finalEstimationDetails.value.plantSpacing,\r\n area: this.finalEstimationDetails.value.MIArea,\r\n //maxSubsidy:this.ProData_MaxSubsidy,\r\n // ProData_MaxSubsidy:this.proCalculatedData?.maxSubsidy,\r\n //ProData_MaxSubsidy:this.proCalculatedData?.ProData_MaxSubsidy,\r\n \r\n };\r\n let reqBody = finalDataToPost;\r\n\r\n // console.log('final Data to post', reqBody);\r\n this.getMaxSubsidy(reqBody);\r\n } else {\r\n this.showProDataCalError = true;\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.PendingCompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.PendingCompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.PendingCompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.PendingCompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n \r\n getCropTypeName(event) {\r\n this.finalEstimationDetails.controls['crop'].reset();\r\n this.crop = [];\r\n // console.log('event', event, this.cropType)\r\n const data = this.cropType.find(element => element?.data == event?.data)\r\n if (data) {\r\n this.crop = data.children\r\n } else {\r\n this.crop = []\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
{{'MI_ESTIMATION_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'DEPT_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VIEW_APPLICATION'| translate}} \r\n\r\n {{'ESTIMATION_ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n \r\n {{product.FarmerName | uppercase}}\r\n {{product.village}}\r\n {{product.block}}\r\n {{product.district}}\r\n {{product.AgeOfApplication}}\r\n {{product.ProgrammeName}}\r\n {{product.LandDetail}}\r\n {{product.Total_Area}}\r\n {{product.PendingCompletedDays}}\r\n {{product.Status_Ar}}\r\n {{product.status}}\r\n {{product.DeptRemarks}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{appVerificationModel ? appVerificationModel.length : 0 }}\r\n {{'VER_APP_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'ESTIMATED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n = 48 && event.charCode <= 57\" title=\"Numbers only\" pInputText\r\n [(ngModel)]=\"enteredQuantity\" required [ngClass]=\"{ 'ng-invalid ng-dirty': enteredQuantity<1 }\">\r\n
\r\n
{{'NOTE_ON_INVALID_QUANTITY'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CML_VALIDITY_EXP_ON'| translate}}\r\n {{selectedSizePrice?.cmlValidity}} {{'FOR'| translate}} {{selectedComponent?.componentName}}.\r\n {{'PLEASE_UPLOAD_CML_VALIDTY'| translate}}
\r\n
\r\n
\r\n
{{'CML_VALIDITY_IS_VALID_UPTO'| translate}}\r\n {{selectedSizePrice?.cmlValidity}} {{'FOR'| translate}} {{selectedComponent?.componentName}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n {{'CATEGORY_NAME'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n {{'PRICE'| translate}}\r\n \r\n \r\n \r\n {{'QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.CatName}}\r\n {{product.ComponentName}}\r\n {{product.Size}}\r\n {{'RS.'| translate}} {{product.Price | number : '1.2-2'}}\r\n {{product.Quantity}}\r\n \r\n {{'RS.'| translate}} {{product.Amount | number : '1.2-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
{{'CROP_TYPE_IS_REQ'| translate}}
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
{{'CROP_IS_REQ'| translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MI_AREA_IS_REQ'|\r\n translate}}\r\n
\r\n
{{'ON_INVALID_MI_AREA'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'REMARKS_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'LAND_MAP_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'SIGNATURE_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n {{'MI_AREA_SPACING_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
","\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { first, shareReplay } from 'rxjs';\r\n\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\n\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { Dialog, DialogModule } from 'primeng/dialog';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BankDetail } from 'src/app/components/registration/bank-details/bankDetails';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-app-pending',\r\n templateUrl: './vendor-app-pending.component.html',\r\n styleUrls: ['./vendor-app-pending.component.scss']\r\n})\r\nexport class VendorAppPendingComponent implements OnInit {\r\n\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n @ViewChild('estVerificationTable', { static: true })\r\n public estVerificationTable: Table;\r\n\r\n addBankDialog: boolean;\r\n fileName = 'ExcelSheet.xlsx';\r\n bankAccountList: BankDetail[] = [];\r\n\r\n bankAccount: BankDetail;\r\n\r\n selectedBankAccounts: BankDetail[];\r\n\r\n submitted: boolean;\r\n items: MenuItem[];\r\n\r\n statuses: any[];\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n farmerId: any;\r\n bankList: any;\r\n filteredBankList: any[];\r\n appVerificationModel: DepartmentAppVerificationModel[];\r\n\r\n displayEstimateDialog: boolean = false;\r\n\r\n public category: any;\r\n public selectedCategory: any = [];\r\n public component: any;\r\n public selectedComponent: any = [];\r\n public sizePrice: any;\r\n public selectedSizePrice: any = [];\r\n\r\n public vendorRegId: any;\r\n public programId: any;\r\n public programmeName: any;\r\n public programmeAppId: any;\r\n public programmeFarmerName: any;\r\n public appId: any;\r\n public userId: any;\r\n public vendorAssociateID: any;\r\n\r\n public categoryId: any;\r\n public componentId: any;\r\n public sizeId: any;\r\n\r\n public tableHide: boolean = false;\r\n\r\n public tableData: any = [];\r\n\r\n uploadedFiles: any[] = [];\r\n\r\n public transCharge: any;\r\n public plantSpacing: any;\r\n public rowSpacing: any;\r\n\r\n public estimatedComponentTotal: any;\r\n public estimatedGSTTotal: any;\r\n public estimatedGrandTotal: any;\r\n\r\n finalEstimationDetails: FormGroup;\r\n public enteredQuantity: number = 1;\r\n filteredCropType: any[];\r\n filteredCrop: any[];\r\n\r\n public added: boolean = false;\r\n public reqBody: any;\r\n public isUpdateClicked: boolean = false;\r\n\r\n public isTransportFree: boolean = false;\r\n\r\n public cropType: any = [];\r\n public crop: any = [];\r\n // crop: any = [\r\n // {\r\n // cropName: 'Wheat',\r\n // cropId: 0,\r\n // },\r\n // {\r\n // cropName: 'Rice',\r\n // cropId: 1,\r\n // },\r\n // {\r\n // cropName: 'Barley',\r\n // cropId: 2,\r\n // },\r\n // ];\r\n\r\n public showProDataCalError: boolean = false;\r\n public isProDataCalculated: boolean = false;\r\n public showInputfields: boolean = true;\r\n public proCalculatedData: any;\r\n\r\n public grandTotal: any;\r\n public farmerShare: any;\r\n public subsidyAmount: any;\r\n public totalarea: any;\r\n public MIAreaCustomerror: any\r\n \r\n ipAddress: any = '000.000.000';\r\n\r\n public maxSubsidy: number;\r\n \r\n tableDataForReqBody: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub: any;\r\n public selectedYear: any;\r\n public loadingPredictData: boolean = false;\r\n public predictedData: any ;\r\n public predictedEstDetails: any = [];\r\n public today: Date;\r\n\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private vendorService: VendorDashboardService,\r\n private router: Router,\r\n private tokenService: TokenService,\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private confirmationService: ConfirmationService,\r\n private ipService: IpAddressService,\r\n private cryptoJsService: CryptoJsService,\r\n private translateService: TranslateService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.today = new Date();\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.getIP();\r\n\r\n this.getCropMaster();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.appVerificationModel, \"Vendor_MI_Estimation_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.appVerificationModel, \"Vendor_MI_Estimation_List\");\r\n }\r\n },\r\n ];\r\n // this.items = [\r\n // {\r\n // label: 'Download excel',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.exportExcel();\r\n // },\r\n // },\r\n // {\r\n // label: 'Download Pdf',\r\n // icon: 'pi pi-fw pi-download',\r\n // command: () => {\r\n // this.downloadSheetAsPdf();\r\n // },\r\n // },\r\n // ];\r\n\r\n this.finalEstimationDetails = this._fb.group({\r\n // transOtherCharges: ['', Validators.required],\r\n plantSpacing: ['', Validators.required],\r\n rowSpacing: ['', Validators.required],\r\n latitude: [''],\r\n longitude: [''],\r\n remarks: ['', Validators.required],\r\n cropType: ['', Validators.required],\r\n crop: ['', Validators.required],\r\n discountRate: [''],\r\n landMapPath: ['', Validators.required],\r\n signaturePath: ['', Validators.required],\r\n // taxRate: ['', Validators.required],\r\n MIArea: ['', Validators.required],\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n onFiltering(event: any) {\r\n // console.log('Filtered value: ' + JSON.stringify(event.filters));\r\n }\r\n refreshTable() {\r\n \r\n this.loadData();\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n // console.log('payload1', JSON.parse(payload));\r\n this.userId = JSON.parse(payload)?.sub;\r\n // const token: any = this.tokenService.retrieve();\r\n // console.log('token', token)\r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n // console.log('officeCode', this.vendorRegId);\r\n // let payload = atob(token?.value?.authToken?.split('.')[1]);\r\n // console.log('payload', JSON.parse(payload))\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .GetVendorDashboard(JSON.parse(payload)?.sub, \"Pending\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Estimation Details', '', new Date(), 'Success');\r\n\r\n //console.log('Response Data', data);\r\n this.userId = JSON.parse(payload)?.sub;\r\n if (data.length > 0) {\r\n this.appVerificationModel = data;\r\n }\r\n else{\r\n this.appVerificationModel = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'MI Estimation Details', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'APP ID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'Village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'DeptRemarks', header: 'Dept Remarks' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, this.appVerificationModel);\r\n doc.save('Applications_Details.pdf');\r\n });\r\n });\r\n }\r\n\r\n hideDialog() {\r\n this.addBankDialog = false;\r\n this.submitted = false;\r\n }\r\n\r\n printForm(appId,statusCode,programId) {\r\n // console.log(appId,statusCode)\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n \r\n // this.router.navigate(['vendor', 'print', appId,this.vendorRegId,programId],{ queryParams: { statusCode: statusCodeEncrypted}});\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(appId)]);\r\n \r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App ID\":d.appID,\r\n \"Farmer Name\":d.FarmerName,\r\n \"Village\":d.village,\r\n \"Block\":d.block,\r\n \"District\":d.district,\r\n \"Age Of Application\":d.AgeOfApplication,\r\n \"Programme Name\":d.ProgrammeName,\r\n \"Land Detail\":d.LandDetail,\r\n \"Total Area\":d.Total_Area,\r\n \"Pending Completed Days\":d.PendingCompletedDays,\r\n \"Current Status\":d.Status_Ar,\r\n \"Status\":d.status,\r\n \"Dept Remarks\":d.DeptRemarks, \r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n // import('xlsx').then((xlsx) => {\r\n // let dataToSave = this.appVerificationModel.map((d: any) => {\r\n // return {\r\n // 'APP ID': d.appID,\r\n // FarmerName: d.farmerName,\r\n // //\"Farmer Name\": d.farmerName,\r\n // Village: d.village,\r\n // Block: d.block,\r\n // District: d.district,\r\n // 'Age Of Application': d.AgeOfApplication,\r\n // 'Programme Name': d.ProgrammeName,\r\n // 'Land Detail': d.LandDetail,\r\n // 'Total Area': d.Total_Area,\r\n // Status: d.status,\r\n // 'Dept Remarks': d.DeptRemarks,\r\n // };\r\n // });\r\n // const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n // const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n // const excelBuffer: any = xlsx.write(workbook, {\r\n // bookType: 'xlsx',\r\n // type: 'array',\r\n // });\r\n // this.saveAsExcelFile(excelBuffer, 'Applications List');\r\n // });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n\r\n addEstimation(product) {\r\n // this.solarApplicatonForm.patchValue({\r\n // solarId: solarMasteredFilteredData.Solar_ID,\r\n // });\r\n this.programmeName = product.ProgrammeName;\r\n this.programmeAppId = product.appID;\r\n this.programmeFarmerName = product.FarmerName;\r\n\r\n // CropIDEst, CropTypeIDEst, CropNameEst, CropTypeNameEst\r\n\r\n if (product.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // console.log(product, 'selected rowData');\r\n this.appId = product.appID;\r\n\r\n this.totalarea = product.Total_Area;\r\n this.finalEstimationDetails.get('MIArea').setValue(product.Total_Area);\r\n // console.log(this.appId, 'App ID from addEstimation()');\r\n\r\n this.programId = product.ProgramID;\r\n // this.getCropMaster();\r\n this.getCategoryDropdown();\r\n\r\n let reqBody = {\r\n AppId: product.appID,\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: product.ProgramID,\r\n };\r\n\r\n this.showInputfields = true;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getVendorMIEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Get Vendor Estimation Detailss', data);\r\n this.displayEstimateDialog = true;\r\n\r\n if(data.CropTypeIDEst && data.CropIDEst && data.PlantSpacingPreEst && data.RowSpacingPreEst){\r\n this.showInputfields = false;\r\n }\r\n\r\n let label: any;\r\n let label2: any;\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeIDEst) {\r\n label = res;\r\n this.crop = label.children;\r\n this.crop.forEach((res2) => {\r\n if(res2.data === data.CropIDEst){\r\n label2 = res2;\r\n }\r\n })\r\n return;\r\n }\r\n });\r\n\r\n // this.appId = data.AppID;\r\n // this.programId = data.ProgID;\r\n this.vendorAssociateID = data.VandorAssociateID;\r\n // this.getCategoryDropdown();\r\n // this.tableData = [];\r\n // this.tableData = data.EstimationComponentDetail.map((row) => ({\r\n // ...row,\r\n // Amount: row.Price * row.Quantity,\r\n // GSTAmount: (row.Price * row.Quantity * row.GST) / 100,\r\n // AmountWithGST:\r\n // row.Price * row.Quantity +\r\n // (row.Price * row.Quantity * row.GST) / 100,\r\n // }));\r\n // this.calculatePrice();\r\n // console.log('table dataaaaa', this.tableData);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n plantSpacing: data.PlantSpacingPreEst,\r\n rowSpacing: data.RowSpacingPreEst,\r\n cropType: label,\r\n crop: label2,\r\n });\r\n // this.onMIAreaChange()\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n\r\n this.displayEstimateDialog = true;\r\n }\r\n\r\n onPredictData(){\r\n let reqBody = {\r\n VendorId: this.vendorRegId,\r\n ProgId: this.programId,\r\n Area: this.totalarea\r\n }\r\n\r\n this.getPredictedAppId(reqBody);\r\n }\r\n\r\n getPredictedAppId(reqBody){\r\n this.loadingPredictData = true;\r\n this.vendorService\r\n .predictestimatesPDMC(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loadingPredictData = false;\r\n \r\n if(data?.predictedAppId){\r\n let reqBody1 = {\r\n AppId: data?.predictedAppId,\r\n VendorRegId: reqBody.VendorId,\r\n ProgramId: reqBody.ProgId,\r\n }\r\n this.getEstimationForPredictedAppId(reqBody1);\r\n }\r\n },\r\n error: (err) => {\r\n this.loadingPredictData = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getEstimationForPredictedAppId(reqBody){\r\n this.loadingPredictData = true;\r\n this.vendorService\r\n .getMIEstimationDetailsForAppProgId(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loadingPredictData = false;\r\n if(data?.estimationComponentDetail?.$values.length > 0){\r\n this.predictedData = data;\r\n this.predictedEstDetails = data?.estimationComponentDetail?.$values;\r\n }else{\r\n this.predictedData = {};\r\n this.predictedEstDetails = [];\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info Message',\r\n detail: `Data Not Found`,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loadingPredictData = false;\r\n \r\n this.predictedData = {};\r\n this.predictedEstDetails = [];\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCategoryDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n };\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getCategory(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.category = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.category = [];\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Category not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getComponentDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n };\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getComponent(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.component = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Component not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getSizeAndPriceDropdown() {\r\n const reqBody = {\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: this.programId,\r\n CategoryId: this.categoryId,\r\n ComponentId: this.componentId,\r\n };\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getSizeAndPrice(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.sizePrice = res.$values;\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Size And Price not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropMaster() {\r\n // this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log('Crop Master', res);\r\n this.cropType = res;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onSelectCategory() {\r\n this.tableHide = false;\r\n this.component = null;\r\n this.componentId = null;\r\n this.selectedComponent = [];\r\n this.sizePrice = null;\r\n this.sizeId = null;\r\n this.selectedSizePrice = [];\r\n this.categoryId = this.selectedCategory?.categoryId;\r\n this.getComponentDropdown();\r\n }\r\n\r\n onSelectComponent() {\r\n this.tableHide = false;\r\n this.sizeId = null;\r\n this.sizePrice = null;\r\n this.selectedSizePrice = [];\r\n this.componentId = this.selectedComponent?.componentId;\r\n this.getSizeAndPriceDropdown();\r\n }\r\n\r\n onSelectSizePrice() {\r\n this.sizeId = this.selectedSizePrice?.sizeId;\r\n this.tableHide = true;\r\n }\r\n\r\n addTableFromPredictedData(row){\r\n const validityDate = new Date(row?.CMLValidity);\r\n if(validityDate < this.today){\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: `CML Validity expired for the selected data`,\r\n });\r\n return;\r\n }\r\n const exists = this.tableData.length != 0 && this.tableData.some(item => item.CatID == row.CatID && item.ComponentID == row.ComponentID && item.SizeID == row.SizeID);\r\n\r\n if(!exists){\r\n this.tableData.push({\r\n CatID: row.CatID,\r\n CatName: row.CatName,\r\n ComponentID: row.ComponentID,\r\n ComponentName: row.ComponentName,\r\n SizeID: row.SizeID,\r\n autoIdPriceTable: row.AutoIdPriceTable,\r\n Size: row.Size,\r\n Price: row.Price,\r\n Quantity: row.Quantity,\r\n Amount: row.Price * row.Quantity,\r\n GST: row.GST,\r\n GSTAmount: ((row.Price * row.Quantity) / 100)*row.GST,\r\n AmountWithGST: (row.Price * row.Quantity) + ((row.Price * row.Quantity) / 100)*row.GST\r\n });\r\n \r\n this.tableHide = false;\r\n this.calculatePrice();\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Info',\r\n detail: 'Estimation added',\r\n });\r\n }else{\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: 'Estimation already added',\r\n });\r\n }\r\n \r\n console.log(this.tableData)\r\n\r\n }\r\n\r\n addTable() {\r\n this.tableData.push({\r\n CatID: this.selectedCategory.categoryId,\r\n CatName: this.selectedCategory.categoryName,\r\n ComponentID: this.selectedComponent.componentId,\r\n ComponentName: this.selectedComponent.componentName,\r\n SizeID: this.selectedSizePrice.sizeId,\r\n autoIdPriceTable: this.selectedSizePrice.autoIdPriceTable,\r\n Size: this.selectedSizePrice.sizeAndPrice.split('and')[0],\r\n Price: this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2],\r\n Quantity: this.enteredQuantity,\r\n Amount:\r\n parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) * this.enteredQuantity,\r\n GST: this.selectedSizePrice.gstPercent,\r\n GSTAmount:\r\n ((parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity) /\r\n 100) *\r\n this.selectedSizePrice.gstPercent,\r\n AmountWithGST:\r\n parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity +\r\n ((parseFloat(\r\n this.selectedSizePrice.sizeAndPrice.split('and')[1].split(' ')[2]\r\n ) *\r\n this.enteredQuantity) /\r\n 100) *\r\n this.selectedSizePrice.gstPercent,\r\n });\r\n // console.log('tableData', this.tableData);\r\n\r\n // this.selectedCategory = [];\r\n // this.selectedComponent = [];\r\n // this.selectedSizePrice = [];\r\n // this.component = [];\r\n // this.sizePrice = [];\r\n // this.enteredQuantity = 1;\r\n this.tableHide = false;\r\n this.calculatePrice();\r\n }\r\n\r\n calculatePrice() {\r\n this.estimatedComponentTotal = 0;\r\n this.estimatedGSTTotal = 0;\r\n this.estimatedGrandTotal = 0;\r\n this.tableData.forEach((element) => {\r\n this.estimatedComponentTotal =\r\n this.estimatedComponentTotal + element.Amount;\r\n\r\n this.estimatedGSTTotal = this.estimatedGSTTotal + element.GSTAmount;\r\n // this.estimatedGrandTotal =\r\n // this.estimatedGrandTotal + element.AmountWithGST;\r\n });\r\n this.onMIAreaChange()\r\n\r\n }\r\n onMIAreaChange() {\r\n this.grandTotal = 0\r\n let MiArea = this.finalEstimationDetails.value.MIArea ? this.finalEstimationDetails.value.MIArea : 0\r\n if (Number(this.totalarea) < MiArea) {\r\n this.MIAreaCustomerror = true\r\n this.finalEstimationControls.MIArea.setErrors({error:'MI Area should not be greater than farmer area'})\r\n } else {\r\n this.MIAreaCustomerror = false\r\n }\r\n let transPortArea = this.isTransportFree ? 0 : (2500 * MiArea)\r\n let discount = this.finalEstimationDetails.value.discountRate ? this.finalEstimationDetails.value.discountRate : 0;\r\n let componentTotal = discount ? this.estimatedComponentTotal - ((this.estimatedComponentTotal * discount) / 100) : this.estimatedComponentTotal;\r\n this.grandTotal = componentTotal + transPortArea\r\n this.estimatedGSTTotal = (componentTotal * 12) / 100\r\n this.subsidyAmount = (this.grandTotal * 85)/100\r\n this.farmerShare = (this.grandTotal * 15)/100\r\n }\r\n\r\n onRowDelete(rowIndex) {\r\n // console.log(this.tableData, 'beforeData');\r\n this.tableData = this.tableData.filter((q, i) => rowIndex !== i);\r\n // console.log(this.tableData, 'updatedTableDtata');\r\n this.calculatePrice();\r\n }\r\n\r\n submitFinalEstimation() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n this.tableDataForReqBody = this.tableData;\r\n\r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n sizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable : row.autoIdPriceTable\r\n });\r\n });\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n proData_MaxSubsidy:this.proCalculatedData.maxSubsidy,\r\n // componentAmount: this.estimatedComponentTotal - this.estimatedComponentTotal*value.discountPercent/100,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n // vendorAssociateID: this.vendorRegId,\r\n vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n signaturePath: value.signaturePath,\r\n // lat: value.latitude,\r\n // long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropTypeId: value.cropType.data,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n\r\n estimationComponentDetail: tableDataToPush,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n this.reqBody = [finalData];\r\n this.postVendorEstimationDetail(this.reqBody);\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n get finalEstimationControls() {\r\n return this.finalEstimationDetails.controls;\r\n }\r\n\r\n filterCropType(event: any) {\r\n // console.log(event);\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.cropType.length; i++) {\r\n const crop = this.cropType[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCropType = filtered;\r\n if(this.filteredCropType.length == 1){\r\n this.onSelectCropType(this.filteredCropType);\r\n }\r\n }\r\n\r\n filterCrop(event: any){\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.crop.length; i++) {\r\n const crop = this.crop[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCrop = filtered;\r\n // console.log(this.filteredCrop, 'FilteredCrop');\r\n }\r\n\r\n onSelectCropType(event){\r\n this.crop = event[0].children;\r\n this.finalEstimationControls.crop.reset();\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer\r\n .uploadFile(data, this.userId, formcontrol)\r\n .subscribe((resp: any) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // console.log(this.finalEstimationDetails);\r\n // this.onLandMapUpload();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n postVendorEstimationDetail(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .postVendorMIEstimationDetail(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})), this.tableDataForReqBody, \"helllooooo\")\r\n this.activityRecordService.activityRecord(this.userId, 'Create Vendor Estimation', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n if(data == \"S:Successfully Submitted\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n // console.log('VendorEstimationAddedSuccessfull', data);\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Create Vendor Estimation', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Added Successfully',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n cancelFinalEstimation() {\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n }\r\n\r\n onCloseDialog() {\r\n this.isTransportFree = false;\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.isUpdateClicked = false;\r\n this.isProDataCalculated = false;\r\n this.selectedCategory = [];\r\n this.selectedComponent = [];\r\n this.selectedSizePrice = [];\r\n this.enteredQuantity = 1;\r\n this.predictedEstDetails = [];\r\n this.predictedData = {};\r\n this.loadingPredictData = false;\r\n }\r\n\r\n deleteEstimation(product) {\r\n let reqBody = {\r\n AppId: product.appID,\r\n VendorRegId: product.Vendor_Code,\r\n ProgramId: product.ProgramID,\r\n };\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .deleteEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Vendor Estimation Deleted Success', data);\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Deleted',\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Deleted Successfully',\r\n // });\r\n // },\r\n });\r\n this.loadData();\r\n },\r\n });\r\n }\r\n\r\n updateEstimation(product) {\r\n this.programmeName = product.ProgrammeName;\r\n this.programmeAppId = product.appID;\r\n this.programmeFarmerName = product.FarmerName;\r\n this.totalarea = product.Total_Area;\r\n\r\n if (product.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // this.getCropMaster();\r\n this.isUpdateClicked = true;\r\n // console.log('vendddoooooor', this.vendorRegId);\r\n let reqBody = {\r\n AppId: product.appID,\r\n // VendorRegId: product.Vendor_Code,\r\n VendorRegId: this.vendorRegId,\r\n ProgramId: product.ProgramID,\r\n };\r\n\r\n this.showInputfields = true;\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getVendorMIEstimation(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('Get Vendor Estimation Detailss', data);\r\n \r\n if(data.CropTypeIDEst && data.CropIDEst && data.PlantSpacingPreEst && data.RowSpacingPreEst){\r\n this.showInputfields = false;\r\n }\r\n \r\n this.displayEstimateDialog = true;\r\n \r\n let label: any;\r\n let label2: any;\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeIDEst) {\r\n label = res;\r\n this.crop = label.children;\r\n this.crop.forEach((res2) => {\r\n if(res2.data === data.CropIDEst){\r\n label2 = res2;\r\n }\r\n })\r\n return;\r\n }\r\n });\r\n\r\n this.appId = data.AppID;\r\n // this.vendorRegId = data.VendorRegId;\r\n this.programId = data.ProgID;\r\n this.vendorAssociateID = data.VandorAssociateID;\r\n this.getCategoryDropdown();\r\n // this.tableData = [];\r\n this.tableData = data.EstimationComponentDetail.map((row) => ({\r\n ...row,\r\n Amount: row.Price * row.Quantity,\r\n GSTAmount: (row.Price * row.Quantity * row.GST) / 100,\r\n AmountWithGST:\r\n row.Price * row.Quantity +\r\n (row.Price * row.Quantity * row.GST) / 100,\r\n }));\r\n this.calculatePrice();\r\n // console.log('table dataaaaa', this.tableData);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n // transOtherCharges: data.TransportOtherExpenses,\r\n plantSpacing: data.PlantSpacing,\r\n rowSpacing: data.RowSpacing,\r\n // latitude: data.Lat,\r\n // longitude: data.Long,\r\n remarks: data.Remarks,\r\n cropType: label,\r\n crop: label2,\r\n discountRate: data.DiscountRate,\r\n landMapPath: data.LandMapPath,\r\n signaturePath: data.SignaturePath,\r\n // taxRate: data.TaxRate,\r\n MIArea: data.MIArea,\r\n });\r\n this.onMIAreaChange()\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n submitFinalEstimationUpdated() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n this.tableDataForReqBody = this.tableData;\r\n \r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n SizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable : row.autoIdPriceTable ? row.autoIdPriceTable : row.AutoIdPriceTable\r\n });\r\n });\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n // console.log('tableDatatoUpdate', tableDataToPush);\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n // componentAmount: this.estimatedComponentTotal - this.estimatedComponentTotal*value.discountPercent/100,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n // vendorAssociateID: JSON.stringify(this.vendorRegId),\r\n vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n signaturePath: value.signaturePath,\r\n // lat: value.latitude,\r\n // long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropTypeId: value.cropType.data,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n estimationComponentDetail: tableDataToPush,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n this.reqBody = [finalData];\r\n this.updateVendorEstimationDetail(this.reqBody);\r\n this.tableData = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayEstimateDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n updateVendorEstimationDetail(reqBody) {\r\n let reqBodyFinal = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .updateVendorEstimationDetail(reqBodyFinal)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log(reqBody, this.tableDataForReqBody, \"helllooooo\")\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Vendor Estimation', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n if(data == \"S:Successfully Updated\"){\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n else{\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n // console.log('VendorEstimationUpdatedSuccessfull', data);\r\n \r\n this.loadData();\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.userId, 'Update Vendor Estimation', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! Estimation Not Updated',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n },\r\n });\r\n // this.loadData();\r\n this.isUpdateClicked = false;\r\n }\r\n\r\n getMaxSubsidy(reqBody) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log('getMaxSubsidy', data);\r\n this.proCalculatedData = data;\r\n this.isProDataCalculated = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Status',\r\n // detail: data,\r\n // });\r\n if(this.subsidyAmount > data.maxSubsidy){\r\n let diff = this.subsidyAmount - data.maxSubsidy;\r\n this.subsidyAmount = data.maxSubsidy;\r\n this.farmerShare = this.farmerShare + diff;\r\n\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n proDataCalculation() {\r\n const tableDataToPush: any = [];\r\n this.tableData.forEach((row) => {\r\n tableDataToPush.push({\r\n cat:\r\n typeof row.CatID == 'string' ? row.CatID : JSON.stringify(row.CatID),\r\n component: row.ComponentName,\r\n size: row.Size,\r\n quantity: row.Quantity,\r\n price:\r\n typeof row.Price == 'string' ? row.Price : JSON.stringify(row.Price),\r\n });\r\n });\r\n\r\n if (\r\n !(\r\n this.finalEstimationControls?.rowSpacing?.errors?.required ||\r\n this.finalEstimationControls?.plantSpacing?.errors?.required ||\r\n this.finalEstimationControls?.MIArea?.errors?.required\r\n )\r\n ) {\r\n this.showProDataCalError = false;\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.programId,\r\n applicationId: this.appId,\r\n vendorId: this.vendorRegId,\r\n rowSpacing: this.finalEstimationDetails.value.rowSpacing,\r\n plantSpacing: this.finalEstimationDetails.value.plantSpacing,\r\n area: this.finalEstimationDetails.value.MIArea,\r\n //maxSubsidy:this.ProData_MaxSubsidy,\r\n // ProData_MaxSubsidy:this.proCalculatedData?.maxSubsidy,\r\n //ProData_MaxSubsidy:this.proCalculatedData?.ProData_MaxSubsidy,\r\n \r\n };\r\n let reqBody = finalDataToPost;\r\n\r\n // console.log('final Data to post', reqBody);\r\n this.getMaxSubsidy(reqBody);\r\n } else {\r\n this.showProDataCalError = true;\r\n }\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n rowBackgroundColor(product){\r\n if(product.Status_Ar == 'P'){\r\n if(product.PendingCompletedDays <= -2){\r\n return '#ff8080';\r\n }\r\n else if(product.PendingCompletedDays == -1){\r\n return '#ffc966';\r\n }\r\n }\r\n else if(product.Status_Ar == 'C' || product.Status_Ar == 'A'){\r\n if(product.PendingCompletedDays >= -1){\r\n return '#99e699';\r\n }\r\n else if(product.PendingCompletedDays <= -2){\r\n return '#ffb3b3';\r\n }\r\n }\r\n else\r\n return '#ffffff';\r\n }\r\n\r\n \r\n getCropTypeName(event) {\r\n this.finalEstimationDetails.controls['crop'].reset();\r\n this.crop = [];\r\n // console.log('event', event, this.cropType)\r\n const data = this.cropType.find(element => element?.data == event?.data)\r\n if (data) {\r\n this.crop = data.children\r\n } else {\r\n this.crop = []\r\n }\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
{{'MI_ESTIMATION_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'DEPT_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VIEW_APPLICATION'| translate}} \r\n\r\n {{'ESTIMATION_ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.appID}}\r\n \r\n {{product.FarmerName | uppercase}}\r\n {{product.village}}\r\n {{product.block}}\r\n {{product.district}}\r\n {{product.AgeOfApplication}}\r\n {{product.ProgrammeName}}\r\n {{product.LandDetail}}\r\n {{product.Total_Area}}\r\n {{product.PendingCompletedDays}}\r\n {{product.Status_Ar}}\r\n {{product.status}}\r\n {{product.DeptRemarks}}\r\n {{product.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{appVerificationModel ? appVerificationModel.length : 0 }}\r\n {{'VER_APP_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'ESTIMATED_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
0\" class=\"card dashboardTable predicted-val\" style=\"margin: 5px;\">\r\n

Predicted Estimation Details for {{ predictedData.ProgrammeName }} having MI Area {{ predictedData.MIArea }} Acre(s).

\r\n \r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n {{'CATEGORY_NAME'| translate}}\r\n {{'COMPONENT_NAME'| translate}}\r\n {{'SIZE'| translate}}\r\n {{'PRICE'| translate}}\r\n {{'QUANTITY'| translate}}\r\n {{'AMOUNT'| translate}}\r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.CatName}}\r\n {{product.ComponentName}}\r\n {{product.Size}}\r\n {{'RS.'| translate}} {{product.Price | number : '1.2-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ product.Quantity }}\r\n \r\n \r\n \r\n {{'RS.'| translate}} {{product.Price*product.Quantity | number : '1.2-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n = 48 && event.charCode <= 57\" title=\"Numbers only\" pInputText\r\n [(ngModel)]=\"enteredQuantity\" required [ngClass]=\"{ 'ng-invalid ng-dirty': enteredQuantity<1 }\">\r\n
\r\n
{{'NOTE_ON_INVALID_QUANTITY'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{'CML_VALIDITY_EXP_ON'| translate}}\r\n {{selectedSizePrice?.cmlValidity}} {{'FOR'| translate}} {{selectedComponent?.componentName}}.\r\n {{'PLEASE_UPLOAD_CML_VALIDTY'| translate}}
\r\n
\r\n
\r\n
{{'CML_VALIDITY_IS_VALID_UPTO'| translate}}\r\n {{selectedSizePrice?.cmlValidity}} {{'FOR'| translate}} {{selectedComponent?.componentName}}.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{'S_NO'| translate}}\r\n \r\n {{'CATEGORY_NAME'| translate}}\r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}\r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n {{'PRICE'| translate}}\r\n \r\n \r\n \r\n {{'QUANTITY'| translate}}\r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{'ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.CatName}}\r\n {{product.ComponentName}}\r\n {{product.Size}}\r\n {{'RS.'| translate}} {{product.Price | number : '1.2-2'}}\r\n {{product.Quantity}}\r\n \r\n {{'RS.'| translate}} {{product.Amount | number : '1.2-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
{{'CROP_TYPE_IS_REQ'| translate}}
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
{{'CROP_IS_REQ'| translate}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
{{'MI_AREA_IS_REQ'|\r\n translate}}\r\n
\r\n
{{'ON_INVALID_MI_AREA'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'REMARKS_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'LAND_MAP_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
{{'SIGNATURE_IS_REQ'|\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n {{'MI_AREA_SPACING_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
","import { VendorDashboardService } from './../../../services/vendor-dashboard.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport saveAs from 'file-saver';\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\n\r\nimport { DepartmentAppVerificationModel } from 'src/app/models/department-app-verification.model';\r\nimport { BankDetail } from '../../registration/bank-details/bankDetails';\r\nimport { Table } from 'primeng/table';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { Dialog, DialogModule } from 'primeng/dialog';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-application',\r\n templateUrl: './vendor-application.component.html',\r\n styleUrls: ['./vendor-application.component.scss'],\r\n})\r\nexport class VendorApplicationComponent implements OnInit {\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/vendor-application/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/vendor-application/current` },\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/vendor-application/approved` },\r\n \r\n ];\r\n }\r\n );\r\n\r\n }\r\n}\r\n\r\n","\r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'primeng/table';\r\nimport { first, shareReplay } from 'rxjs';\r\n\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { VendorDashboardService } from './../../../../services/vendor-dashboard.service';\r\nimport { BOQDashboardService } from './../../../../services/boq-dashboard-service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-boq-approved',\r\n templateUrl: './vendor-boq-approved.component.html',\r\n styleUrls: ['./vendor-boq-approved.component.scss']\r\n})\r\nexport class VendorBoqApprovedComponent implements OnInit {\r\n public appId: any;\r\n public vendorRegId: any;\r\n public programId: any;\r\n public userId: any;\r\n\r\n public BOQtableData: any = [];\r\n public displayBOQDialog: boolean = false;\r\n public quantity: any;\r\n public isOpenforEditing: boolean = false;\r\n\r\n public estimatedComponentTotal: any;\r\n public estimatedGSTTotal: any;\r\n public estimatedGrandTotal: any;\r\n public miArea: any;\r\n\r\n public isTransportFree: boolean = false;\r\n\r\n filteredCrop: any[];\r\n ipAddress: any = '000.000.000';\r\n\r\n finalEstimationDetails: FormGroup;\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n\r\n public clonedRowForEditing = {};\r\n\r\n public dialogBoxForinventory: boolean = false;\r\n public inventoryDataForGrid: any;\r\n public inventoryRowFilteredData: any;\r\n public totalQuantityUsed: any;\r\n public tableDataForReqBody: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private tokenService: TokenService,\r\n private vendorService: VendorDashboardService,\r\n private boqService: BOQDashboardService,\r\n private messageService: MessageService,\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n private translateService: TranslateService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService\r\n ) {}\r\n\r\n public tableData: any = [];\r\n public tableDataAfterModification: any = [];\r\n\r\n public programmeAppId: any;\r\n public programmeFarmerName: any;\r\n\r\n public crop: any = [];\r\n public grandTotal: any;\r\n public totalarea: any;\r\n public MIAreaCustomerror: any;\r\n\r\n public signaturePath: any;\r\n // crop: any = [\r\n // {\r\n // cropName: 'Wheat',\r\n // cropId: 0,\r\n // },\r\n // {\r\n // cropName: 'Rice',\r\n // cropId: 1,\r\n // },\r\n // {\r\n // cropName: 'Barley',\r\n // cropId: 2,\r\n // },\r\n // ];\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.BOQtableData, 'Vendor_BOQ_List');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(this.BOQtableData, 'Vendor_BOQ_List');\r\n },\r\n },\r\n ];\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.finalEstimationDetails = this._fb.group({\r\n // transOtherCharges: ['', Validators.required],\r\n plantSpacing: ['', Validators.required],\r\n rowSpacing: ['', Validators.required],\r\n latitude: ['', Validators.required],\r\n longitude: ['', Validators.required],\r\n remarks: ['', Validators.required],\r\n crop: ['', Validators.required],\r\n discountRate: [''],\r\n landMapPath: ['', Validators.required],\r\n billCopyPath: ['', Validators.required],\r\n // taxRate: ['', Validators.required],\r\n MIArea: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.min(0),\r\n (control: AbstractControl) => Validators.max(this.miArea)(control),\r\n ],\r\n ],\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get finalEstimationControls() {\r\n return this.finalEstimationDetails.controls;\r\n }\r\n\r\n filterCrop(event: any) {\r\n // console.log(event);\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.crop.length; i++) {\r\n const crop = this.crop[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCrop = filtered;\r\n // console.log(this.filteredCrop, 'FilteredCrop');\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.boqService\r\n .getVendorApplicationForMIBOQ(JSON.parse(payload)?.sub, \"Approved\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI BOQ Details',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n // console.log('Response Data of BOQ table', data);\r\n this.BOQtableData = data;\r\n // this.loader.close();\r\n this.loading = false;\r\n // if (data.length > 0) {\r\n // // this.appVerificationModel = data;\r\n // this.BOQtableData = data;\r\n // }\r\n },\r\n error: (err) => {\r\n this.BOQtableData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI BOQ Details',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateDialogtable() {\r\n this.tableDataAfterModification = this.tableData.map((e, i) => ({\r\n ...e,\r\n Amount: e.Price * e.Quantity,\r\n GSTAmount: (e.GST * e.Price * e.Quantity) / 100,\r\n AmountWithGST:\r\n e.Price * e.Quantity + (e.GST * e.Price * e.Quantity) / 100,\r\n id: i,\r\n }));\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n // this._personalDetalSer.uploadFile(data, this.userId, formcontrol)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (resp) => {\r\n // if (resp.statusCode == 200) {\r\n // this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // // console.log(this.finalEstimationDetails);\r\n // // this.onLandMapUpload();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'File Uploaded with Auto Mode',\r\n // });\r\n // }\r\n // },\r\n // error: (err) => {},\r\n // })\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, this.userId, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n // console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // console.log(this.finalEstimationDetails);\r\n // this.onLandMapUpload();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n updateBOQ(row) {\r\n this.programmeAppId = row.appID;\r\n this.programmeFarmerName = row.FarmerName;\r\n\r\n this.getCropMaster();\r\n if (row.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // console.log('boqROW', row);\r\n let reqBody = {\r\n AppId: row.appID,\r\n VendorRegId: row.Vendor_Code,\r\n ProgramId: row.ProgramID,\r\n };\r\n\r\n this.loader.start();\r\n this.boqService\r\n .getVendorMIBOQ(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('Get Vendor Estimation Details (BOQ)', data);\r\n this.displayBOQDialog = true;\r\n this.loader.close();\r\n\r\n let label: any;\r\n this.crop.forEach((res) => {\r\n if (res.data === data.CropID) {\r\n label = res;\r\n return;\r\n }\r\n });\r\n // console.log('cropName', label);\r\n\r\n this.appId = data.AppID;\r\n this.vendorRegId = data.VendorRegId;\r\n this.programId = data.ProgID;\r\n\r\n this.signaturePath = data.SignaturePath;\r\n // this.vendorAssociateID = data.VandorAssociateID;\r\n // this.tableData = [];\r\n this.tableData = data.EstimationComponentDetail;\r\n this.updateDialogtable();\r\n this.calculatePrice();\r\n // console.log('table data befor modification', this.tableData);\r\n // console.log('table data after modification,', this.tableDataAfterModification);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n // transOtherCharges: data.TransportOtherExpenses,\r\n plantSpacing: data.PlantSpacing,\r\n rowSpacing: data.RowSpacing,\r\n latitude: data.Lat,\r\n longitude: data.Long,\r\n remarks: data.Remarks,\r\n crop: label,\r\n discountRate: data.DiscountRate,\r\n landMapPath: data.LandMapPath,\r\n // taxRate: data.TaxRate,\r\n MIArea: data.MIArea,\r\n });\r\n this.onMIAreaChange();\r\n this.miArea = data.MIArea;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropMaster() {\r\n this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log('Crop Master', res);\r\n this.crop = res;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n calculatePrice() {\r\n this.estimatedComponentTotal = 0;\r\n this.estimatedGSTTotal = 0;\r\n this.estimatedGrandTotal = 0;\r\n\r\n this.tableDataAfterModification.forEach((element) => {\r\n this.estimatedComponentTotal =\r\n this.estimatedComponentTotal + element.Amount;\r\n\r\n this.estimatedGSTTotal = this.estimatedGSTTotal + element.GSTAmount;\r\n this.estimatedGrandTotal =\r\n this.estimatedGrandTotal + element.AmountWithGST;\r\n });\r\n this.onMIAreaChange();\r\n }\r\n onMIAreaChange() {\r\n this.grandTotal = 0;\r\n let MiArea = this.finalEstimationDetails.value.MIArea\r\n ? this.finalEstimationDetails.value.MIArea\r\n : 0;\r\n if (Number(this.totalarea) < MiArea) {\r\n this.MIAreaCustomerror = true;\r\n this.finalEstimationControls.MIArea.setErrors({\r\n error: 'MI Area should not be greater then former area',\r\n });\r\n } else {\r\n this.MIAreaCustomerror = false;\r\n }\r\n let transPortArea = this.isTransportFree ? 0 : 2500 * MiArea;\r\n let discount = this.finalEstimationDetails.value.discountRate\r\n ? this.finalEstimationDetails.value.discountRate\r\n : 0;\r\n let componentTotal = discount\r\n ? this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discount) / 100\r\n : this.estimatedComponentTotal;\r\n this.grandTotal = componentTotal + transPortArea;\r\n this.estimatedGSTTotal = (componentTotal * 12) / 100;\r\n }\r\n\r\n onCloseDialog() {\r\n // this.finalEstimationDetails.reset();\r\n this.displayBOQDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n onRowEditInit(product) {\r\n this.isOpenforEditing = true;\r\n this.quantity = product.Quantity;\r\n this.clonedRowForEditing = { ...product };\r\n }\r\n\r\n onRowEditSave(product) {\r\n // console.log('this.product', product);\r\n product.Amount = product.Price * product.Quantity;\r\n product.GSTAmount = (product.Price * product.Quantity * product.GST) / 100;\r\n product.AmountWithGST =\r\n product.Price * product.Quantity +\r\n (product.Price * product.Quantity * product.GST) / 100;\r\n this.isOpenforEditing = false;\r\n this.calculatePrice();\r\n // console.log('After editing1', this.tableDataAfterModification);\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Product is updated',\r\n });\r\n }\r\n\r\n onRowEditCancel() {\r\n this.isOpenforEditing = false;\r\n }\r\n\r\n onRowDelete(rowIndex) {\r\n this.tableDataAfterModification = this.tableDataAfterModification.filter(\r\n (q, i) => rowIndex != i\r\n );\r\n this.calculatePrice();\r\n // console.log('data After delete', this.tableDataAfterModification);\r\n }\r\n\r\n submitFinalEstimation() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n const tableDataToPush: any = [];\r\n\r\n // console.log(\"finalllll\", this.tableDataAfterModification);\r\n this.tableDataForReqBody = this.tableDataAfterModification;\r\n\r\n this.tableDataAfterModification.forEach((row) => {\r\n // let inventoryData = [];\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n sizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable: row.AutoIdPriceTable,\r\n inventory: row?.selectedInventory ? row?.selectedInventory : [],\r\n });\r\n });\r\n\r\n // console.log('tableDatatoPush', tableDataToPush);\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n vendorAssociateID: JSON.stringify(this.vendorRegId),\r\n // vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n // maxSubsidyAmount:\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n billCopyPath: value.billCopyPath,\r\n lat: value.latitude,\r\n long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n estimationComponentDetail: tableDataToPush,\r\n ProData_MaxSubsidy: this.proCalculatedData.maxSubsidy,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n let reqBody = [finalData];\r\n this.insertVendorBOQ(reqBody);\r\n this.tableDataAfterModification = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayBOQDialog = false;\r\n this.isTransportFree = false;\r\n }\r\n\r\n insertVendorBOQ(reqBody) {\r\n\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.boqService\r\n .insertVendorBOQ(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'MI BOQ Action', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n // console.log('VendorMIBOQUpdatedSuccessfull', data);\r\n if (data.startsWith('S')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n this.loadData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'MI BOQ Action', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! BOQ Estimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'BOQ Estimation Added Successfully',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n public showProDataCalError: boolean = false;\r\n public isProDataCalculated: boolean = false;\r\n public proCalculatedData: any;\r\n\r\n proDataCalculation() {\r\n const tableDataToPush: any = [];\r\n this.tableDataAfterModification.forEach((row) => {\r\n tableDataToPush.push({\r\n cat: JSON.stringify(row.CatID),\r\n // cat: typeof(row.CatID) == 'string' ? row.CatID :JSON.stringify(row.CatID),\r\n component: row.ComponentName,\r\n size: row.Size,\r\n quantity: row.Quantity,\r\n // price: typeof(row.Price) == 'string' ? row.Price :JSON.stringify(row.Price)\r\n price: row.Price,\r\n });\r\n });\r\n\r\n if (!this.finalEstimationControls?.MIArea?.errors?.required) {\r\n this.showProDataCalError = false;\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.programId,\r\n applicationId: this.appId,\r\n vendorId: JSON.stringify(this.vendorRegId),\r\n rowSpacing: this.finalEstimationDetails.value.rowSpacing,\r\n plantSpacing: this.finalEstimationDetails.value.plantSpacing,\r\n area: this.finalEstimationDetails.value.MIArea,\r\n };\r\n let reqBody = finalDataToPost;\r\n\r\n // console.log('final Data to post', reqBody);\r\n this.getMaxSubsidy(reqBody);\r\n } else {\r\n this.showProDataCalError = true;\r\n }\r\n }\r\n\r\n getMaxSubsidy(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('getMaxSubsidy', data);\r\n this.proCalculatedData = data;\r\n this.loader.close();\r\n this.isProDataCalculated = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Status',\r\n // detail: data,\r\n // });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n selectFarmerApplication(application, statusCode) {\r\n if (application.appID) {\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(application.appID)]);\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)],{ queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App ID': d.appID,\r\n 'Farmer Name': d.FarmerName,\r\n Village: d.village,\r\n Block: d.block,\r\n District: d.district,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Programme Name': d.ProgrammeName,\r\n 'Land Detail': d.LandDetail,\r\n 'Total Area': d.Total_Area,\r\n PendingCompletedDays: d.PendingCompletedDays,\r\n 'Current status': d.Status_Ar,\r\n Status: d.status,\r\n 'Dept Remarks': d.DeptRemarks,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'App ID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'Village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'DeptRemarks', header: 'Dept Remarks' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n rowBackgroundColor(product) {\r\n if (product.Status_Ar == 'P') {\r\n if (product.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (product.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (product.Status_Ar == 'C' || product.Status_Ar == 'A') {\r\n if (product.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (product.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onCloseInventoryDialog() {\r\n this.isOpenforEditing = false;\r\n this.dialogBoxForinventory = false;\r\n // this.inventoryDataForGrid = null;\r\n this.totalQuantityUsed = 0;\r\n // this.inventoryRowFilteredData = null;\r\n }\r\n\r\n onRowEditInitForInventory(product) {\r\n this.totalQuantityUsed = 0;\r\n product.inventory = product.inventory.map((val) => ({\r\n ...val,\r\n batchNumber_lotNo: val.batchNumber + '_' + val.lotNo,\r\n quantityUsed: val.quantityUsed ? val.quantityUsed : 0,\r\n }));\r\n // console.log('productForROWEDITINVENTORY', product);\r\n\r\n this.inventoryRowFilteredData=[];\r\n // this.inventoryRowFilteredData = product?.filteredInventory ? product?.filteredInventory: [];\r\n // if (product?.filteredInventory) {\r\n // let total = 0;\r\n // product?.filteredInventory.forEach((val) => {\r\n // total = val?.quantityUsed;\r\n // });\r\n // this.totalQuantityUsed = total;\r\n // }\r\n this.inventoryDataForGrid = product;\r\n // console.log('this.inventoryDataForGrid', this.inventoryDataForGrid);\r\n\r\n // this.inventoryDataForGrid = this.inventoryDataForGrid.map(val => ({\r\n // ...val,\r\n // quantityUsed: val.quantityUsed ? val.quantityUsed : 0\r\n // }))\r\n this.dialogBoxForinventory = true;\r\n }\r\n\r\n onInventoryRowSelect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onInventoryRowUnselect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(val) {\r\n // console.log('toggle', val);\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n if (val?.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n }\r\n\r\n onEditComplete(row) {\r\n // console.log(\"changesd\", row)\r\n \r\n\r\n // console.log(\"this.inventoryDataForGrid\", this.inventoryDataForGrid)\r\n // console.log(\"inventoryRowFilteredData\", this.inventoryRowFilteredData)\r\n if(this.inventoryRowFilteredData?.length !=0){\r\n this.inventoryRowFilteredData.forEach((val, i) => {\r\n // console.log(val?.batchNumber_lotNo, row?.batchNumber_lotNo)\r\n if(val?.batchNumber_lotNo== row?.batchNumber_lotNo){\r\n this.inventoryRowFilteredData[i]= row;\r\n return;\r\n }\r\n })\r\n }\r\n\r\n\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n }\r\n\r\n submitInventoryDetails() {\r\n this.onCloseInventoryDialog();\r\n // console.log('inventoryRowFilteredData', this.inventoryRowFilteredData);\r\n // console.log('inventoryDataForGrid', this.inventoryDataForGrid);\r\n\r\n this.inventoryDataForGrid = [this.inventoryDataForGrid].map((val) => ({\r\n ...val,\r\n // filteredInventory: this.inventoryRowFilteredData,\r\n selectedInventory: this.inventoryRowFilteredData.map((val) => ({\r\n batchNumber: val?.batchNumber,\r\n lotNo: val?.lotNo,\r\n quantityUsed: val?.quantityUsed,\r\n })),\r\n }));\r\n\r\n this.totalQuantityUsed = 0;\r\n if (this.inventoryRowFilteredData?.length == 0) {\r\n this.totalQuantityUsed = 0;\r\n } else {\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n }\r\n\r\n // console.log(this.totalQuantityUsed, 'totalqunatity used')\r\n\r\n this.inventoryDataForGrid[0].Quantity = this.totalQuantityUsed;\r\n this.inventoryDataForGrid[0].Amount =\r\n this.inventoryDataForGrid[0].Price * this.totalQuantityUsed;\r\n this.inventoryDataForGrid[0].GSTAmount =\r\n (this.inventoryDataForGrid[0].Price *\r\n this.totalQuantityUsed *\r\n this.inventoryDataForGrid[0].GST) /\r\n 100;\r\n this.inventoryDataForGrid[0].AmountWithGST =\r\n this.inventoryDataForGrid[0].Price * this.totalQuantityUsed +\r\n (this.inventoryDataForGrid[0].Price *\r\n this.totalQuantityUsed *\r\n this.inventoryDataForGrid[0].GST) /\r\n 100;\r\n\r\n // console.log('finalllll', this.inventoryDataForGrid[0]);\r\n\r\n let index = this.inventoryDataForGrid[0]?.id\r\n ? this.inventoryDataForGrid[0]?.id\r\n : 0;\r\n // console.log(index, '@@@');\r\n if (index != null) {\r\n // console.log('index', index, this.inventoryDataForGrid[0]);\r\n this.tableDataAfterModification[index] = this.inventoryDataForGrid[0];\r\n }\r\n\r\n // console.log(this.tableDataAfterModification, 'final');\r\n\r\n this.calculatePrice();\r\n }\r\n}\r\n\r\n\r\n","\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'BILL_OF_QUANTITY_DETAILS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DEPT_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VIEW_APPLICATION'| translate}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n {{ product.appID }}\r\n \r\n {{ product.FarmerName | uppercase }}\r\n {{ product.village }}\r\n {{ product.block }}\r\n {{ product.district }}\r\n {{ product.AgeOfApplication }}\r\n {{ product.ProgrammeName }}\r\n {{ product.LandDetail }}\r\n {{ product.Total_Area }}\r\n {{ product.PendingCompletedDays }}\r\n {{ product.Status_Ar }}\r\n {{ product.status }}\r\n {{ product.DeptRemarks }}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ BOQtableData ? BOQtableData.length : 0 }} {{'VER_APP_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'BOQ_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n {{'CATEGORY_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PRICE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'QUANTITY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'EDIT'| translate}}\r\n {{'DELETE'| translate}}\r\n \r\n \r\n \r\n \r\n {{ rowIndex + 1 }}\r\n {{ product.CatName }}\r\n {{ product.ComponentName }}\r\n {{ product.Size }}\r\n Rs. {{ product.Price | number: \"1.2-2\" }}\r\n\r\n \r\n \r\n \r\n quantity\r\n }\" pInputText type=\"number\" [(ngModel)]=\"product.Quantity\" min=\"1\" step=\"1\"\r\n onkeypress=\"return event.charCode >= 48 && event.charCode <= 57\" />\r\n
\r\n {{'MUST_BE_GRT_OR_EQUAL_TO_ONE'| translate}}\r\n
\r\n
quantity\">\r\n {{'MUST_BE_LESS_THAN_OR_EQUAL'| translate}} {{ quantity }}\r\n
\r\n
\r\n \r\n {{ product.Quantity }}\r\n \r\n
\r\n \r\n\r\n {{'RS.'| translate}} {{ product.Amount | number: \"1.2-2\" }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LATITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LONGITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'CROP_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'MI_AREA_IS_REQ'| translate}}\r\n
\r\n
\r\n {{'MI_AREA_MUST_BE_FROM'| translate}}-{{ miArea }}.\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'REMARKS_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'LAND_MAP_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'BILL_COPY_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{'VIEW_IMAGE' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n \r\n
\r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {{'MI_AREA_SPACING_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{'BATCH_NUMBER'| translate}}\r\n {{'LOT_NO'| translate}}\r\n {{'REMAINING_QUANTITY'| translate}}\r\n {{'QUANTITY_USED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.batchNumber}}\r\n {{product.lotNo}}\r\n {{product.remainingQuantity}}\r\n \r\n \r\n \r\n product.remainingQuantity }\" />\r\n
\r\n {{'Must not be negative'| translate}}\r\n
\r\n
product.remainingQuantity\">\r\n {{'Qunatity must not be greater than Remaining Quantity'| translate}} {{ quantity }}\r\n
\r\n
\r\n \r\n {{ product.quantityUsed }}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{inventoryDataForGrid?.inventory ?\r\n inventoryDataForGrid?.inventory?.length : 0 }}\r\n {{'INVENTORY'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_SELECTED_QUANTITY_USED'| translate}} {{ totalQuantityUsed }}\r\n
\r\n
inventoryDataForGrid?.Quantity\">\r\n

{{'TOTAL_SELECTED_QUANTITY_USED_MUST_NOT_BE_GREATER_THAN_QUANTITY'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'primeng/table';\r\nimport { first, shareReplay } from 'rxjs';\r\n\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { VendorDashboardService } from './../../../../services/vendor-dashboard.service';\r\nimport { BOQDashboardService } from './../../../../services/boq-dashboard-service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-boq-current',\r\n templateUrl: './vendor-boq-current.component.html',\r\n styleUrls: ['./vendor-boq-current.component.scss']\r\n})\r\nexport class VendorBoqCurrentComponent implements OnInit {\r\n public appId: any;\r\n public vendorRegId: any;\r\n public programId: any;\r\n public userId: any;\r\n\r\n public BOQtableData: any = [];\r\n public displayBOQDialog: boolean = false;\r\n public quantity: any;\r\n public isOpenforEditing: boolean = false;\r\n\r\n public estimatedComponentTotal: any;\r\n public estimatedGSTTotal: any;\r\n public estimatedGrandTotal: any;\r\n public miArea: any;\r\n\r\n public isTransportFree: boolean = false;\r\n\r\n filteredCrop: any[];\r\n ipAddress: any = '000.000.000';\r\n\r\n finalEstimationDetails: FormGroup;\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n\r\n public clonedRowForEditing = {};\r\n\r\n public dialogBoxForinventory: boolean = false;\r\n public inventoryDataForGrid: any;\r\n public inventoryRowFilteredData: any;\r\n public totalQuantityUsed: any;\r\n public tableDataForReqBody: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private tokenService: TokenService,\r\n private vendorService: VendorDashboardService,\r\n private boqService: BOQDashboardService,\r\n private messageService: MessageService,\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n private translateService: TranslateService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService\r\n ) {}\r\n\r\n public tableData: any = [];\r\n public tableDataAfterModification: any = [];\r\n\r\n public programmeAppId: any;\r\n public programmeFarmerName: any;\r\n\r\n public crop: any = [];\r\n public grandTotal: any;\r\n public totalarea: any;\r\n public MIAreaCustomerror: any;\r\n\r\n public signaturePath: any;\r\n // crop: any = [\r\n // {\r\n // cropName: 'Wheat',\r\n // cropId: 0,\r\n // },\r\n // {\r\n // cropName: 'Rice',\r\n // cropId: 1,\r\n // },\r\n // {\r\n // cropName: 'Barley',\r\n // cropId: 2,\r\n // },\r\n // ];\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.BOQtableData, 'Vendor_BOQ_List');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(this.BOQtableData, 'Vendor_BOQ_List');\r\n },\r\n },\r\n ];\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.finalEstimationDetails = this._fb.group({\r\n // transOtherCharges: ['', Validators.required],\r\n plantSpacing: ['', Validators.required],\r\n rowSpacing: ['', Validators.required],\r\n latitude: ['', Validators.required],\r\n longitude: ['', Validators.required],\r\n remarks: ['', Validators.required],\r\n crop: ['', Validators.required],\r\n discountRate: [''],\r\n landMapPath: ['', Validators.required],\r\n billCopyPath: ['', Validators.required],\r\n // taxRate: ['', Validators.required],\r\n MIArea: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.min(0),\r\n (control: AbstractControl) => Validators.max(this.miArea)(control),\r\n ],\r\n ],\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get finalEstimationControls() {\r\n return this.finalEstimationDetails.controls;\r\n }\r\n\r\n filterCrop(event: any) {\r\n // console.log(event);\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.crop.length; i++) {\r\n const crop = this.crop[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCrop = filtered;\r\n // console.log(this.filteredCrop, 'FilteredCrop');\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.boqService\r\n .getVendorApplicationForMIBOQ(JSON.parse(payload)?.sub, \"Current\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI BOQ Details',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n // console.log('Response Data of BOQ table', data);\r\n this.BOQtableData = data;\r\n // this.loader.close();\r\n this.loading = false;\r\n // if (data.length > 0) {\r\n // // this.appVerificationModel = data;\r\n // this.BOQtableData = data;\r\n // }\r\n },\r\n error: (err) => {\r\n this.BOQtableData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI BOQ Details',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateDialogtable() {\r\n this.tableDataAfterModification = this.tableData.map((e, i) => ({\r\n ...e,\r\n Amount: e.Price * e.Quantity,\r\n GSTAmount: (e.GST * e.Price * e.Quantity) / 100,\r\n AmountWithGST:\r\n e.Price * e.Quantity + (e.GST * e.Price * e.Quantity) / 100,\r\n id: i,\r\n }));\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n // this._personalDetalSer.uploadFile(data, this.userId, formcontrol)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (resp) => {\r\n // if (resp.statusCode == 200) {\r\n // this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // // console.log(this.finalEstimationDetails);\r\n // // this.onLandMapUpload();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'File Uploaded with Auto Mode',\r\n // });\r\n // }\r\n // },\r\n // error: (err) => {},\r\n // })\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, this.userId, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n // console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // console.log(this.finalEstimationDetails);\r\n // this.onLandMapUpload();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n updateBOQ(row) {\r\n this.programmeAppId = row.appID;\r\n this.programmeFarmerName = row.FarmerName;\r\n\r\n this.getCropMaster();\r\n if (row.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // console.log('boqROW', row);\r\n let reqBody = {\r\n AppId: row.appID,\r\n VendorRegId: row.Vendor_Code,\r\n ProgramId: row.ProgramID,\r\n };\r\n\r\n this.loader.start();\r\n this.boqService\r\n .getVendorMIBOQ(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('Get Vendor Estimation Details (BOQ)', data);\r\n this.displayBOQDialog = true;\r\n this.loader.close();\r\n\r\n let label: any;\r\n this.crop.forEach((res) => {\r\n if (res.data === data.CropID) {\r\n label = res;\r\n return;\r\n }\r\n });\r\n // console.log('cropName', label);\r\n\r\n this.appId = data.AppID;\r\n this.vendorRegId = data.VendorRegId;\r\n this.programId = data.ProgID;\r\n\r\n this.signaturePath = data.SignaturePath;\r\n // this.vendorAssociateID = data.VandorAssociateID;\r\n // this.tableData = [];\r\n this.tableData = data.EstimationComponentDetail;\r\n this.updateDialogtable();\r\n this.calculatePrice();\r\n // console.log('table data befor modification', this.tableData);\r\n // console.log('table data after modification,', this.tableDataAfterModification);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n // transOtherCharges: data.TransportOtherExpenses,\r\n plantSpacing: data.PlantSpacing,\r\n rowSpacing: data.RowSpacing,\r\n latitude: data.Lat,\r\n longitude: data.Long,\r\n remarks: data.Remarks,\r\n crop: label,\r\n discountRate: data.DiscountRate,\r\n landMapPath: data.LandMapPath,\r\n // taxRate: data.TaxRate,\r\n MIArea: data.MIArea,\r\n });\r\n this.onMIAreaChange();\r\n this.miArea = data.MIArea;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropMaster() {\r\n this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log('Crop Master', res);\r\n this.crop = res;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n calculatePrice() {\r\n this.estimatedComponentTotal = 0;\r\n this.estimatedGSTTotal = 0;\r\n this.estimatedGrandTotal = 0;\r\n\r\n this.tableDataAfterModification.forEach((element) => {\r\n this.estimatedComponentTotal =\r\n this.estimatedComponentTotal + element.Amount;\r\n\r\n this.estimatedGSTTotal = this.estimatedGSTTotal + element.GSTAmount;\r\n this.estimatedGrandTotal =\r\n this.estimatedGrandTotal + element.AmountWithGST;\r\n });\r\n this.onMIAreaChange();\r\n }\r\n onMIAreaChange() {\r\n this.grandTotal = 0;\r\n let MiArea = this.finalEstimationDetails.value.MIArea\r\n ? this.finalEstimationDetails.value.MIArea\r\n : 0;\r\n if (Number(this.totalarea) < MiArea) {\r\n this.MIAreaCustomerror = true;\r\n this.finalEstimationControls.MIArea.setErrors({\r\n error: 'MI Area should not be greater then former area',\r\n });\r\n } else {\r\n this.MIAreaCustomerror = false;\r\n }\r\n let transPortArea = this.isTransportFree ? 0 : 2500 * MiArea;\r\n let discount = this.finalEstimationDetails.value.discountRate\r\n ? this.finalEstimationDetails.value.discountRate\r\n : 0;\r\n let componentTotal = discount\r\n ? this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discount) / 100\r\n : this.estimatedComponentTotal;\r\n this.grandTotal = componentTotal + transPortArea;\r\n this.estimatedGSTTotal = (componentTotal * 12) / 100;\r\n }\r\n\r\n onCloseDialog() {\r\n // this.finalEstimationDetails.reset();\r\n this.displayBOQDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n onRowEditInit(product) {\r\n this.isOpenforEditing = true;\r\n this.quantity = product.Quantity;\r\n this.clonedRowForEditing = { ...product };\r\n }\r\n\r\n onRowEditSave(product) {\r\n // console.log('this.product', product);\r\n product.Amount = product.Price * product.Quantity;\r\n product.GSTAmount = (product.Price * product.Quantity * product.GST) / 100;\r\n product.AmountWithGST =\r\n product.Price * product.Quantity +\r\n (product.Price * product.Quantity * product.GST) / 100;\r\n this.isOpenforEditing = false;\r\n this.calculatePrice();\r\n // console.log('After editing1', this.tableDataAfterModification);\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Product is updated',\r\n });\r\n }\r\n\r\n onRowEditCancel() {\r\n this.isOpenforEditing = false;\r\n }\r\n\r\n onRowDelete(rowIndex) {\r\n this.tableDataAfterModification = this.tableDataAfterModification.filter(\r\n (q, i) => rowIndex != i\r\n );\r\n this.calculatePrice();\r\n // console.log('data After delete', this.tableDataAfterModification);\r\n }\r\n\r\n submitFinalEstimation() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n const tableDataToPush: any = [];\r\n\r\n // console.log(\"finalllll\", this.tableDataAfterModification);\r\n this.tableDataForReqBody = this.tableDataAfterModification;\r\n\r\n this.tableDataAfterModification.forEach((row) => {\r\n // let inventoryData = [];\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n sizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable: row.AutoIdPriceTable,\r\n inventory: row?.selectedInventory ? row?.selectedInventory : [],\r\n });\r\n });\r\n\r\n // console.log('tableDatatoPush', tableDataToPush);\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n vendorAssociateID: JSON.stringify(this.vendorRegId),\r\n // vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n // maxSubsidyAmount:\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n billCopyPath: value.billCopyPath,\r\n lat: value.latitude,\r\n long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n estimationComponentDetail: tableDataToPush,\r\n ProData_MaxSubsidy: this.proCalculatedData.maxSubsidy,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n let reqBody = [finalData];\r\n this.insertVendorBOQ(reqBody);\r\n this.tableDataAfterModification = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayBOQDialog = false;\r\n this.isTransportFree = false;\r\n }\r\n\r\n insertVendorBOQ(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.boqService\r\n .insertVendorBOQ(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'MI BOQ Action', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n // console.log('VendorMIBOQUpdatedSuccessfull', data);\r\n if (data.startsWith('S')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n this.loadData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'MI BOQ Action', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! BOQ Estimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'BOQ Estimation Added Successfully',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n public showProDataCalError: boolean = false;\r\n public isProDataCalculated: boolean = false;\r\n public proCalculatedData: any;\r\n\r\n proDataCalculation() {\r\n const tableDataToPush: any = [];\r\n this.tableDataAfterModification.forEach((row) => {\r\n tableDataToPush.push({\r\n cat: JSON.stringify(row.CatID),\r\n // cat: typeof(row.CatID) == 'string' ? row.CatID :JSON.stringify(row.CatID),\r\n component: row.ComponentName,\r\n size: row.Size,\r\n quantity: row.Quantity,\r\n // price: typeof(row.Price) == 'string' ? row.Price :JSON.stringify(row.Price)\r\n price: row.Price,\r\n });\r\n });\r\n\r\n if (!this.finalEstimationControls?.MIArea?.errors?.required) {\r\n this.showProDataCalError = false;\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.programId,\r\n applicationId: this.appId,\r\n vendorId: JSON.stringify(this.vendorRegId),\r\n rowSpacing: this.finalEstimationDetails.value.rowSpacing,\r\n plantSpacing: this.finalEstimationDetails.value.plantSpacing,\r\n area: this.finalEstimationDetails.value.MIArea,\r\n };\r\n let reqBody = finalDataToPost;\r\n\r\n // console.log('final Data to post', reqBody);\r\n this.getMaxSubsidy(reqBody);\r\n } else {\r\n this.showProDataCalError = true;\r\n }\r\n }\r\n\r\n getMaxSubsidy(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('getMaxSubsidy', data);\r\n this.proCalculatedData = data;\r\n this.loader.close();\r\n this.isProDataCalculated = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Status',\r\n // detail: data,\r\n // });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n selectFarmerApplication(application, statusCode) {\r\n if (application.appID) {\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(application.appID)]);\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)],{ queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App ID': d.appID,\r\n 'Farmer Name': d.FarmerName,\r\n Village: d.village,\r\n Block: d.block,\r\n District: d.district,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Programme Name': d.ProgrammeName,\r\n 'Land Detail': d.LandDetail,\r\n 'Total Area': d.Total_Area,\r\n PendingCompletedDays: d.PendingCompletedDays,\r\n 'Current status': d.Status_Ar,\r\n Status: d.status,\r\n 'Dept Remarks': d.DeptRemarks,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'App ID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'Village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'DeptRemarks', header: 'Dept Remarks' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n rowBackgroundColor(product) {\r\n if (product.Status_Ar == 'P') {\r\n if (product.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (product.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (product.Status_Ar == 'C' || product.Status_Ar == 'A') {\r\n if (product.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (product.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onCloseInventoryDialog() {\r\n this.isOpenforEditing = false;\r\n this.dialogBoxForinventory = false;\r\n // this.inventoryDataForGrid = null;\r\n this.totalQuantityUsed = 0;\r\n // this.inventoryRowFilteredData = null;\r\n }\r\n\r\n onRowEditInitForInventory(product) {\r\n this.totalQuantityUsed = 0;\r\n product.inventory = product.inventory.map((val) => ({\r\n ...val,\r\n batchNumber_lotNo: val.batchNumber + '_' + val.lotNo,\r\n quantityUsed: val.quantityUsed ? val.quantityUsed : 0,\r\n }));\r\n // console.log('productForROWEDITINVENTORY', product);\r\n\r\n this.inventoryRowFilteredData=[];\r\n // this.inventoryRowFilteredData = product?.filteredInventory ? product?.filteredInventory: [];\r\n // if (product?.filteredInventory) {\r\n // let total = 0;\r\n // product?.filteredInventory.forEach((val) => {\r\n // total = val?.quantityUsed;\r\n // });\r\n // this.totalQuantityUsed = total;\r\n // }\r\n this.inventoryDataForGrid = product;\r\n // console.log('this.inventoryDataForGrid', this.inventoryDataForGrid);\r\n\r\n // this.inventoryDataForGrid = this.inventoryDataForGrid.map(val => ({\r\n // ...val,\r\n // quantityUsed: val.quantityUsed ? val.quantityUsed : 0\r\n // }))\r\n this.dialogBoxForinventory = true;\r\n }\r\n\r\n onInventoryRowSelect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onInventoryRowUnselect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(val) {\r\n // console.log('toggle', val);\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n if (val?.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n }\r\n\r\n onEditComplete(row) {\r\n // console.log(\"changesd\", row)\r\n \r\n\r\n // console.log(\"this.inventoryDataForGrid\", this.inventoryDataForGrid)\r\n // console.log(\"inventoryRowFilteredData\", this.inventoryRowFilteredData)\r\n if(this.inventoryRowFilteredData?.length !=0){\r\n this.inventoryRowFilteredData.forEach((val, i) => {\r\n // console.log(val?.batchNumber_lotNo, row?.batchNumber_lotNo)\r\n if(val?.batchNumber_lotNo== row?.batchNumber_lotNo){\r\n this.inventoryRowFilteredData[i]= row;\r\n return;\r\n }\r\n })\r\n }\r\n\r\n\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n }\r\n\r\n submitInventoryDetails() {\r\n this.onCloseInventoryDialog();\r\n // console.log('inventoryRowFilteredData', this.inventoryRowFilteredData);\r\n // console.log('inventoryDataForGrid', this.inventoryDataForGrid);\r\n\r\n this.inventoryDataForGrid = [this.inventoryDataForGrid].map((val) => ({\r\n ...val,\r\n // filteredInventory: this.inventoryRowFilteredData,\r\n selectedInventory: this.inventoryRowFilteredData.map((val) => ({\r\n batchNumber: val?.batchNumber,\r\n lotNo: val?.lotNo,\r\n quantityUsed: val?.quantityUsed,\r\n })),\r\n }));\r\n\r\n this.totalQuantityUsed = 0;\r\n if (this.inventoryRowFilteredData?.length == 0) {\r\n this.totalQuantityUsed = 0;\r\n } else {\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n }\r\n\r\n // console.log(this.totalQuantityUsed, 'totalqunatity used')\r\n\r\n this.inventoryDataForGrid[0].Quantity = this.totalQuantityUsed;\r\n this.inventoryDataForGrid[0].Amount =\r\n this.inventoryDataForGrid[0].Price * this.totalQuantityUsed;\r\n this.inventoryDataForGrid[0].GSTAmount =\r\n (this.inventoryDataForGrid[0].Price *\r\n this.totalQuantityUsed *\r\n this.inventoryDataForGrid[0].GST) /\r\n 100;\r\n this.inventoryDataForGrid[0].AmountWithGST =\r\n this.inventoryDataForGrid[0].Price * this.totalQuantityUsed +\r\n (this.inventoryDataForGrid[0].Price *\r\n this.totalQuantityUsed *\r\n this.inventoryDataForGrid[0].GST) /\r\n 100;\r\n\r\n // console.log('finalllll', this.inventoryDataForGrid[0]);\r\n\r\n let index = this.inventoryDataForGrid[0]?.id\r\n ? this.inventoryDataForGrid[0]?.id\r\n : 0;\r\n // console.log(index, '@@@');\r\n if (index != null) {\r\n // console.log('index', index, this.inventoryDataForGrid[0]);\r\n this.tableDataAfterModification[index] = this.inventoryDataForGrid[0];\r\n }\r\n\r\n // console.log(this.tableDataAfterModification, 'final');\r\n\r\n this.calculatePrice();\r\n }\r\n}\r\n\r\n","\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'BILL_OF_QUANTITY_DETAILS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DEPT_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VIEW_APPLICATION'| translate}}\r\n\r\n {{'BOQ_ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{ product.appID }}\r\n \r\n {{ product.FarmerName | uppercase }}\r\n {{ product.village }}\r\n {{ product.block }}\r\n {{ product.district }}\r\n {{ product.AgeOfApplication }}\r\n {{ product.ProgrammeName }}\r\n {{ product.LandDetail }}\r\n {{ product.Total_Area }}\r\n {{ product.PendingCompletedDays }}\r\n {{ product.Status_Ar }}\r\n {{ product.status }}\r\n {{ product.DeptRemarks }}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ BOQtableData ? BOQtableData.length : 0 }} {{'VER_APP_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'BOQ_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n {{'CATEGORY_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PRICE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'QUANTITY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'EDIT'| translate}}\r\n {{'DELETE'| translate}}\r\n \r\n \r\n \r\n \r\n {{ rowIndex + 1 }}\r\n {{ product.CatName }}\r\n {{ product.ComponentName }}\r\n {{ product.Size }}\r\n Rs. {{ product.Price | number: \"1.2-2\" }}\r\n\r\n \r\n \r\n \r\n quantity\r\n }\" pInputText type=\"number\" [(ngModel)]=\"product.Quantity\" min=\"1\" step=\"1\"\r\n onkeypress=\"return event.charCode >= 48 && event.charCode <= 57\" />\r\n
\r\n {{'MUST_BE_GRT_OR_EQUAL_TO_ONE'| translate}}\r\n
\r\n
quantity\">\r\n {{'MUST_BE_LESS_THAN_OR_EQUAL'| translate}} {{ quantity }}\r\n
\r\n
\r\n \r\n {{ product.Quantity }}\r\n \r\n
\r\n \r\n\r\n {{'RS.'| translate}} {{ product.Amount | number: \"1.2-2\" }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LATITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LONGITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'CROP_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'MI_AREA_IS_REQ'| translate}}\r\n
\r\n
\r\n {{'MI_AREA_MUST_BE_FROM'| translate}}-{{ miArea }}.\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'REMARKS_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'LAND_MAP_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'BILL_COPY_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{'VIEW_IMAGE' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n \r\n
\r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {{'MI_AREA_SPACING_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{'BATCH_NUMBER'| translate}}\r\n {{'LOT_NO'| translate}}\r\n {{'REMAINING_QUANTITY'| translate}}\r\n {{'QUANTITY_USED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.batchNumber}}\r\n {{product.lotNo}}\r\n {{product.remainingQuantity}}\r\n \r\n \r\n \r\n product.remainingQuantity }\" />\r\n
\r\n {{'Must not be negative'| translate}}\r\n
\r\n
product.remainingQuantity\">\r\n {{'Qunatity must not be greater than Remaining Quantity'| translate}} {{ quantity }}\r\n
\r\n
\r\n \r\n {{ product.quantityUsed }}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{inventoryDataForGrid?.inventory ?\r\n inventoryDataForGrid?.inventory?.length : 0 }}\r\n {{'INVENTORY'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_SELECTED_QUANTITY_USED'| translate}} {{ totalQuantityUsed }}\r\n
\r\n
inventoryDataForGrid?.Quantity\">\r\n

{{'TOTAL_SELECTED_QUANTITY_USED_MUST_NOT_BE_GREATER_THAN_QUANTITY'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MenuItem, MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { Table } from 'primeng/table';\r\nimport { first, shareReplay } from 'rxjs';\r\n\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { VendorDashboardService } from './../../../../services/vendor-dashboard.service';\r\nimport { BOQDashboardService } from './../../../../services/boq-dashboard-service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { IpAddressService } from 'src/app/services/ip-address.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-boq-pending',\r\n templateUrl: './vendor-boq-pending.component.html',\r\n styleUrls: ['./vendor-boq-pending.component.scss']\r\n})\r\nexport class VendorBoqPendingComponent implements OnInit {\r\n public appId: any;\r\n public vendorRegId: any;\r\n public programId: any;\r\n public userId: any;\r\n\r\n public BOQtableData: any = [];\r\n public displayBOQDialog: boolean = false;\r\n public quantity: any;\r\n public isOpenforEditing: boolean = false;\r\n\r\n public estimatedComponentTotal: any;\r\n public estimatedGSTTotal: any;\r\n public estimatedGrandTotal: any;\r\n public miArea: any;\r\n\r\n public isTransportFree: boolean = false;\r\n\r\n filteredCrop: any[];\r\n ipAddress: any = '000.000.000';\r\n\r\n finalEstimationDetails: FormGroup;\r\n appVerificationItems: MenuItem[];\r\n cols: (\r\n | { field: string; header: string; customExportHeader: string }\r\n | { field: string; header: string; customExportHeader?: undefined }\r\n )[];\r\n exportColumns: { title: string; dataKey: string }[];\r\n\r\n @ViewChild('appVerificationTable', { static: true })\r\n public appVerificationTable: Table;\r\n\r\n public clonedRowForEditing = {};\r\n\r\n public dialogBoxForinventory: boolean = false;\r\n public inventoryDataForGrid: any;\r\n public inventoryRowFilteredData: any;\r\n public totalQuantityUsed: any;\r\n public tableDataForReqBody: any;\r\n\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n private tokenService: TokenService,\r\n private vendorService: VendorDashboardService,\r\n private boqService: BOQDashboardService,\r\n private messageService: MessageService,\r\n private _fb: FormBuilder,\r\n private _personalDetalSer: FarmersDetailsService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n private translateService: TranslateService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private ipService: IpAddressService,\r\n private service: BaseService\r\n ) {}\r\n\r\n public tableData: any = [];\r\n public tableDataAfterModification: any = [];\r\n\r\n public programmeAppId: any;\r\n public programmeFarmerName: any;\r\n\r\n public crop: any = [];\r\n public grandTotal: any;\r\n public totalarea: any;\r\n public MIAreaCustomerror: any;\r\n\r\n public signaturePath: any;\r\n // crop: any = [\r\n // {\r\n // cropName: 'Wheat',\r\n // cropId: 0,\r\n // },\r\n // {\r\n // cropName: 'Rice',\r\n // cropId: 1,\r\n // },\r\n // {\r\n // cropName: 'Barley',\r\n // cropId: 2,\r\n // },\r\n // ];\r\n\r\n ngOnInit(): void {\r\n this.getIP();\r\n // this.appVerificationTable.filters['Status_Ar'] = [\r\n // { value: 'P', matchMode: 'equals', operator: 'and' },\r\n // ];\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.exportExcel(this.BOQtableData, 'Vendor_BOQ_List');\r\n },\r\n },\r\n {\r\n label: 'Download Pdf',\r\n icon: 'pi pi-fw pi-download',\r\n command: () => {\r\n this.downloadSheetAsPdf(this.BOQtableData, 'Vendor_BOQ_List');\r\n },\r\n },\r\n ];\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n\r\n this.finalEstimationDetails = this._fb.group({\r\n // transOtherCharges: ['', Validators.required],\r\n plantSpacing: ['', Validators.required],\r\n rowSpacing: ['', Validators.required],\r\n latitude: ['', Validators.required],\r\n longitude: ['', Validators.required],\r\n remarks: ['', Validators.required],\r\n crop: ['', Validators.required],\r\n discountRate: [''],\r\n landMapPath: ['', Validators.required],\r\n billCopyPath: ['', Validators.required],\r\n // taxRate: ['', Validators.required],\r\n MIArea: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.min(0),\r\n (control: AbstractControl) => Validators.max(this.miArea)(control),\r\n ],\r\n ],\r\n });\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n \r\n this.selectedYear = res;\r\n this.loadData();\r\n this.appVerificationTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n get finalEstimationControls() {\r\n return this.finalEstimationDetails.controls;\r\n }\r\n\r\n filterCrop(event: any) {\r\n // console.log(event);\r\n const filtered: any[] = [];\r\n const query = event.query;\r\n for (let i = 0; i < this.crop.length; i++) {\r\n const crop = this.crop[i];\r\n if (crop.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n filtered.push(crop);\r\n }\r\n }\r\n\r\n this.filteredCrop = filtered;\r\n // console.log(this.filteredCrop, 'FilteredCrop');\r\n }\r\n\r\n loadData() {\r\n const token: any = JSON.parse(this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'))); \r\n this.vendorRegId = JSON.stringify(token?.officeCode);\r\n let payload = atob(token?.authToken?.split('.')[1]);\r\n this.userId = JSON.parse(payload)?.sub;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.boqService\r\n .getVendorApplicationForMIBOQ(JSON.parse(payload)?.sub, \"Pending\", this.selectedYear)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.userId = JSON.parse(payload)?.sub;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI BOQ Details',\r\n '',\r\n new Date(),\r\n 'Success'\r\n );\r\n\r\n // console.log('Response Data of BOQ table', data);\r\n this.BOQtableData = data;\r\n // this.loader.close();\r\n this.loading = false;\r\n // if (data.length > 0) {\r\n // // this.appVerificationModel = data;\r\n // this.BOQtableData = data;\r\n // }\r\n },\r\n error: (err) => {\r\n this.BOQtableData = [];\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(\r\n this.userId,\r\n 'MI BOQ Details',\r\n '',\r\n new Date(),\r\n err\r\n );\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n\r\n updateDialogtable() {\r\n this.tableDataAfterModification = this.tableData.map((e, i) => ({\r\n ...e,\r\n Amount: e.Price * e.Quantity,\r\n GSTAmount: (e.GST * e.Price * e.Quantity) / 100,\r\n AmountWithGST:\r\n e.Price * e.Quantity + (e.GST * e.Price * e.Quantity) / 100,\r\n id: i,\r\n }));\r\n }\r\n\r\n onUpload(event, formcontrol, uploadElement) {\r\n let file = event.files[0];\r\n let data = new FormData();\r\n data.append('file', file);\r\n\r\n // this._personalDetalSer.uploadFile(data, this.userId, formcontrol)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (resp) => {\r\n // if (resp.statusCode == 200) {\r\n // this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // // console.log(this.finalEstimationDetails);\r\n // // this.onLandMapUpload();\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'File Uploaded with Auto Mode',\r\n // });\r\n // }\r\n // },\r\n // error: (err) => {},\r\n // })\r\n\r\n this.loader.start();\r\n this._personalDetalSer\r\n .uploadFile(data, this.userId, formcontrol)\r\n .subscribe((resp: any) => {\r\n this.loader.close();\r\n // console.log(resp);\r\n if (resp.statusCode == 200) {\r\n this.finalEstimationDetails.patchValue({ [formcontrol]: resp.data });\r\n // console.log(this.finalEstimationDetails);\r\n // this.onLandMapUpload();\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'File Uploaded with Auto Mode',\r\n });\r\n }\r\n });\r\n uploadElement.clear();\r\n }\r\n\r\n updateBOQ(row) {\r\n this.programmeAppId = row.appID;\r\n this.programmeFarmerName = row.FarmerName;\r\n\r\n this.getCropMaster();\r\n if (row.ProgrammeName == 'Portable Sprinkler') {\r\n this.isTransportFree = true;\r\n }\r\n\r\n // console.log('boqROW', row);\r\n let reqBody = {\r\n AppId: row.appID,\r\n VendorRegId: row.Vendor_Code,\r\n ProgramId: row.ProgramID,\r\n };\r\n\r\n this.loader.start();\r\n this.boqService\r\n .getVendorMIBOQ(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('Get Vendor Estimation Details (BOQ)', data);\r\n this.displayBOQDialog = true;\r\n this.loader.close();\r\n\r\n let label: any;\r\n this.crop.forEach((res) => {\r\n if (res.data === data.CropID) {\r\n label = res;\r\n return;\r\n }\r\n });\r\n // console.log('cropName', label);\r\n\r\n this.appId = data.AppID;\r\n this.vendorRegId = data.VendorRegId;\r\n this.programId = data.ProgID;\r\n\r\n this.signaturePath = data.SignaturePath;\r\n // this.vendorAssociateID = data.VandorAssociateID;\r\n // this.tableData = [];\r\n this.tableData = data.EstimationComponentDetail;\r\n this.updateDialogtable();\r\n this.calculatePrice();\r\n // console.log('table data befor modification', this.tableData);\r\n // console.log('table data after modification,', this.tableDataAfterModification);\r\n\r\n this.finalEstimationDetails.patchValue({\r\n // transOtherCharges: data.TransportOtherExpenses,\r\n plantSpacing: data.PlantSpacing,\r\n rowSpacing: data.RowSpacing,\r\n latitude: data.Lat,\r\n longitude: data.Long,\r\n remarks: data.Remarks,\r\n crop: label,\r\n discountRate: data.DiscountRate,\r\n landMapPath: data.LandMapPath,\r\n // taxRate: data.TaxRate,\r\n MIArea: data.MIArea,\r\n });\r\n this.onMIAreaChange();\r\n this.miArea = data.MIArea;\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! MI Estimation not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n getCropMaster() {\r\n this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log('Crop Master', res);\r\n this.crop = res;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n calculatePrice() {\r\n this.estimatedComponentTotal = 0;\r\n this.estimatedGSTTotal = 0;\r\n this.estimatedGrandTotal = 0;\r\n\r\n this.tableDataAfterModification.forEach((element) => {\r\n this.estimatedComponentTotal =\r\n this.estimatedComponentTotal + element.Amount;\r\n\r\n this.estimatedGSTTotal = this.estimatedGSTTotal + element.GSTAmount;\r\n this.estimatedGrandTotal =\r\n this.estimatedGrandTotal + element.AmountWithGST;\r\n });\r\n this.onMIAreaChange();\r\n }\r\n onMIAreaChange() {\r\n this.grandTotal = 0;\r\n let MiArea = this.finalEstimationDetails.value.MIArea\r\n ? this.finalEstimationDetails.value.MIArea\r\n : 0;\r\n if (Number(this.totalarea) < MiArea) {\r\n this.MIAreaCustomerror = true;\r\n this.finalEstimationControls.MIArea.setErrors({\r\n error: 'MI Area should not be greater then former area',\r\n });\r\n } else {\r\n this.MIAreaCustomerror = false;\r\n }\r\n let transPortArea = this.isTransportFree ? 0 : 2500 * MiArea;\r\n let discount = this.finalEstimationDetails.value.discountRate\r\n ? this.finalEstimationDetails.value.discountRate\r\n : 0;\r\n let componentTotal = discount\r\n ? this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discount) / 100\r\n : this.estimatedComponentTotal;\r\n this.grandTotal = componentTotal + transPortArea;\r\n this.estimatedGSTTotal = (componentTotal * 12) / 100;\r\n }\r\n\r\n onCloseDialog() {\r\n // this.finalEstimationDetails.reset();\r\n this.displayBOQDialog = false;\r\n this.isTransportFree = false;\r\n this.isProDataCalculated = false;\r\n }\r\n\r\n onRowEditInit(product) {\r\n this.isOpenforEditing = true;\r\n this.quantity = product.Quantity;\r\n this.clonedRowForEditing = { ...product };\r\n }\r\n\r\n onRowEditSave(product) {\r\n // console.log('this.product', product);\r\n product.Amount = product.Price * product.Quantity;\r\n product.GSTAmount = (product.Price * product.Quantity * product.GST) / 100;\r\n product.AmountWithGST =\r\n product.Price * product.Quantity +\r\n (product.Price * product.Quantity * product.GST) / 100;\r\n this.isOpenforEditing = false;\r\n this.calculatePrice();\r\n // console.log('After editing1', this.tableDataAfterModification);\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: 'Product is updated',\r\n });\r\n }\r\n\r\n onRowEditCancel() {\r\n this.isOpenforEditing = false;\r\n }\r\n\r\n onRowDelete(rowIndex) {\r\n this.tableDataAfterModification = this.tableDataAfterModification.filter(\r\n (q, i) => rowIndex != i\r\n );\r\n this.calculatePrice();\r\n // console.log('data After delete', this.tableDataAfterModification);\r\n }\r\n\r\n submitFinalEstimation() {\r\n let value = this.finalEstimationDetails.value;\r\n\r\n const tableDataToPush: any = [];\r\n\r\n // console.log(\"finalllll\", this.tableDataAfterModification);\r\n this.tableDataForReqBody = this.tableDataAfterModification;\r\n\r\n this.tableDataAfterModification.forEach((row) => {\r\n // let inventoryData = [];\r\n tableDataToPush.push({\r\n catID: row.CatID,\r\n componentID: row.ComponentID,\r\n sizeID: row.SizeID,\r\n quantity: row.Quantity,\r\n autoIdPriceTable: row.AutoIdPriceTable,\r\n inventory: row?.selectedInventory ? row?.selectedInventory : [],\r\n });\r\n });\r\n\r\n // console.log('tableDatatoPush', tableDataToPush);\r\n\r\n let transportOtherExpensesToSubmit: any;\r\n\r\n if (this.isTransportFree) {\r\n transportOtherExpensesToSubmit = 0;\r\n } else {\r\n transportOtherExpensesToSubmit = 2500 * value.MIArea;\r\n }\r\n\r\n let discountRate: number;\r\n if (value.discountRate == '' || value.discountRate == null) {\r\n discountRate = 0;\r\n } else {\r\n discountRate = value.discountRate;\r\n }\r\n let componentAmount =\r\n this.estimatedComponentTotal -\r\n (this.estimatedComponentTotal * discountRate) / 100;\r\n\r\n let finalData = {\r\n appID: this.appId,\r\n vendorRegId: this.vendorRegId,\r\n progID: this.programId,\r\n componentAmount: componentAmount,\r\n //hardcoded\r\n vendorAssociateID: JSON.stringify(this.vendorRegId),\r\n // vendorAssociateID: this.vendorRegId,\r\n transportOtherExpenses: transportOtherExpensesToSubmit,\r\n taxRate: this.estimatedGSTTotal,\r\n // maxSubsidyAmount:\r\n discountRate: discountRate,\r\n miArea: value.MIArea,\r\n landMapPath: value.landMapPath,\r\n billCopyPath: value.billCopyPath,\r\n lat: value.latitude,\r\n long: value.longitude,\r\n plantSpacing: value.plantSpacing,\r\n rowSpacing: value.rowSpacing,\r\n cropID: value.crop.data,\r\n remarks: value.remarks,\r\n network_Id: this.ipAddress,\r\n terminal_Id: this.ipAddress,\r\n estimationComponentDetail: tableDataToPush,\r\n ProData_MaxSubsidy: this.proCalculatedData.maxSubsidy,\r\n };\r\n\r\n // console.log([finalData], 'PostData');\r\n\r\n let reqBody = [finalData];\r\n this.insertVendorBOQ(reqBody);\r\n this.tableDataAfterModification = [];\r\n this.finalEstimationDetails.reset();\r\n this.displayBOQDialog = false;\r\n this.isTransportFree = false;\r\n }\r\n\r\n insertVendorBOQ(reqBody) {\r\n let reqBodyAfterEncypt = {\r\n \"payload\": this.cryptoJsService.EncryptPayload(JSON.stringify(reqBody))\r\n }\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n this.boqService\r\n .insertVendorBOQ(reqBodyAfterEncypt)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'MI BOQ Action', this.programmeAppId, new Date(), data, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n // console.log('VendorMIBOQUpdatedSuccessfull', data);\r\n if (data.startsWith('S')) {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n this.loadData();\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Status',\r\n detail: data,\r\n });\r\n }\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.activityRecordService.activityRecord(this.userId, 'MI BOQ Action', this.programmeAppId, new Date(), err, reqBody.map(val => ({...val, tableDataForReqBody: this.tableDataForReqBody})));\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error! BOQ Estimation Not Added',\r\n });\r\n },\r\n complete: () => {\r\n this.tableDataForReqBody = null;\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'BOQ Estimation Added Successfully',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n public showProDataCalError: boolean = false;\r\n public isProDataCalculated: boolean = false;\r\n public proCalculatedData: any;\r\n\r\n proDataCalculation() {\r\n const tableDataToPush: any = [];\r\n this.tableDataAfterModification.forEach((row) => {\r\n tableDataToPush.push({\r\n cat: JSON.stringify(row.CatID),\r\n // cat: typeof(row.CatID) == 'string' ? row.CatID :JSON.stringify(row.CatID),\r\n component: row.ComponentName,\r\n size: row.Size,\r\n quantity: row.Quantity,\r\n // price: typeof(row.Price) == 'string' ? row.Price :JSON.stringify(row.Price)\r\n price: row.Price,\r\n });\r\n });\r\n\r\n if (!this.finalEstimationControls?.MIArea?.errors?.required) {\r\n this.showProDataCalError = false;\r\n let finalDataToPost = {\r\n estimationComponentDetail: tableDataToPush,\r\n programId: this.programId,\r\n applicationId: this.appId,\r\n vendorId: JSON.stringify(this.vendorRegId),\r\n rowSpacing: this.finalEstimationDetails.value.rowSpacing,\r\n plantSpacing: this.finalEstimationDetails.value.plantSpacing,\r\n area: this.finalEstimationDetails.value.MIArea,\r\n };\r\n let reqBody = finalDataToPost;\r\n\r\n // console.log('final Data to post', reqBody);\r\n this.getMaxSubsidy(reqBody);\r\n } else {\r\n this.showProDataCalError = true;\r\n }\r\n }\r\n\r\n getMaxSubsidy(reqBody) {\r\n this.loader.start();\r\n this.vendorService\r\n .getMaxSubsidyEstimate(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // console.log('getMaxSubsidy', data);\r\n this.proCalculatedData = data;\r\n this.loader.close();\r\n this.isProDataCalculated = true;\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Status',\r\n // detail: data,\r\n // });\r\n },\r\n error: (err) => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: err,\r\n });\r\n },\r\n // complete: () => {\r\n // this.messageService.add({\r\n // severity: 'success',\r\n // summary: 'Success',\r\n // detail: 'Estimation Updated Successfully',\r\n // });\r\n // },\r\n });\r\n }\r\n\r\n selectFarmerApplication(application, statusCode) {\r\n if (application.appID) {\r\n this.router.navigate(['vendor', 'print', this.cryptoJsService.Encrypt(application.appID)]);\r\n // let statusCodeEncrypted = this.cryptoJsService.Encrypt(statusCode);\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)],{ queryParams: { statusCode: statusCodeEncrypted } }));\r\n // window.open(link, '_blank');\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Invalid App ID',\r\n });\r\n }\r\n }\r\n\r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import('xlsx').then((xlsx) => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n 'App ID': d.appID,\r\n 'Farmer Name': d.FarmerName,\r\n Village: d.village,\r\n Block: d.block,\r\n District: d.district,\r\n 'Age Of Application': d.AgeOfApplication,\r\n 'Programme Name': d.ProgrammeName,\r\n 'Land Detail': d.LandDetail,\r\n 'Total Area': d.Total_Area,\r\n PendingCompletedDays: d.PendingCompletedDays,\r\n 'Current status': d.Status_Ar,\r\n Status: d.status,\r\n 'Dept Remarks': d.DeptRemarks,\r\n };\r\n });\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: 'xlsx',\r\n type: 'array',\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'App ID' },\r\n { field: 'FarmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'Village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'AgeOfApplication', header: 'Age Of Application' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'LandDetail', header: 'Land Detail' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'PendingCompletedDays', header: 'Pending Completed Days' },\r\n { field: 'Status_Ar', header: 'Current Status' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'DeptRemarks', header: 'Dept Remarks' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map((col) => ({\r\n title: col.header,\r\n dataKey: col.field,\r\n }));\r\n\r\n import('jspdf').then((jsPDF) => {\r\n import('jspdf-autotable').then((x) => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n });\r\n });\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import('file-saver').then((FileSaver) => {\r\n let EXCEL_TYPE =\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n let EXCEL_EXTENSION = '.xlsx';\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE,\r\n });\r\n saveAs(\r\n data,\r\n fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n rowBackgroundColor(product) {\r\n if (product.Status_Ar == 'P') {\r\n if (product.PendingCompletedDays <= -2) {\r\n return '#ff8080';\r\n } else if (product.PendingCompletedDays == -1) {\r\n return '#ffc966';\r\n }\r\n } else if (product.Status_Ar == 'C' || product.Status_Ar == 'A') {\r\n if (product.PendingCompletedDays >= -1) {\r\n return '#99e699';\r\n } else if (product.PendingCompletedDays <= -2) {\r\n return '#ffb3b3';\r\n }\r\n } else return '#ffffff';\r\n }\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(window.sessionStorage.getItem('ipAddress'));\r\n }else{\r\n this.ipService.getIPAddress().subscribe((res: any) => {\r\n this.ipAddress = res.ip;\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n });\r\n }\r\n }\r\n\r\n onCloseInventoryDialog() {\r\n this.isOpenforEditing = false;\r\n this.dialogBoxForinventory = false;\r\n // this.inventoryDataForGrid = null;\r\n this.totalQuantityUsed = 0;\r\n // this.inventoryRowFilteredData = null;\r\n }\r\n\r\n onRowEditInitForInventory(product) {\r\n this.totalQuantityUsed = 0;\r\n product.inventory = product.inventory.map((val) => ({\r\n ...val,\r\n batchNumber_lotNo: val.batchNumber + '_' + val.lotNo,\r\n quantityUsed: val.quantityUsed ? val.quantityUsed : 0,\r\n }));\r\n // console.log('productForROWEDITINVENTORY', product);\r\n\r\n this.inventoryRowFilteredData=[];\r\n // this.inventoryRowFilteredData = product?.filteredInventory ? product?.filteredInventory: [];\r\n // if (product?.filteredInventory) {\r\n // let total = 0;\r\n // product?.filteredInventory.forEach((val) => {\r\n // total = val?.quantityUsed;\r\n // });\r\n // this.totalQuantityUsed = total;\r\n // }\r\n this.inventoryDataForGrid = product;\r\n // console.log('this.inventoryDataForGrid', this.inventoryDataForGrid);\r\n\r\n // this.inventoryDataForGrid = this.inventoryDataForGrid.map(val => ({\r\n // ...val,\r\n // quantityUsed: val.quantityUsed ? val.quantityUsed : 0\r\n // }))\r\n this.dialogBoxForinventory = true;\r\n }\r\n\r\n onInventoryRowSelect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onInventoryRowUnselect(val) {\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n\r\n onHeaderCheckboxToggle(val) {\r\n // console.log('toggle', val);\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n\r\n if (val?.checked) {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Selected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'info',\r\n summary: 'All Row Unselected',\r\n detail: `Total Selected Row: ${\r\n this.inventoryRowFilteredData?.length\r\n ? this.inventoryRowFilteredData?.length\r\n : 0\r\n }`,\r\n });\r\n }\r\n }\r\n\r\n onEditComplete(row) {\r\n // console.log(\"changesd\", row)\r\n \r\n\r\n // console.log(\"this.inventoryDataForGrid\", this.inventoryDataForGrid)\r\n // console.log(\"inventoryRowFilteredData\", this.inventoryRowFilteredData)\r\n if(this.inventoryRowFilteredData?.length !=0){\r\n this.inventoryRowFilteredData.forEach((val, i) => {\r\n // console.log(val?.batchNumber_lotNo, row?.batchNumber_lotNo)\r\n if(val?.batchNumber_lotNo== row?.batchNumber_lotNo){\r\n this.inventoryRowFilteredData[i]= row;\r\n return;\r\n }\r\n })\r\n }\r\n\r\n\r\n this.totalQuantityUsed = 0;\r\n this.inventoryRowFilteredData.forEach(val => {\r\n this.totalQuantityUsed += val.quantityUsed\r\n })\r\n }\r\n\r\n submitInventoryDetails() {\r\n this.onCloseInventoryDialog();\r\n // console.log('inventoryRowFilteredData', this.inventoryRowFilteredData);\r\n // console.log('inventoryDataForGrid', this.inventoryDataForGrid);\r\n\r\n this.inventoryDataForGrid = [this.inventoryDataForGrid].map((val) => ({\r\n ...val,\r\n // filteredInventory: this.inventoryRowFilteredData,\r\n selectedInventory: this.inventoryRowFilteredData.map((val) => ({\r\n batchNumber: val?.batchNumber,\r\n lotNo: val?.lotNo,\r\n quantityUsed: val?.quantityUsed,\r\n })),\r\n }));\r\n\r\n this.totalQuantityUsed = 0;\r\n if (this.inventoryRowFilteredData?.length == 0) {\r\n this.totalQuantityUsed = 0;\r\n } else {\r\n this.inventoryRowFilteredData.forEach((val) => {\r\n this.totalQuantityUsed += val.quantityUsed;\r\n });\r\n }\r\n\r\n // console.log(this.totalQuantityUsed, 'totalqunatity used')\r\n\r\n this.inventoryDataForGrid[0].Quantity = this.totalQuantityUsed;\r\n this.inventoryDataForGrid[0].Amount =\r\n this.inventoryDataForGrid[0].Price * this.totalQuantityUsed;\r\n this.inventoryDataForGrid[0].GSTAmount =\r\n (this.inventoryDataForGrid[0].Price *\r\n this.totalQuantityUsed *\r\n this.inventoryDataForGrid[0].GST) /\r\n 100;\r\n this.inventoryDataForGrid[0].AmountWithGST =\r\n this.inventoryDataForGrid[0].Price * this.totalQuantityUsed +\r\n (this.inventoryDataForGrid[0].Price *\r\n this.totalQuantityUsed *\r\n this.inventoryDataForGrid[0].GST) /\r\n 100;\r\n\r\n // console.log('finalllll', this.inventoryDataForGrid[0]);\r\n\r\n let index = this.inventoryDataForGrid[0]?.id\r\n ? this.inventoryDataForGrid[0]?.id\r\n : 0;\r\n // console.log(index, '@@@');\r\n if (index != null) {\r\n // console.log('index', index, this.inventoryDataForGrid[0]);\r\n this.tableDataAfterModification[index] = this.inventoryDataForGrid[0];\r\n }\r\n\r\n // console.log(this.tableDataAfterModification, 'final');\r\n\r\n this.calculatePrice();\r\n }\r\n}\r\n\r\n","\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
{{'BILL_OF_QUANTITY_DETAILS'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AGE_OF_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'LAND_DETAIL'| translate}}\r\n \r\n \r\n \r\n \r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n {{'PENDING_COMPLETED_DAYS'| translate}}\r\n \r\n \r\n \r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DEPT_REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VIEW_APPLICATION'| translate}}\r\n\r\n {{'BOQ_ACTION'| translate}}\r\n \r\n \r\n \r\n \r\n {{ product.appID }}\r\n \r\n {{ product.FarmerName | uppercase }}\r\n {{ product.village }}\r\n {{ product.block }}\r\n {{ product.district }}\r\n {{ product.AgeOfApplication }}\r\n {{ product.ProgrammeName }}\r\n {{ product.LandDetail }}\r\n {{ product.Total_Area }}\r\n {{ product.PendingCompletedDays }}\r\n {{ product.Status_Ar }}\r\n {{ product.status }}\r\n {{ product.DeptRemarks }}\r\n {{product.FinYear}}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}}\r\n {{ BOQtableData ? BOQtableData.length : 0 }} {{'VER_APP_ADDED'| translate}}\r\n

\r\n
\r\n
\r\n \r\n
{{'PENDING_MORE_THAN_TWO_DAYS'| translate}}\r\n
\r\n
\r\n \r\n
{{'PENDING_BY_ONE_DAY'| translate}}\r\n
\r\n
\r\n \r\n
{{'BOQ_ON_TIME'| translate}}\r\n
\r\n
\r\n \r\n
{{'DELAYED_APPROVED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n {{'CATEGORY_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'COMPONENT_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'SIZE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'PRICE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'QUANTITY'| translate}}\r\n \r\n \r\n \r\n \r\n {{'AMOUNT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'EDIT'| translate}}\r\n {{'DELETE'| translate}}\r\n \r\n \r\n \r\n \r\n {{ rowIndex + 1 }}\r\n {{ product.CatName }}\r\n {{ product.ComponentName }}\r\n {{ product.Size }}\r\n Rs. {{ product.Price | number: \"1.2-2\" }}\r\n\r\n \r\n \r\n \r\n quantity\r\n }\" pInputText type=\"number\" [(ngModel)]=\"product.Quantity\" min=\"1\" step=\"1\"\r\n onkeypress=\"return event.charCode >= 48 && event.charCode <= 57\" />\r\n
\r\n {{'MUST_BE_GRT_OR_EQUAL_TO_ONE'| translate}}\r\n
\r\n
quantity\">\r\n {{'MUST_BE_LESS_THAN_OR_EQUAL'| translate}} {{ quantity }}\r\n
\r\n
\r\n \r\n {{ product.Quantity }}\r\n \r\n
\r\n \r\n\r\n {{'RS.'| translate}} {{ product.Amount | number: \"1.2-2\" }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_PLANT_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'ON_INVALID_ROW_SPACING'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LATITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LONGITUDE_IS_REQUIRED'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'CROP_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'MI_AREA_IS_REQ'| translate}}\r\n
\r\n
\r\n {{'MI_AREA_MUST_BE_FROM'| translate}}-{{ miArea }}.\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'REMARKS_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'LAND_MAP_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{'BILL_COPY_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n {{'VIEW_IMAGE' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n \r\n
\r\n \r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n

\r\n

\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {{'MI_AREA_SPACING_IS_REQ'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{'BATCH_NUMBER'| translate}}\r\n {{'LOT_NO'| translate}}\r\n {{'REMAINING_QUANTITY'| translate}}\r\n {{'QUANTITY_USED'| translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{product.batchNumber}}\r\n {{product.lotNo}}\r\n {{product.remainingQuantity}}\r\n \r\n \r\n \r\n product.remainingQuantity }\" />\r\n
\r\n {{'Must not be negative'| translate}}\r\n
\r\n
product.remainingQuantity\">\r\n {{'Qunatity must not be greater than Remaining Quantity'| translate}} {{ quantity }}\r\n
\r\n
\r\n \r\n {{ product.quantityUsed }}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'IN_TOTAL_THERE_ARE'| translate}} {{inventoryDataForGrid?.inventory ?\r\n inventoryDataForGrid?.inventory?.length : 0 }}\r\n {{'INVENTORY'| translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'TOTAL_SELECTED_QUANTITY_USED'| translate}} {{ totalQuantityUsed }}\r\n
\r\n
inventoryDataForGrid?.Quantity\">\r\n

{{'TOTAL_SELECTED_QUANTITY_USED_MUST_NOT_BE_GREATER_THAN_QUANTITY'| translate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n
","import { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-boq',\r\n templateUrl: './vendor-boq.component.html',\r\n styleUrls: ['./vendor-boq.component.scss'],\r\n})\r\nexport class VendorBOQComponent implements OnInit {\r\n constructor(\r\n private route: ActivatedRoute, \r\n private cryptoJsService: CryptoJsService, \r\n private router: Router,\r\n private activityRecordService: ActivityRecordService\r\n ) { }\r\n\r\n\r\n items: any[];\r\n autoId: any;\r\n appId: any;\r\n\r\n activeItem: any;\r\n userID: any;\r\n\r\n ngOnInit() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.userID = JSON.parse(payload)?.sub;\r\n\r\n\r\n let parentRoute = this.router.url.split('/')[1];\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = params.autoId;\r\n this.appId = params.appId;\r\n this.items = [\r\n { label: 'Pending', routerLink: `/${parentRoute}/vendor-BOQ/pending`},\r\n { label: 'Current', routerLink: `/${parentRoute}/vendor-BOQ/current` },\r\n { label: 'Further Action Taken', routerLink: `/${parentRoute}/vendor-BOQ/approved` },\r\n \r\n ];\r\n }\r\n );\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n","import { filter } from 'rxjs/operators';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { ApplicationDetailsModel } from 'src/app/models/farmers-application.model';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { FarmersApplicationService } from 'src/app/services/farmers-application.service';\r\nimport { OnFarmMiService } from 'src/app/services/on-farm-mi.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { DepartmentDashboardService } from 'src/app/services/department-dashboard.service';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { JEService } from 'src/app/services/je-services.service';\r\nimport { ChallanService } from 'src/app/services/challan-services.service';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n@Component({\r\n selector: 'app-vendor-consent-form',\r\n templateUrl: './vendor-consent-form.component.html',\r\n styleUrls: ['./vendor-consent-form.component.scss'],\r\n})\r\nexport class VendorConsentFormComponent implements OnInit {\r\n\r\n responsiveOptions: any[] = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 5\r\n },\r\n {\r\n breakpoint: '768px',\r\n numVisible: 3\r\n },\r\n {\r\n breakpoint: '560px',\r\n numVisible: 1\r\n }\r\n ];\r\n \r\n userId: any;\r\n autoId: any;\r\n appDetails: any;\r\n public sanctionLetterData: any;\r\n public appId: any;\r\n public progID: any;\r\n public sanctionLetterDataForTable: any[];\r\n miDetails: any;\r\n PondVerData: any;\r\n PondVerDataStage2: any;\r\n PondVerDataStage3: any;\r\n calculatedSubsidyDataForMIPhys: any;\r\n preEstimateDetails: any;\r\n physicalSurveyDetails: any;\r\n\r\n optionsPreEstimate: any;\r\n overlaysPreEstimate: any[];\r\n showMapPreEstimate: any;\r\n\r\n optionsJE: any;\r\n overlaysJE: any[];\r\n showMapJE: any;\r\n\r\n optionsXEN: any;\r\n overlaysXEN: any[];\r\n showMapXEN: any;\r\n\r\n optionsSDO: any;\r\n overlaysSDO: any[];\r\n showMapSDO: any;\r\n\r\n miSurveyMapoptions: any;\r\n miSurveyoverlays: any[];\r\n miSurveyXENMapoptions: any;\r\n miSurveyXENoverlays: any[];\r\n\r\n applicationDetails: ApplicationDetailsModel = new ApplicationDetailsModel();\r\n applicationStatus: any;\r\n vendorApplicationDetails: any;\r\n // farmerDetails: any;\r\n farmerPreviousSubsidies: any = [];\r\n farmerId: any;\r\n farmerData2: any;\r\n displayFileDialog: boolean;\r\n state: string = 'default';\r\n rotatableFilePath: any;\r\n public totalArea = 0;\r\n displayCustom: boolean;\r\n displayCustom1: boolean;\r\n activeIndex: number = 0;\r\n items: any[];\r\n selectedStatus: any;\r\n remarks: String;\r\n //appId: String;\r\n vendorId: any;\r\n programId: any;\r\n isActionSectionEnabled: boolean;\r\n\r\n public isProDataCalculated: boolean = false;\r\n public proCalculatedData: any;\r\n public statusCode: any;\r\n public isPrintClicked: boolean = false;\r\n public userID: any;\r\n public cropType: any;\r\n public selectedCropType: any;\r\n public selectedCrop: any;\r\n\r\n public totalLandArea: number = 0;\r\n\r\n public existingMIDetails: any;\r\n\r\n //for multiple datasets\r\n public preEstimationDataArray: any = [];\r\n public miEstimationDataArray: any = [];\r\n public miBOQDataArray: any = [];\r\n public physicalSurveyDataArray: any = [];\r\n public sanctionLetterDataArray: any = [];\r\n public physicalSurveyDetailsArray: any = [];\r\n public imgVal: any;\r\n\r\n public surveyStage1JE: any = null;\r\n public surveyStage1XEN: any = null;\r\n public surveyStage2JE: any = null;\r\n public surveyStage2XEN: any = null;\r\n public calStage1JE: any = null;\r\n public calStage1DD: any = null;\r\n public calStage1DA: any = null;\r\n public calStage1DMICADA: any = null;\r\n public calStage1Admin: any = null;\r\n public calStage2JE: any = null;\r\n public calStage2DA: any = null;\r\n public calStage2DD: any = null;\r\n public calStage2DMICADA: any = null;\r\n public calStage2Admin: any = null;\r\n public tankStage3Data: any = null;\r\n public remarksData: any = null;\r\n public t3Attachments: any = null;\r\n public t3VendorDetails: any = null;\r\n public t3AttachmentsPondStage1: any = null;\r\n public t3AttachmentsPondStage2: any = null;\r\n public pondStage3Visibility: any = null;\r\n\r\n public pondS1Exist: boolean = false;\r\n public pondS2Exist: boolean = false;\r\n\r\n \r\n public FSTVDetails: any;\r\n public STVDetails: any;\r\n public STFDetails: any;\r\n public RTFDetails: any;\r\n public PondStage1: any;\r\n public PondStage2: any;\r\n public PondStage3: any;\r\n\r\n public showSubsidyDetails: boolean = false;\r\n public showFarmerShareDepositeDetails: boolean = false;\r\n public farmerShareDepositeDetails: any;\r\n public viewLinkMasked:any\r\n constructor(\r\n private route: ActivatedRoute,\r\n private _dashboardService: DashboardService,\r\n private ofService: OnFarmMiService,\r\n private messageService: MessageService,\r\n private farmerAppSer: FarmersApplicationService,\r\n private sanitizer: DomSanitizer,\r\n private deptDashBoardService: DepartmentDashboardService,\r\n private vendorService: VendorDashboardService,\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService,\r\n private challanMIService: ChallanService,\r\n private jeService: JEService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.getCropMaster();\r\n\r\n this.appId = this.cryptoJsService.DecryptData(this.route.snapshot.paramMap.get('appId'));\r\n\r\n if (!this.appId) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data Error : Cannot Load Form Due to Missing Application Id.',\r\n });\r\n return;\r\n }\r\n // this.vendorId = this.route.snapshot.paramMap.get('vendorId');\r\n // this.programId = this.route.snapshot.paramMap.get('programId');\r\n // this.autoId = this.route.snapshot.paramMap.get('autoId');\r\n // this.userId = this.route.snapshot.paramMap.get('userId');\r\n\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerConfData = new Map(encData);\r\n let farmerData = farmerConfData.get('farmerDetails');\r\n\r\n this.farmerData2 = farmerData;\r\n this.farmerId = farmerData?.['Farmer_ID'];\r\n\r\n if (this.appId) {\r\n this.getApplicationDetails(this.appId);\r\n this.getExistingMIDetails(this.appId);\r\n this.getApplicationStatus(this.appId);\r\n // this.getPondVerDataSatge1(this.appId);\r\n // this.getPondVerDataSatge2(this.appId);\r\n this.getPondVerDataSatge3(this.appId);\r\n this.getGetSubsidyDetails(this.appId);\r\n this.challanPaymentDetails(this.appId);\r\n }\r\n }\r\n\r\n getCropMaster() {\r\n // this.loader.start();\r\n this.vendorService\r\n .getCropMaster()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.cropType = res;\r\n // this.loader.close();\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Crop Master not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n\r\n onClickApp() {\r\n let statusCodeEncrypted = this.cryptoJsService.Encrypt(this.statusCode);\r\n const link = this.router.serializeUrl(\r\n this.router.createUrlTree(\r\n [\r\n 'department',\r\n 'print',\r\n this.appId,\r\n this.vendorId,\r\n this.programId,\r\n this.userId,\r\n this.autoId,\r\n ],\r\n { queryParams: { statusCode: statusCodeEncrypted } }\r\n )\r\n );\r\n window.open(link, '_blank');\r\n }\r\n\r\n // getPastSubsidiesByFarmerId(farmerID) {\r\n // // if (this.farmerId) {\r\n // this.loader.start();\r\n // this.ofService\r\n // .GetFarmerPastSubsidyByFarmerId(farmerID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.farmerPreviousSubsidies = data;\r\n // this.loader.close();\r\n // },\r\n // error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n // });\r\n // },\r\n // });\r\n // // }\r\n // }\r\n\r\n // getPastSubsidiesByMultipleFarmerIds(GroupTableData) {\r\n // let farmerIds = [];\r\n // GroupTableData.forEach((farmer) => {\r\n // farmerIds.push(farmer.FarmerID.toString());\r\n // });\r\n // if (farmerIds.length) {\r\n // this.loader.start();\r\n // this.ofService\r\n // .GetFarmerPastSubsidyByMultipleFarmerIds(farmerIds)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (data) => {\r\n // this.farmerPreviousSubsidies = data;\r\n // this.loader.close();\r\n // },\r\n // error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Farmer Previous Subsidies not loaded.',\r\n // });\r\n // },\r\n // });\r\n // } else {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Group-Farmers Previous Subsidies not Fetched.',\r\n // });\r\n // return;\r\n // }\r\n // }\r\n\r\n getApplicationDetails(appId) {\r\n this.loader.start();\r\n this._dashboardService.getApplicationByAppId(appId).subscribe((res) => {\r\n this.loader.close();\r\n if (res) {\r\n this.applicationDetails = res;\r\n\r\n // res.ListViewFormData = [\r\n // {\r\n // \"AutoId\": 372819,\r\n // \"ProgId\": 2,\r\n // \"VendorId\": \"302\",\r\n // \"User_ID\": \"farmer\"\r\n // },\r\n // {\r\n // \"AutoId\": 372819,\r\n // \"ProgId\": 2,\r\n // \"VendorId\": \"302\",\r\n // \"User_ID\": \"farmer\"\r\n // }\r\n // ]\r\n\r\n if (res.ListViewFormData && res.ListViewFormData.length > 0) {\r\n res.ListViewFormData.forEach((val) => {\r\n let autoId = val?.AutoId;\r\n let progId = val?.ProgId\r\n let userId = val?.User_ID;\r\n let vendorId = val?.VendorId;\r\n\r\n if (autoId!=null && userId!=null) {\r\n this.getCalculatedSubsidyDataForMIPhys(autoId, userId);\r\n }\r\n\r\n if (autoId!=null && progId!=null) {\r\n this.getPreEstimationData(this.appId, progId);\r\n }\r\n\r\n if (this.appId!=null && progId!=null) {\r\n this.getSanctionLetterData(this.appId, progId);\r\n }\r\n\r\n if (vendorId!=null && progId!=null) {\r\n this.getMIEstimationData(this.appId, vendorId, progId);\r\n this.getMIBOQData(this.appId, vendorId, progId);\r\n }\r\n\r\n if (autoId!=null && userId!=null) {\r\n this.getPhysicalSurveyData(autoId, userId);\r\n }\r\n });\r\n }\r\n\r\n if (\r\n this.applicationDetails.FarmerLand &&\r\n this.applicationDetails.FarmerLand.length > 0\r\n ) {\r\n this.applicationDetails.FarmerLand.forEach(\r\n (val) => (this.totalLandArea += parseFloat(val.totalArea))\r\n );\r\n }\r\n\r\n this.totalArea = 0;\r\n if (this.applicationDetails?.New_MI_Datas && this.applicationDetails?.New_MI_Datas.length > 0) {\r\n this.applicationDetails.New_MI_Datas.forEach(\r\n (val) => (this.totalArea += parseFloat(val.totalArea))\r\n );\r\n }\r\n\r\n let farmerId = res.Farmer_ID;\r\n // if (res?.GroupTableData) {\r\n // this.getPastSubsidiesByMultipleFarmerIds(res?.GroupTableData);\r\n // } else {\r\n // this.getPastSubsidiesByFarmerId(farmerId);\r\n // }\r\n if(this.applicationDetails?.FarmerPersonalData?.Aadhar_No){\r\n if(sessionStorage?.getItem('userRole') && (sessionStorage?.getItem('userRole')?.toString() ==='DMICADA' ||sessionStorage?.getItem('userRole')?.toString() ==='DD Associate')){\r\n this.viewLinkMasked=false\r\n \r\n }\r\n else{\r\n this.viewLinkMasked=true\r\n this.applicationDetails.FarmerPersonalData.Aadhar_No=this.maskNumber(this.applicationDetails?.FarmerPersonalData?.Aadhar_No)\r\n this.applicationDetails.FarmerPersonalData.PPP_ID=this.maskNumber(this.applicationDetails?.FarmerPersonalData?.PPP_ID)\r\n }\r\n }\r\n }\r\n },\r\n err => {\r\n this.loader.close();\r\n });\r\n }\r\n\r\n getApplicationStatus(appId) {\r\n // this.loader.start();\r\n this._dashboardService\r\n .getApplicationStatusByAppId(appId)\r\n .subscribe((res) => {\r\n // this.loader.close();\r\n if (res) {\r\n this.applicationStatus = res.replace('Application Status: ', '');\r\n }\r\n });\r\n }\r\n\r\n getPondVerDataSatge1(appId) {\r\n this.jeService\r\n .getPondVerDataByAppIdStage1(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n console.log('Response Data', data);\r\n this.PondVerData = data;\r\n sessionStorage.setItem('pondData', JSON.stringify(data));\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getPondVerDataSatge2(appId) {\r\n this.jeService\r\n .getPondVerDataByAppIdStage2(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if(data?.PondStage2Status == 1){\r\n this.PondVerDataStage2 = data;\r\n }\r\n // sessionStorage.setItem('pondData', JSON.stringify(data));\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getPondVerDataSatge3(appId) {\r\n this.jeService\r\n .getPondVerDataByAppId_SubsidyCalc_Stage3(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n if(res){\r\n this.PondVerDataStage3 = res;\r\n this.surveyStage1JE = res[1][0];\r\n if( this.surveyStage1JE?.IsExist==1){\r\n this.pondS1Exist = true;\r\n }else{\r\n this.pondS1Exist = false;\r\n }\r\n this.surveyStage1XEN = res[0][0];\r\n this.surveyStage2JE = res[3][0];\r\n if( this.surveyStage2JE?.IsExist==1){\r\n this.pondS2Exist = true;\r\n }else{\r\n this.pondS2Exist = false;\r\n }\r\n this.surveyStage2XEN = res[2][0]; \r\n this.calStage1JE = res[5][0];\r\n this.calStage1DD = res[6][0];\r\n this.calStage1DA = res[7][0];\r\n this.calStage1DMICADA = res[8][0];\r\n this.calStage1Admin = res[4][0];\r\n this.calStage2JE = res[10][0];\r\n this.calStage2DD = res[11][0];\r\n this.calStage2DA = res[12][0];\r\n this.calStage2DMICADA = res[13][0];\r\n this.calStage2Admin = res[9][0];\r\n this.tankStage3Data = res[14][0];\r\n this.remarksData = res[15][0];\r\n this.t3Attachments = res[16];\r\n this.t3VendorDetails = res[17][0];\r\n this.t3AttachmentsPondStage1 = res[18];\r\n this.t3AttachmentsPondStage2 = res[19];\r\n // this.pondStage3Visibility = res[18][0];\r\n }else{\r\n this.surveyStage1JE = null;\r\n this.surveyStage1XEN = null\r\n this.surveyStage2JE = null;\r\n this.surveyStage2XEN = null; \r\n this.calStage1JE = null;\r\n this.calStage1DD = null;\r\n this.calStage1DA = null;\r\n this.calStage1DMICADA = null;\r\n this.calStage1Admin = null\r\n this.calStage2JE = null;\r\n this.calStage2DD = null;\r\n this.calStage2DA = null;\r\n this.calStage2DMICADA = null;\r\n this.calStage2Admin = null;\r\n this.tankStage3Data = null;\r\n this.remarksData = null;null \r\n }\r\n // sessionStorage.setItem('pondData', JSON.stringify(data));\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getGetSubsidyDetails(appId) {\r\n this.jeService\r\n .getSubsidyDetails(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n if(res){\r\n this.STFDetails = res[0][0];\r\n this.STVDetails = res[1][0];\r\n this.RTFDetails = res[2][0];\r\n this.FSTVDetails = res[3][0];\r\n this.PondStage1 = res[4][0];\r\n this.PondStage2 = res[5][0];\r\n this.PondStage3 = res[6][0];\r\n if(this.STFDetails?.IsExist == 1 || this.STVDetails?.IsExist == 1 || this.RTFDetails?.IsExist == 1 || this.FSTVDetails?.IsExist == 1\r\n || this.PondStage1?.IsExist == 1 || this.PondStage2?.IsExist == 1 || this.PondStage3?.IsExist == 1){\r\n this.showSubsidyDetails = true;\r\n }else{\r\n this.showSubsidyDetails = false;\r\n }\r\n }else{\r\n this.FSTVDetails = null;\r\n this.STVDetails = null;\r\n this.STFDetails = null;\r\n this.RTFDetails = null;\r\n this.PondStage1 = null;\r\n this.PondStage2 = null;\r\n this.PondStage3 = null;\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data error! Dashboard not loaded.',\r\n // });\r\n },\r\n });\r\n }\r\n\r\n onPrint(divName) {\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n document.body.style.visibility = 'hidden';\r\n document.getElementById(divName).style.visibility = 'visible';\r\n window.print();\r\n document.body.style.visibility = 'visible';\r\n }\r\n\r\n public viewWorkFlowAllStatus: boolean = false;\r\n workFlowAllStatus() {\r\n this.viewWorkFlowAllStatus = true;\r\n // \r\n // this.router.navigate([\r\n // `dashboard/${this.route.snapshot.paramMap.get(\r\n // 'appId'\r\n // )}`,\r\n // ]);\r\n }\r\n\r\n openFileDialog(filePath) {\r\n this.rotatableFilePath = filePath;\r\n this.displayFileDialog = true;\r\n }\r\n\r\n getSafeUrl() {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(\r\n this.rotatableFilePath\r\n );\r\n }\r\n\r\n onCloseDialog() {\r\n this.displayFileDialog = false;\r\n }\r\n\r\n @ViewChild('myname') myname: ElementRef;\r\n rotationAmount = 0;\r\n scalingAmount = 1;\r\n transformImage(direction, scale) {\r\n if (direction) {\r\n this.rotationAmount += direction == 'left' ? -90 : 90;\r\n }\r\n if (scale) {\r\n this.scalingAmount += scale == 'zoom-out' ? -0.1 : 0.1;\r\n }\r\n this.myname.nativeElement.style.transform = `rotate(${this.rotationAmount}deg) scale(${this.scalingAmount})`;\r\n }\r\n\r\n numberEquals(num1, num2) {\r\n return Number(num1) == Number(num2);\r\n }\r\n\r\n // onPrintSanctionLetter(divName) {\r\n // this.isPrintClicked = true;\r\n // var printContents = document.getElementById(divName).innerHTML;\r\n // var originalContents = document.body.innerHTML;\r\n // document.body.innerHTML = printContents;\r\n // window.print();\r\n // document.body.innerHTML = originalContents;\r\n // }\r\n\r\n imageClick(index: number, val) {\r\n this.activeIndex = index;\r\n this.displayCustom = true;\r\n this.imgVal = val;\r\n }\r\n\r\n imageClick1(index: number, val) {\r\n this.activeIndex = index;\r\n this.displayCustom1 = true;\r\n this.imgVal = val;\r\n }\r\n\r\n //pre-estimation\r\n getPreEstimationData(appId, programId) {\r\n if (appId && programId) {\r\n this.deptDashBoardService\r\n .getApplicationDataOfPreEstimation(appId, programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.preEstimateDetails = data;\r\n\r\n if (\r\n this.preEstimateDetails.CropTypeID &&\r\n this.preEstimateDetails.CropId\r\n ) {\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeID) {\r\n // this.selectedCropType = res.label;\r\n let crop = res.children;\r\n crop.forEach((res2) => {\r\n if (res2.data === data.CropId) {\r\n this.preEstimateDetails = {\r\n ...data,\r\n selectedCropType: res?.label,\r\n selectedCrop: res2.label,\r\n };\r\n // this.selectedCrop = res2.label;\r\n }\r\n });\r\n return;\r\n }\r\n });\r\n }\r\n\r\n if (this.preEstimateDetails.listGPSCoordinates.length > 0) {\r\n this.showMapPreEstimate = true;\r\n let locationArray = [];\r\n this.preEstimateDetails.listGPSCoordinates.forEach((e) => {\r\n locationArray.push({ lat: e.Latitude, lng: e.Longitude });\r\n });\r\n this.optionsPreEstimate = {\r\n center: {\r\n lat: locationArray[0].lat,\r\n lng: locationArray[0].lng,\r\n },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n };\r\n let pointLocations = [];\r\n locationArray.forEach((e) => {\r\n pointLocations.push(\r\n new google.maps.Marker({\r\n position: { lat: e.lat, lng: e.lng },\r\n })\r\n );\r\n });\r\n this.overlaysPreEstimate = [\r\n ...pointLocations,\r\n new google.maps.Polygon({\r\n paths: [...locationArray],\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n }),\r\n ];\r\n\r\n this.preEstimateDetails = {\r\n ...this.preEstimateDetails,\r\n overlaysPreEstimate: this.overlaysPreEstimate,\r\n optionsPreEstimate: this.optionsPreEstimate,\r\n };\r\n } else {\r\n this.showMapPreEstimate = false;\r\n }\r\n\r\n this.preEstimationDataArray.push(this.preEstimateDetails);\r\n },\r\n error: () => {},\r\n });\r\n }\r\n }\r\n\r\n getMIEstimationData(appId, vendorId, programId) {\r\n if (appId && vendorId && programId) {\r\n this.deptDashBoardService\r\n .getVendorMIEstimation(this.appId, vendorId, programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data?.CropTypeID && data?.CropID) {\r\n this.cropType.forEach((res) => {\r\n if (res.data === data.CropTypeID) {\r\n // this.selectedCropType = res.label;\r\n let crop = res.children;\r\n crop.forEach((res2) => {\r\n if (res2.data === data.CropID) {\r\n data = {\r\n ...data,\r\n selectedCropType: res?.label,\r\n selectedCrop: res2.label,\r\n };\r\n // this.selectedCrop = res2.label;\r\n }\r\n });\r\n return;\r\n }\r\n });\r\n }\r\n\r\n // if(data?.EstimationComponentDetail && data?.EstimationComponentDetail.length > 0){\r\n // data?.EstimationComponentDetail.map(val => ({\r\n // ...val,\r\n // totalCost: val.Price*val.Quantity\r\n // }))\r\n // let componentTotal = 0;\r\n // data?.EstimationComponentDetail.forEach(val => {\r\n // componentTotal += val.Price*val.Quantity;\r\n // })\r\n\r\n // data = {\r\n // ...data,\r\n // componentTotal: componentTotal\r\n // }\r\n // }\r\n\r\n if(data?.AppID){\r\n this.miEstimationDataArray.push(data);\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getExistingMIDetails(appId){\r\n this._dashboardService.getExistingMIDetails(appId).subscribe((res) =>{\r\n this.existingMIDetails = res;\r\n })\r\n }\r\n\r\n getSanctionLetterData(appId, progID) {\r\n this.challanMIService\r\n .getSanctionLetterData(appId, progID)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.sanctionLetterDataArray.push(res);\r\n },\r\n error: (err) => {\r\n // console.log('error', err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n getMIBOQData(appId, vendorId, programId) {\r\n if (appId && vendorId && programId) {\r\n this.deptDashBoardService\r\n .getVendorMIBOQ(this.appId, vendorId, programId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.appDetails = data;\r\n // this.vendorApplicationDetails = data;\r\n if (data?.BoqStatus == 1) {\r\n this.miBOQDataArray.push(data);\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getPhysicalSurveyData(autoId, userId) {\r\n if (autoId && userId) {\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification(autoId, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.calculatedSubsidyDataForMIPhys = data;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n complete: () => {\r\n // this.loader.start();\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification_CalculatedSubsidy(\r\n autoId,\r\n userId\r\n )\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n if (data['PhySurveyStatus'] == 1) {\r\n this.physicalSurveyDetails = data;\r\n\r\n if (\r\n this.physicalSurveyDetails.listGPSCoordinatesJE.length > 0\r\n ) {\r\n this.showMapJE = true;\r\n let locationArray = [];\r\n this.physicalSurveyDetails.listGPSCoordinatesJE.forEach(\r\n (e) => {\r\n locationArray.push({\r\n lat: e.Latitude,\r\n lng: e.Longitude,\r\n });\r\n }\r\n );\r\n this.optionsJE = {\r\n center: {\r\n lat: locationArray[0].lat,\r\n lng: locationArray[0].lng,\r\n },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n };\r\n let pointLocations = [];\r\n locationArray.forEach((e) => {\r\n pointLocations.push(\r\n new google.maps.Marker({\r\n position: { lat: e.lat, lng: e.lng },\r\n })\r\n );\r\n });\r\n this.overlaysJE = [\r\n ...pointLocations,\r\n new google.maps.Polygon({\r\n paths: [...locationArray],\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n }),\r\n ];\r\n\r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n optionsJE: this.optionsJE,\r\n overlaysJE: this.overlaysJE,\r\n };\r\n } else {\r\n this.showMapJE = false;\r\n }\r\n\r\n if (\r\n this.physicalSurveyDetails.listGPSCoordinatesXEN.length >\r\n 0\r\n ) {\r\n this.showMapXEN = true;\r\n let locationArray = [];\r\n this.physicalSurveyDetails.listGPSCoordinatesXEN.forEach(\r\n (e) => {\r\n locationArray.push({\r\n lat: e.Latitude,\r\n lng: e.Longitude,\r\n });\r\n }\r\n );\r\n this.optionsXEN = {\r\n center: {\r\n lat: locationArray[0].lat,\r\n lng: locationArray[0].lng,\r\n },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n };\r\n let pointLocations = [];\r\n locationArray.forEach((e) => {\r\n pointLocations.push(\r\n new google.maps.Marker({\r\n position: { lat: e.lat, lng: e.lng },\r\n })\r\n );\r\n });\r\n this.overlaysXEN = [\r\n ...pointLocations,\r\n new google.maps.Polygon({\r\n paths: [...locationArray],\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n }),\r\n ];\r\n\r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n optionsXEN: this.optionsXEN,\r\n overlaysXEN: this.overlaysXEN,\r\n };\r\n } else {\r\n this.showMapXEN = false;\r\n }\r\n\r\n if (this.physicalSurveyDetails?.listGPSCoordinatesSDO?.length > 0) {\r\n this.showMapSDO = true;\r\n\r\n let sdoOption = {\r\n center: { lat: 29.0588, lng: 76.0856 },\r\n zoom: 17,\r\n mapTypeId: google.maps.MapTypeId.SATELLITE,\r\n draggable: true,\r\n };\r\n \r\n sdoOption.center = {\r\n \"lat\": this.physicalSurveyDetails?.listGPSCoordinatesSDO[0][0]?.Latitude,\r\n \"lng\": this.physicalSurveyDetails?.listGPSCoordinatesSDO[0][0]?.Longitude\r\n };\r\n let sdoOverlays = [];\r\n \r\n // add marker\r\n this.physicalSurveyDetails?.listGPSCoordinatesSDO.forEach((arr, tableIndex) => {\r\n arr.forEach((row, index) => {\r\n sdoOverlays.push(\r\n new google.maps.Marker({\r\n position: { lat: row?.Latitude, lng: row?.Longitude },\r\n title: `${row?.CornerID}`,\r\n draggable: false,\r\n crossOnDrag: false\r\n })\r\n );\r\n });\r\n })\r\n \r\n // add overlay\r\n this.physicalSurveyDetails?.listGPSCoordinatesSDO.forEach(arr => {\r\n let arr1 = arr.map(val => ({\r\n lat: val?.Latitude,\r\n lng: val?.Longitude\r\n }))\r\n sdoOverlays.push(\r\n new google.maps.Polygon({\r\n paths: arr1,\r\n strokeOpacity: 0.5,\r\n strokeWeight: 1,\r\n fillColor: '#1976D2',\r\n fillOpacity: 0.35,\r\n })\r\n );\r\n })\r\n \r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n newGPSsdoArray: {\r\n gpsArray : this.physicalSurveyDetails?.listGPSCoordinatesSDO,\r\n overlaysSDO : sdoOverlays,\r\n optionsSDO: sdoOption\r\n } \r\n } \r\n \r\n } else {\r\n this.showMapSDO = false;\r\n }\r\n\r\n if (this.calculatedSubsidyDataForMIPhys) {\r\n this.physicalSurveyDetails = {\r\n ...this.physicalSurveyDetails,\r\n calculatedSubsidyDataForMIPhys:\r\n this.calculatedSubsidyDataForMIPhys,\r\n };\r\n this.physicalSurveyDetailsArray.push(\r\n this.physicalSurveyDetails\r\n );\r\n } else {\r\n this.physicalSurveyDetailsArray.push(\r\n this.physicalSurveyDetails\r\n );\r\n }\r\n }\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Form Not Loaded' });\r\n },\r\n });\r\n },\r\n });\r\n }\r\n }\r\n\r\n getCalculatedSubsidyDataForMIPhys(autoId, userId) {\r\n this.jeService\r\n .getApplicationDataForPhysicalVerification(autoId, userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.calculatedSubsidyDataForMIPhys = data;\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n // this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data Error : Vendor Consent Form Not Loaded' });\r\n },\r\n });\r\n }\r\n\r\n challanPaymentDetails(appId){\r\n // this.loader.start();\r\n let sub = this.deptDashBoardService \r\n .getChallanPaymentDetails(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n if(data && data.length>0){\r\n this.showFarmerShareDepositeDetails = true;\r\n this.farmerShareDepositeDetails = data[0][0];\r\n }else{\r\n this.showFarmerShareDepositeDetails = false;\r\n this.farmerShareDepositeDetails = [];\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: 'Data Not Found',\r\n // });\r\n }\r\n },\r\n error: (err) => {\r\n this.showFarmerShareDepositeDetails = false;\r\n this.farmerShareDepositeDetails = [];\r\n // this.loader.close();\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n maskNumber(number:any) {\r\n let id = number.toString();\r\n if(id){\r\n return id.slice(0, -4).replace(/./g, 'X') + id.slice(-4); //regex used here\r\n }\r\n return null\r\n \r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
{{'FARMER_APPLICATION_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

{{'FARMER_APPLICATION_FORM_FOR_MICRO_IRRIGATION_SCHEME' | translate}}

\r\n

{{'REG_DATE' | translate}} : {{ applicationDetails?.RegDate | date: \"mediumDate\" }}

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'APPLICATION_NO' | translate}}

\r\n

{{ applicationDetails.APP_ID }}

\r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ applicationDetails?.FincialYear }}

\r\n
\r\n

{{'SCHEME_NAME' | translate}}

\r\n

\r\n {{ applicationDetails.Scheme_Code }}\r\n

\r\n
\r\n
\r\n\r\n \r\n \r\n
{{'PERSONAL_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FARMER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Name }}

\r\n
\r\n

{{'FATHER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Father_name }}

\r\n
\r\n

{{'MOTHER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Mother_Name }}

\r\n
\r\n

{{'SEX' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Gender }}

\r\n
\r\n

{{'DATE_OF_BIRTH' | translate}}

\r\n

\r\n {{\r\n applicationDetails.FarmerPersonalData.DOB\r\n | date: \"mediumDate\"\r\n }}\r\n

\r\n
\r\n

{{'MOBILE' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Mobile }}

\r\n
\r\n

{{'EMAIL' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Email_ID }}

\r\n
\r\n

{{'AADHAR_NO' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Aadhar_No }}

\r\n \r\n
\r\n

{{'VILLAGE' | translate}}

\r\n

\r\n {{ applicationDetails.FarmerPersonalData.Village_Code }}\r\n

\r\n
\r\n

{{'BLOCK' | translate}}

\r\n

\r\n {{ applicationDetails.FarmerPersonalData.Block }}\r\n

\r\n
\r\n

{{'DISTRICT' | translate}}

\r\n

\r\n {{ applicationDetails.FarmerPersonalData.District }}\r\n

\r\n
\r\n

{{'CASTE' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Caste_Code }}

\r\n \r\n
\r\n

{{'ADDRESS' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Address }}

\r\n
\r\n

{{'PINCODE' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.Pin_Code }}

\r\n
\r\n

{{'PPP_ID' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.PPP_ID }}

\r\n \r\n
\r\n

{{'MFMB_NO' | translate}}

\r\n

{{ applicationDetails.FarmerPersonalData.MFMBNo }}

\r\n
\r\n

{{'APPLICATION_TYPE' | translate}}

\r\n

{{ applicationDetails?.AppType }}

\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n 0\r\n \">\r\n
{{'MEMBER_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'MEMBER_NO' | translate}}{{'NAME' | translate}}{{'FATHER_NAME' | translate}}{{'MOTHER_NAME' | translate}}{{'GENDER' | translate}}{{'DATE_OF_BIRTH' | translate}}{{'CASTE' | translate}}{{'ADDRESS' | translate}}{{'PPP_ID' | translate}}{{'ID_PROOF_FILE_PATH' | translate}}{{'AADHAR_COPY' | translate}}
{{ item.memberID }}{{ item.Name }}{{ item.Father_name }}{{ item.Mother_Name }}{{ item.Gender }}{{ item.DOB }}{{ item.Caste_Code }}{{ item.Address }}{{ item.PPP_ID }}{{'VIEW_ID_PROOF' | translate}}{{'VIEW_AADHAR_COPY' | translate}}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'LAND_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'MEMBER_SNO' | translate}}{{'OWNER_NAME' | translate}}{{'VILLAGE' | translate}}{{'KHEWAT' | translate}}{{'KHEWAT_AREA' | translate}}{{'KHEWAT_BHAG' | translate}}{{'OWNER_HISSA_IN_KHEWAT' | translate}}{{'MORABBA_NO' | translate}}{{'KILLA_NO' | translate}}{{'TOTAL_KANALS' | translate}}{{'TOTAL_MARLAS' | translate}}{{'APPLIED_KANALS' | translate}}{{'APPLIED_MARLAS' | translate}}{{'APPLIED_AREA' | translate}}{{'CROP_TYPE' | translate}}{{'YEAR' | translate}}{{'LAND_DOC' | translate}}
{{ item?.memberID }}{{ item?.OwnerName }}{{ item?.Village }}{{ item?.Khewat }}{{ item?.KhewatArea }}{{ item?.Bhag }}{{ item?.OwnerHissa }}{{ item?.morabbaNo }}{{ item?.killaNo }}{{ item?.TotalkanalinKhasra }}{{ item?.TotalmarlainKhasra }}{{ item?.kanal }}{{ item?.marla }}{{ item?.totalArea }}{{ item?.cropType }}{{ item?.Year }}\r\n \r\n
\r\n

{{'N/A' |\r\n translate}}

\r\n
\r\n
0 ? 3 : 1\">{{'GRAND_TOTAL_AREA' | translate}}{{ totalLandArea | number : '1.2-2'}} {{'ACRE' | translate}}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0 \">\r\n
{{'EXISTING_MI_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'PROGRAM_NAME' | translate}}{{'MORABBA_NO' | translate}}{{'KILLA_NO' | translate}}{{'TOTAL_AREA_IN_ACRE' | translate}}{{'IS_SUBSIDY_AVAIL' | translate}}{{'YEAR' | translate}}
{{ item?.ProgrammeName }}{{ item?.Morabba_No }}{{ item?.Killa_No }}{{ item?.TotalArea }}{{ item?.Is_Subsidy_Avail }}{{ item?.Year_subsidy }}
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'BANK_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'BANK_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerBank.bankName }}

\r\n
\r\n

{{'ACCOUNT_NO' | translate}}

\r\n

{{ applicationDetails.FarmerBank.accoNumber }}

\r\n
\r\n

{{'ACCOUNT_HOLDER_NAME' | translate}}

\r\n

{{ applicationDetails.FarmerBank.accoHolderName }}

\r\n
\r\n

{{'IFSC_CODE' | translate}}

\r\n

{{ applicationDetails.FarmerBank.ifcsCode }}

\r\n
\r\n

{{'PASSBOOK_IMAGE' | translate}}

\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'ON_FARM_POND_TANK_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'MORABBA_NO' | translate}}{{'KILLA_NO' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}{{'TOP_SIZE' | translate}}{{'BOTTOM_SIZE' | translate}}{{'DEPTH' | translate}}{{'WATER_CAPACITY' | translate}}{{'TOTAL_COST' | translate}}{{'SCAN_COPY' | translate}}
{{ item.morabbaNo }}{{ item.killaNo }}{{ item.latitude }}{{ item.longitude }}{{ item.topSize }}{{ item.bottomSize }}{{ item.dept }}{{ item.waterCapacity }}{{ item.totalCost }}\r\n {{'VIEW_SIGNATURED_COLLECTIVE_DECLARATION' | translate}}\r\n {{'EMPTY' | translate}}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'ON_FARM_SOLAR_PUMP' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CONTROLLER_TYPE' | translate}}{{'PUMP_CATEGORY' | translate}}{{'TYPE' | translate}}{{'PUMP_CAPACITY' | translate}}{{'FARMER_SHARE' | translate}}{{'PRIMARY_VENDOR' | translate}}{{'SECONDARY_VENDOR' | translate}}
{{ item.controlerType }}{{ item.pumpCategory }}{{ item.type }}{{ item.pumpCapacity }}{{ item.farmerShare }}{{ item.primaryVendor }}{{ item.secondaryVendor }}
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
\r\n {{'ON_FARMER_MI_COMPONENTS_AND_VENDOR_DETAILS' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'PROGRAMME_NAME' | translate}}{{'LAND_DATA' | translate}}{{'VENDOR_NAME' | translate}}{{'TOTAL_AREA_IN_ACRE' | translate}}
{{ item.programName }}{{ item.landData }}{{ item.miVendorName }}{{ item.totalArea }}
\r\n\r\n
\r\n

\r\n {{'GRAND_TOTAL_AREA' | translate}}: {{ totalArea | number: \"1.2-2\" }} {{ 'ACRE' | translate}} \r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n 0\r\n \">\r\n
{{'WATER_COURSE_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CANAL' | translate}}{{'OUTLET' | translate}}{{'WORK_TYPE' | translate}}
{{ item?.Canal_Outlet_Name }}{{ item?.RD }}{{ item?.WorkTypeName }}
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
0\">\r\n
\r\n

{{'PRE_ESTIMATE_SURVEY' | translate}}

\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n

{{'APP_ID' | translate}}

\r\n

{{ preEstimateDetails?.AppID }}

\r\n
\r\n

{{'PROGRAMME_NAME' | translate}}

\r\n

{{ preEstimateDetails?.ProgramName }}

\r\n
\r\n

{{'SOIL_TYPE' | translate}}

\r\n

{{ preEstimateDetails?.SoilType }}

\r\n
\r\n

{{'CROP_TYPE' | translate}}

\r\n

\r\n {{ preEstimateDetails?.selectedCropType }}\r\n

\r\n
\r\n

{{'CROP_NAME' | translate}}

\r\n

\r\n {{ preEstimateDetails?.selectedCrop }}\r\n

\r\n
\r\n

{{'WATER_SOURCE' | translate}}

\r\n

{{ preEstimateDetails?.WaterSource }}

\r\n
\r\n

{{'WATER_PRESSURE' | translate}}

\r\n

{{ preEstimateDetails?.WaterPressure }}

\r\n
\r\n

{{'WATER_QUALITY' | translate}}

\r\n

{{ preEstimateDetails?.WaterQuality }}

\r\n
\r\n

{{'WATER_REQ' | translate}}

\r\n

{{ preEstimateDetails?.WaterQuantity }}

\r\n
\r\n

{{'PH' | translate}}

\r\n

{{ preEstimateDetails?.PH }}

\r\n
\r\n

{{'EC' | translate}}

\r\n

{{ preEstimateDetails?.EC }}

\r\n
\r\n

{{'DATE_OF_SURVEY' | translate}}

\r\n

{{ preEstimateDetails?.DateOfSurvey }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ preEstimateDetails?.PlantSpacing }}

\r\n
\r\n

{{'ROW_SPACING' | translate}}

\r\n

{{ preEstimateDetails?.RowSpacing }}

\r\n
\r\n
0\">\r\n
\r\n {{'LIST_GPS_COORDINATES' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
{{'LIST_IMAGE_PATH' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'MI_ESTIMATION' | translate}}

\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n
{{'ESTIMATION_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'VENDOR_NAME' | translate}}

\r\n

{{ vendorApplicationDetails?.VendorName }}

\r\n
\r\n

{{'PROGRAMME_NAME' | translate}}

\r\n

{{ vendorApplicationDetails?.ProgrammeName }}

\r\n
\r\n

{{'FARMER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.FarmerShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'COMPONENT_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.ComponentAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'DISCOUNT_RATE' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.DiscountRate | number: \"1.2-2\" }}

\r\n
\r\n

{{'OTHER_TRANSPORT_EXPENSES' | translate}}

\r\n

\r\n {{ 'INR_SYMBOL' | translate }}{{ vendorApplicationDetails?.TransportOtherExpenses | number: \"1.2-2\" }}\r\n

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ vendorApplicationDetails?.MIArea }}

\r\n
\r\n

{{'LAND_MAP_PATH' | translate}}

\r\n

\r\n {{ \"VIEW_DOC\" | translate}}\r\n

\r\n
\r\n

{{'SIGNATURE' | translate}}

\r\n

\r\n {{ \"VIEW_DOC\" | translate}}\r\n

\r\n
\r\n

{{'CROP_TYPE' | translate}}

\r\n

{{ vendorApplicationDetails?.selectedCropType }}

\r\n
\r\n

{{'CROP_NAME' | translate}}

\r\n

{{ vendorApplicationDetails?.selectedCrop }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ vendorApplicationDetails?.PlantSpacing }}

\r\n
\r\n

{{'ROW_SPACING' | translate}}

\r\n

{{ vendorApplicationDetails?.RowSpacing }}

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{ vendorApplicationDetails?.Remarks }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n 0\r\n \">\r\n
{{'ESTIMATIONS_COMPONENT_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CAT_NAME' | translate}}{{'COMPONENT_NAME' | translate}}{{'SIZE' | translate}}{{'PRICE' | translate}}{{'QUANTITY' | translate}}{{'TOTAL_COST_IN_INR' | translate}}
{{ item.CatName }}{{ item.ComponentName }}{{ item.Size }}{{ 'INR_SYMBOL' | translate }}{{ item.Price }}{{ item.Quantity }}{{ 'INR_SYMBOL' | translate }}{{ item.Price*item.Quantity | number: \"1.2-2\" }}
\r\n
\r\n

\r\n {{'COMPONENT_TOTAL' | translate}}: {{ 'INR_SYMBOL' | translate }}{{\r\n vendorApplicationDetails?.ComponentAmount/(1-vendorApplicationDetails?.DiscountRate/100) | number:\r\n \"1.2-2\" }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'FARMER_SHARE_DEPOSIT_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'REMITTER_NAME' | translate}}

\r\n

{{ farmerShareDepositeDetails?.RemitterName }}

\r\n
\r\n

{{'CREDIT_DATE_TIME' | translate}}

\r\n

{{ farmerShareDepositeDetails?.CreditDateTime | date:'medium' }}

\r\n
\r\n

{{'FROM_ACCOUNT_NO' | translate}}

\r\n

{{ farmerShareDepositeDetails?.FromAccountNumber }}

\r\n
\r\n

{{'UTR' | translate}}

\r\n

{{ farmerShareDepositeDetails?.UTR }}

\r\n
\r\n

{{'DEPOSIT_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ farmerShareDepositeDetails?.Deposit_Amount }}

\r\n
\r\n

{{'REFERENCE_ID' | translate}}

\r\n

{{ farmerShareDepositeDetails?.ReferenceID }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'SANCTION_LETTER' | translate}}

\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"footer\r\n
\r\n
\r\n {{'SANCTION_LETTER' | translate}} \r\n
\r\n {{'HARYANA' | translate}}
\r\n {{'FINANCIAL_YEAR_2022_2023' | translate}} \r\n
\r\n
\r\n\r\n
\r\n {{'BASED_ON_DOCUMENTS' | translate}} {{ sanctionLetterData?.FarmerName }} {{'SON_OF' |\r\n translate}}\r\n {{ sanctionLetterData?.FatherName }} {{'VILLAGE' | translate}}\r\n {{ sanctionLetterData?.Village }} {{'DISTRICT' | translate}}\r\n {{ sanctionLetterData?.District }} {{'SANCTION_MSG' | translate}}:-\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'APPLICATION_ID' | translate}}

\r\n

{{ sanctionLetterData?.AppID }}

\r\n
\r\n

{{'AREA_IN' | translate}}

\r\n

{{ sanctionLetterData?.Area }}

\r\n
\r\n

{{'KHASRA_NO_OR_KILLA_NO' | translate}}

\r\n

{{ sanctionLetterData?.KhasraAndKillaNo }}

\r\n
\r\n

{{'CROP' | translate}}

\r\n

{{ sanctionLetterData?.CropName }}

\r\n
\r\n

{{'SPACING_MTS' | translate}}

\r\n

{{ sanctionLetterData?.Spacing }}

\r\n
\r\n

{{'TYPE_OF_MIS' | translate}}

\r\n

{{ sanctionLetterData?.TypeOfMIS }}

\r\n
\r\n

*{{'ESTIMATED_COST_OF_SYSTEMS' | translate}}

\r\n

{{ \"INR_SYMBOL\" | translate }}{{ sanctionLetterData?.EstimatedCost | number: \"1.2-2\" }}

\r\n
\r\n

{{'ESTIMATED_FARMER_SHARE' | translate}}

\r\n

{{ \"INR_SYMBOL\" | translate }}{{ sanctionLetterData?.EstimatedFarmerShare | number: \"1.2-2\" }}

\r\n
\r\n

{{'SUBSIDY_SHARE_AS_PER_SCHEME' | translate}}

\r\n

{{ \"INR_SYMBOL\" | translate }}{{ sanctionLetterData?.SubsidyShare | number: \"1.2-2\" }}

\r\n
\r\n

{{'FARMER_TYPE' | translate}}

\r\n

{{ sanctionLetterData?.FarmerType }}

\r\n
\r\n

{{'CATEGORY' | translate}}

\r\n

{{ sanctionLetterData?.Category }}

\r\n
\r\n

\r\n {{'AMOUNT_OF_FARMER_SHARE' | translate}}: {{ \"INR_SYMBOL\" | translate }}\r\n {{ sanctionLetterData?.EstimatedFarmerShare }}\r\n

\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{'BANK_ACCOUNT_DETAILS' | translate}}\r\n
\r\n\r\n
\r\n

\r\n {{'NAME_OF_FARMER_AS_IN_BANK_ACCOUNT' | translate}}:\r\n {{ sanctionLetterData?.NameOfFarmerAsOnBankAcc }}\r\n

\r\n

{{'NAME_OF_BANK' | translate}}: {{ sanctionLetterData?.NameOfBank }}

\r\n

{{'IFSC_CODE' | translate}}: {{ sanctionLetterData?.IFSCCode }}

\r\n

{{'ACCOUNT_NO'| translate}}.: {{ sanctionLetterData?.AccountNo }}

\r\n

{{'BRANCH_NAME' | translate}}: {{ sanctionLetterData?.BranchName }}

\r\n
\r\n\r\n
\r\n

{{'TO_' | translate}}

\r\n
\r\n

\r\n {{'SRI_SMT' | translate}}, {{ sanctionLetterData?.FarmerName }} S/o\r\n {{ sanctionLetterData?.FatherName }} Vill.\r\n {{ sanctionLetterData?.Village }} District\r\n {{ sanctionLetterData?.District }}\r\n

\r\n

{{'REGISTERED_MANUFACTURER' | translate}} {{ sanctionLetterData?.VendorName }}

\r\n

{{'DISTRICT_OFFICER_INCHARGE_OF_MI' | translate}} {{ sanctionLetterData?.XENName }} \r\n (XEN {{ sanctionLetterData?.XENDistrict }})\r\n

\r\n
\r\n
\r\n
\r\n
\r\n

\r\n *{{'NOTE' | translate}}: {{\"AMOUNT_OF_ASSISTANCE_PHYSICAL_VERIFICATION\" | translate}}.
\r\n                  \r\n {{'APPROVED_MAX_ASSISTANCE' | translate}}.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'MI_BOQ' | translate}}

\r\n
\r\n
\r\n \r\n
{{'BOQ_DETAILS' | translate}}
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'PROGRAMME_NAME' | translate}}

\r\n

{{ appDetails?.ProgrammeName }}

\r\n
\r\n

{{'FARMER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.FarmerShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'BILLED_COMPONENT_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.ComponentAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'BILL_COPY' | translate}}

\r\n

\r\n {{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n

{{'DISCOUNT_RATE' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.DiscountRate | number: \"1.2-2\" }}

\r\n
\r\n

{{'OTHER_TRANSPORT_EXPENSES' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ appDetails?.TransportOtherExpenses | number: \"1.2-2\" }}

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ appDetails?.MIArea }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ appDetails?.PlantSpacing }}

\r\n
\r\n

{{'ROW_SPACING' | translate}}

\r\n

{{ appDetails?.RowSpacing }}

\r\n
\r\n

{{'LAND_MAP_PATH' | translate}}

\r\n

\r\n {{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{ appDetails?.Remarks }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n 0\r\n \">\r\n
{{'BOQ_COMPONENT_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\">\r\n \r\n \r\n \r\n
{{'CAT_NAME' | translate}}{{'COMPONENT_NAME' | translate}}{{'SIZE' | translate}}{{'PRICE' | translate}}{{'QUANTITY' | translate}}{{'TOTAL_COST_IN_INR' | translate}}
{{ item.CatName }}{{ item.ComponentName }}{{ item.Size }}{{ 'INR_SYMBOL' | translate }}{{ item.Price }}{{ item.Quantity }}{{ 'INR_SYMBOL' | translate }}{{ item.Price*item.Quantity | number: \"1.2-2\" }}
\r\n
{{item.ComponentName}} - Inventory\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Lot NoBatch NoQuantity UsedRemaining Quantity
{{rowdata.lotNo}}{{rowdata.batchNumber}}{{rowdata.QuantityUsed}}{{rowdata.remainingQuantity}}
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{'COMPONENT_TOTAL' | translate}}: {{ 'INR_SYMBOL' | translate }}{{ appDetails?.ComponentAmount/(1-appDetails?.DiscountRate/100)\r\n | number: \"1.2-2\" }} \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n\r\n \r\n
0\">\r\n
\r\n

{{'MI_PHYSICAL_SURVEY/VERIFICATION' | translate}}

\r\n
\r\n
\r\n \r\n
\r\n {{'MI_SURVEY_DETAILS' | translate}}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n

{{'TOTAL_COST_OF_VERIFICATION' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.TotalCostVerification | number: \"1.2-2\" }}

\r\n
\r\n

{{'FARMER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.FarmerShare | number: \"1.2-2\" }}

\r\n
\r\n

{{'TRANSPORT_OTHER_CHARGES' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.BilledTransportAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ physicalSurveyDetails?.MIArea | number: \"1.2-2\" }}

\r\n
\r\n

{{'TOTAL_COST_IN_INR' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.TotalCostVerification | number: \"1.2-2\" }}

\r\n
\r\n

{{'CHALLAN_TYPE' | translate}}

\r\n

\r\n {{ physicalSurveyDetails?.ChallanType }}\r\n

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ physicalSurveyDetails?.PlantSpacing | number: \"1.2-2\" }}

\r\n
\r\n

{{'PLANT_SPACING' | translate}}

\r\n

{{ physicalSurveyDetails?.RowSpacing | number: \"1.2-2\" }}

\r\n
\r\n

{{'MAX_SUBSIDY' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.ProData_MaxSubsidy | number: \"1.2-2\"}}

\r\n
\r\n

{{'LAND_DETAILS' | translate}}

\r\n

{{ physicalSurveyDetails?.LandDetail }}

\r\n
\r\n

{{'JE_NAME' | translate}}

\r\n

{{ physicalSurveyDetails?.JEName }}

\r\n
\r\n

{{'XEN_NAME' | translate}}

\r\n

{{ physicalSurveyDetails?.XENName }}

\r\n
\r\n

{{'JE_REMARKS' | translate}}

\r\n

{{ physicalSurveyDetails?.JERemarks }}

\r\n
\r\n

{{'XEN_REMARKS' | translate}}

\r\n

{{ physicalSurveyDetails?.XENRemarks }}

\r\n
\r\n

{{'SURVEY_TYPE_(XEN)' | translate}}

\r\n

{{ physicalSurveyDetails?.SurveyType == 0 ? \"From Office\": \"From Field\" }}

\r\n
\r\n
\r\n
\r\n\r\n \r\n 0\r\n \">\r\n
{{'MI_SURVEY_COMPONENT_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CAT_NAME' | translate}}{{'COMPONENT_NAME' | translate}}{{'SIZE' | translate}}{{'PRICE' | translate}}{{'QUANTITY' | translate}}{{'TOTAL_COST_IN_INR' | translate}}
{{ item.ProgrammeName }}{{ item.component }}{{ item.size }}{{ 'INR_SYMBOL' | translate }}{{ item.Price }}{{ item.ActualQuantity }}{{ 'INR_SYMBOL' | translate }}{{ item.Price*item.ActualQuantity }}
\r\n
\r\n

\r\n {{'COMPONENT_TOTAL' | translate}}: {{ 'INR_SYMBOL' | translate }}{{ (physicalSurveyDetails?.TotalCostVerification -\r\n physicalSurveyDetails?.BilledTransportAmount) | number: \"1.2-2\" }} \r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
0\">\r\n
0\">\r\n {{'LIST_GPS_COORDINATES_JE' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
0\">{{'LIST_IMAGE_PATH_JE' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\">\r\n
0\">\r\n {{'LIST_GPS_COORDINATES_SDO' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
0\">{{'LIST_IMAGE_PATH_SDO' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\">\r\n
0\">\r\n {{'LIST_GPS_COORDINATES_XEN' | translate}}\r\n
\r\n
\r\n
Table {{ i + 1}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{'CORNER_ID' | translate}}{{'LATITUDE' | translate}}{{'LONGITUDE' | translate}}
{{item.CornerID}}{{item.Latitude}}{{item.Longitude}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
0\">{{'LIST_IMAGE_PATH_XEN' | translate}}
\r\n
\r\n
\r\n image\r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'MI_CALCULATED_SUBSIDY_DETAIL' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.StateShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.CenterShareAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'SUBSIDY_TO_FARMER_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.SubsidyToFarmerAmount | number: \"1.2-2\" }}

\r\n
\r\n

{{'SUBSIDY_TO_VENDOR_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.SubsidyToVendorAmount }}

\r\n
\r\n

{{'FARMER_REFUND_AMOUNT' | translate}}

\r\n

{{ 'INR_SYMBOL' | translate }}{{ physicalSurveyDetails?.calculatedSubsidyDataForMIPhys?.FarmerRefundAmount }}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
{{'TANK_STAGE1' | translate}}
\r\n
\r\n
\r\n \r\n
{{'TANK_STAGE1_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{PondVerData?.topLength | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{PondVerData?.topBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{PondVerData?.bottomLength | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{PondVerData?.bottomBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{PondVerData?.topSize | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{PondVerData?.bottomSize | number : '1.2-2'}}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{PondVerData?.depth | number : '1.2-2'}}

\r\n
\r\n

{{'VOLUME_EARTH_WORK' | translate}}

\r\n

{{PondVerData?.VolumeEarthWork | number : '1.2-2'}}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{PondVerData?.estimateCost | number : '1.2-2'}}

\r\n
\r\n

{{'LATITUDE' | translate}}

\r\n

{{PondVerData?.tankLat}}

\r\n
\r\n

{{'LONGITUDE' | translate}}

\r\n

{{PondVerData?.tankLng}}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{PondVerData?.ActualSubsidy_Stage1 | number : '1.2-2'}}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{PondVerData?.UserID}}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerData?.StateShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerData?.CenterShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{PondVerData?.Remarks}}

\r\n
\r\n

{{'JE_REMARKS' | translate}}

\r\n

{{PondVerData?.JERemarks}}

\r\n
\r\n

{{'XEN_REMARKS' | translate}}

\r\n

{{PondVerData?.XENRemarks}}

\r\n
\r\n

{{'DA_REMARKS' | translate}}

\r\n

{{PondVerData?.DARemarks}}

\r\n
\r\n

{{'DMICADA_REMARK' | translate}}

\r\n

{{PondVerData?.DMICADAReamrks}}

\r\n
\r\n

{{'ADMIN_REMARK' | translate}}

\r\n

{{PondVerData?.AdminRemarks}}

\r\n
\r\n

{{'UPLOADED_COPY' | translate}}

\r\n

{{'VIEW' | translate}}

\r\n
\r\n
\r\n
\r\n\r\n \r\n
{{'TANK_STAGE1_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
{{'TANK_STAGE2' | translate}}
\r\n
\r\n
\r\n \r\n
{{'TANK_STAGE2_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'TYPE_OF_POND' | translate}}

\r\n

{{PondVerDataStage2?.TypeOfPond}}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{PondVerDataStage2?.topLength | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{PondVerDataStage2?.topBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{PondVerDataStage2?.bottomLength | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{PondVerDataStage2?.bottomBreadth | number : '1.2-2'}}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{PondVerDataStage2?.bottomSize | number : '1.2-2'}}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{PondVerDataStage2?.topSize | number : '1.2-2'}}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{PondVerDataStage2?.depth | number : '1.2-2'}}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{PondVerDataStage2?.UserID}}

\r\n
\r\n

{{'LATITUDE' | translate}}

\r\n

{{PondVerDataStage2?.tankLat}}

\r\n
\r\n

{{'LONGITUDE' | translate}}

\r\n

{{PondVerDataStage2?.tankLng}}

\r\n
\r\n

{{'TOTAL_ESTIMATED_COST' | translate}}

\r\n

{{PondVerDataStage2?.TotalEstimatedCost | number : '1.2-2'}}

\r\n
\r\n

{{'TOTAL_ESTIMATED_SUBSIDY' | translate}}

\r\n

{{PondVerDataStage2?.TotalEstimatedSubsidy | number : '1.2-2'}}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerDataStage2?.StateShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{PondVerDataStage2?.CenterShare_Amount | number : '1.2-2'}}

\r\n
\r\n

{{'ASSISTANCE_PAID_AT_STAGE2_' | translate}}

\r\n

{{PondVerDataStage2?.AssistancePaidAtStage1}}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{PondVerDataStage2?.ActualSubsidy_Stage1}}

\r\n
\r\n

{{'ESTIMATE_COPY_STAGE1' | translate}}

\r\n

{{'VIEW' | translate}}\r\n

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE2' | translate}}

\r\n

{{PondVerDataStage2?.ActualSubsidy_Stage2 | number : '1.2-2'}}

\r\n
\r\n

{{'MEASUREMENT_BOOK_COPY_STAGE2' | translate}}

\r\n

{{'VIEW' | translate}}

\r\n
\r\n

{{'REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.Remarks}}

\r\n
\r\n

{{'JE_REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.JERemarks}}

\r\n
\r\n

{{'XEN_REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.XENRemarks}}

\r\n
\r\n

{{'DA_REMARKS' | translate}}

\r\n

{{PondVerDataStage2?.DARemarks}}

\r\n
\r\n

{{'DMICADA_REMARK' | translate}}

\r\n

{{PondVerDataStage2?.DMICADAReamrks}}

\r\n
\r\n

{{'ADMIN_REMARK' | translate}}

\r\n

{{PondVerDataStage2?.AdminRemarks}}

\r\n
\r\n
\r\n
\r\n
{{'TANK_STAGE2_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image.DocumentType}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n

{{'POND_TANK_DETAILS' | translate}}

\r\n
\r\n\r\n
\r\n
\r\n
{{'POND_TANK_STAGE1_FIELD_PHYSICAL_SURVEY_DETAILS' | translate}}
\r\n \r\n \r\n
{{'SURVEY_STAGE1_JE' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ surveyStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1JE?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1JE?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1JE?.NoOfBeneficiary }}

\r\n
\r\n

{{'VOLUME_EARTH_WORK' | translate}}

\r\n

{{ surveyStage1JE?.VolumeEarthWork }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage1JE?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage1JE?.bottomLength }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage1JE?.bottomSize }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage1JE?.depth }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ surveyStage1JE?.estimateCost }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage1JE?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage1JE?.tankLng }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage1JE?.topSize }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage1JE?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage1JE?.topLength }}

\r\n
\r\n

{{'JE-EW_REMARK_STAGE1' | translate}}

\r\n

{{ remarksData?.JERemarks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SURVEY_STAGE1_XEN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ surveyStage1XEN?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n

{{'VOLUME_EARTH_WORK' | translate}}

\r\n

{{ surveyStage1XEN?.VolumeEarthWork }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage1XEN?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage1XEN?.bottomLength }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage1XEN?.bottomSize }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage1XEN?.depth }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ surveyStage1XEN?.estimateCost }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage1XEN?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage1XEN?.tankLng }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage1XEN?.topSize }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage1XEN?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage1XEN?.topLength }}

\r\n
\r\n

{{'XEN_REMARK_STAGE1' | translate}}

\r\n

{{ remarksData?.XENRemarks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_STAGE1_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image?.DocumentType + ' ' + image?.Stage}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
{{'Pond/Tank Head Office Subsidy Calculation/Recommendation for Stage 1st Detail' | translate}}
\r\n \r\n \r\n
{{'CAL_STAGE1_JE-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1JE?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1JE?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1JE?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1JE?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1JE?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1JE?.Coverage_Area }}

\r\n
\r\n

{{'JE_REMARK_CALC_STAGE1' | translate}}

\r\n

{{ remarksData?.JE_EW_Remarks_CalcStg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_DD' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1DD?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1DD?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1DD?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1DD?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1DD?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1DD?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_DA' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1DA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1DA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1DA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1DA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1DA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1DA?.Coverage_Area }}

\r\n
\r\n

{{'DA_REMARK_CALC_STAGE1' | translate}}

\r\n

{{ remarksData?.DARemarks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_DD-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1DMICADA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1DMICADA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1DMICADA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1DMICADA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1DMICADA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1DMICADA?.Coverage_Area }}

\r\n
\r\n

{{'DD-EW_REMARK' | translate}}

\r\n

{{ remarksData?.DMICADAReamrks }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE1_ADMIN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage1Admin?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage1Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage1Admin?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage1Admin?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage1Admin?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage1Admin?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage1Admin?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
{{'POND_TANK_STAGE2_FIELD_PHYSICAL_SURVEY_DETAILS' | translate}}
\r\n \r\n \r\n
{{'SURVEY_STAGE2_JE' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE2' | translate}}

\r\n

{{ surveyStage2JE?.ActualSubsidy_Stage2 }}

\r\n
\r\n

{{'ASSISTANCE_PAID_AT_STAGE2' | translate}}

\r\n

{{ surveyStage2JE?.AssistancePaidAtStage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n

{{'SURVEY_TYPE' | translate}}

\r\n

{{ surveyStage2JE?.SurveyType }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_COST' | translate}}

\r\n

{{ surveyStage2JE?.TotalEstimatedCost }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_SUBSIDY' | translate}}

\r\n

{{ surveyStage2JE?.TotalEstimatedSubsidy }}

\r\n
\r\n

{{'TYPE_OF_POND' | translate}}

\r\n

{{ surveyStage2JE?.TypeOfPond }}

\r\n
\r\n

{{'UPDATED_AT' | translate}}

\r\n

{{ surveyStage2JE?.Updated_at | date }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage2JE?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage2JE?.bottomLength }}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ surveyStage2JE?.UserID }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage2JE?.bottomSize }}

\r\n
\r\n

{{'CREATED_AT' | translate}}

\r\n

{{ surveyStage2JE?.created_at | date }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage2JE?.depth }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage2JE?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage2JE?.tankLng }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage2JE?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage2JE?.topLength }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage2JE?.topSize }}

\r\n
\r\n

{{'JE-EW_REMARK_STAGE2' | translate}}

\r\n

{{ remarksData?.JERemarks_Stg2 }}

\r\n
\r\n \r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SURVEY_STAGE2_XEN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE2' | translate}}

\r\n

{{ surveyStage2XEN?.ActualSubsidy_Stage2 }}

\r\n
\r\n

{{'ASSISTANCE_PAID_AT_STAGE2_' | translate}}

\r\n

{{ surveyStage2XEN?.AssistancePaidAtStage1 }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2XEN?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ surveyStage2XEN?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ surveyStage1XEN?.Topup }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ surveyStage1XEN?.Coverage_Area }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ surveyStage1XEN?.NoOfBeneficiary }}

\r\n
\r\n

{{'SURVEY_TYPE' | translate}}

\r\n

{{ surveyStage2XEN?.SurveyType }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_COST' | translate}}

\r\n

{{ surveyStage2XEN?.TotalEstimatedCost }}

\r\n
\r\n

{{'TOTAL_ESTIMATED_SUBSIDY' | translate}}

\r\n

{{ surveyStage2XEN?.TotalEstimatedSubsidy }}

\r\n
\r\n

{{'TYPE_OF_POND' | translate}}

\r\n

{{ surveyStage2XEN?.TypeOfPond }}

\r\n
\r\n

{{'UPDATED_AT' | translate}}

\r\n

{{ surveyStage2XEN?.Updated_at | date }}

\r\n
\r\n

{{'BOTTOM_BREADTH' | translate}}

\r\n

{{ surveyStage2XEN?.bottomBreadth }}

\r\n
\r\n

{{'BOTTOM_LENGTH' | translate}}

\r\n

{{ surveyStage2XEN?.bottomLength }}

\r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ surveyStage2XEN?.UserID }}

\r\n
\r\n

{{'BOTTOM_SIZE' | translate}}

\r\n

{{ surveyStage2XEN?.bottomSize }}

\r\n
\r\n

{{'CREATED_AT' | translate}}

\r\n

{{ surveyStage2XEN?.created_at | date }}

\r\n
\r\n

{{'DEPTH' | translate}}

\r\n

{{ surveyStage2XEN?.depth }}

\r\n
\r\n

{{'TANK_LAT' | translate}}

\r\n

{{ surveyStage2JE?.tankLat }}

\r\n
\r\n

{{'TANK_LONG' | translate}}

\r\n

{{ surveyStage2XEN?.tankLng }}

\r\n
\r\n

{{'TOP_BREADTH' | translate}}

\r\n

{{ surveyStage2XEN?.topBreadth }}

\r\n
\r\n

{{'TOP_LENGTH' | translate}}

\r\n

{{ surveyStage2XEN?.topLength }}

\r\n
\r\n

{{'TOP_SIZE' | translate}}

\r\n

{{ surveyStage2XEN?.topSize }}

\r\n
\r\n

{{'XEN_REMARK_STAGE2' | translate}}

\r\n

{{ remarksData?.XENRemarks_Stg2 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'POND_STAGE2_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image?.DocumentType + ' ' + image?.Stage}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
{{'Pond/Tank Head Office Subsidy Calculation/Recommendation for Stage 2nd Detail' | translate}}
\r\n \r\n \r\n
{{'CAL_STAGE2_JE-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2JE?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2JE?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2JE?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2JE?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2JE?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2JE?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2JE?.Coverage_Area }}

\r\n
\r\n

{{'JE_REMARK_CALC_STAGE2' | translate}}

\r\n

{{ remarksData?.JERemarks_CalcStg2 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_DD' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2DD?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2DD?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2DD?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2DD?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2DD?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2DD?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2DD?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_DA' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2DA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2DA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2DA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2DA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2DA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2DA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2DA?.Coverage_Area }}

\r\n
\r\n

{{'DA_REMARK_CALC_STAGE2' | translate}}

\r\n

{{ remarksData?.DERemarks_CalcStg2 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_DD-EW' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2DMICADA?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2DMICADA?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2DMICADA?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2DMICADA?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2DMICADA?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2DMICADA?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2DMICADA?.Coverage_Area }}

\r\n
\r\n

{{'DD-EW_REMARK_STAGE2' | translate}}

\r\n

{{ remarksData?.DMICADAReamrks_Stg1 }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'CAL_STAGE2_ADMIN' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'USER_ID' | translate}}

\r\n

{{ calStage2Admin?.UserID }}

\r\n
\r\n

{{'ACTUAL_SUBSIDY_STAGE1' | translate}}

\r\n

{{ calStage2Admin?.ActualSubsidy_Stage1 }}

\r\n
\r\n

{{'ESTIMATE_COST' | translate}}

\r\n

{{ calStage2Admin?.estimateCost }}

\r\n
\r\n

{{'APPLICANT_TYPE' | translate}}

\r\n

{{ calStage2Admin?.Applicant_type }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.CenterShare_Amount }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.StateShare_Amount }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.ABY }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ calStage2Admin?.Topup }}

\r\n
\r\n

{{'NO_OF_BENEFICIARY' | translate}}

\r\n

{{ calStage2Admin?.NoOfBeneficiary }}

\r\n
\r\n

{{'COVERAGE_AREA' | translate}}

\r\n

{{ calStage2Admin?.Coverage_Area }}

\r\n
\r\n

{{'ESTIMATE_COPY' | translate}}

\r\n

{{'VIEW_DOC' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
{{'MI_INSTALLATION_DETAILS' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'VENDOR_NAME' | translate}}

\r\n

{{ t3VendorDetails?.VendorName }}

\r\n
\r\n

{{'MI_AREA_IN_ACRE' | translate}}

\r\n

{{ t3VendorDetails?.MIArea }}

\r\n
\r\n

{{'MAX_SUBSIDY_AMOUNT' | translate}}

\r\n

{{ t3VendorDetails?.Subsidy }}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
{{'MI_ATTACHMENT_DETAILS' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{image?.DocumentType + ' ' + image?.Program_Name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n

{{'SUBSIDY_DETAILS' | translate}}

\r\n
\r\n\r\n
\r\n
\r\n
{{'SUBSIDY_DISBURSMENT_DETAILS' | translate}}
\r\n \r\n \r\n
{{'PAYMENT_TO_VENDOR(15%_FARMER_SHARE)' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ FSTVDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ FSTVDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ FSTVDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Vendor (15% farmer share)' | translate}}

\r\n

{{ FSTVDetails?.FarmerShare_to_Vendor | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ FSTVDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_STATUS' | translate}}

\r\n

{{ FSTVDetails?.Status }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ FSTVDetails?.PFMSPaymentDate | date:'mediumDate' }}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'PAYMENT_TO_VENDOR(85%_OF_TOTAL_COST)' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ STVDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ STVDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ STVDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Vendor (85% of total Cost)' | translate}}

\r\n

{{ STVDetails?.Subsidy_to_Vendor | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ STVDetails?.State_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ STVDetails?.Centre_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ STVDetails?.TopUp | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ STVDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ STVDetails?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ STFDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ STFDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ STFDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Farmer' | translate}}

\r\n

{{ STFDetails?.Subsidy_Amt_Farmer | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ STFDetails?.State_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ STFDetails?.Centre_share_amt | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ STFDetails?.TopUp | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ STFDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ STFDetails?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'REFUND_TO_FARMER(ACCESS_FARMER_SHARE_DEPOSITED)' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ RTFDetails?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ RTFDetails?.FileNo }}

\r\n
\r\n

{{'PROGRAM_NAME' | translate}}

\r\n

{{ RTFDetails?.Program_Name }}

\r\n
\r\n

{{'Payment to Vendor (85% of total Cost)' | translate}}

\r\n

{{ RTFDetails?.Subsidy_to_Vendor | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ RTFDetails?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ RTFDetails?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ RTFDetails?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ RTFDetails?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n
{{'SUBSIDY_DISBURSMENT_DETAILS_FOR_POND' | translate}}
\r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER_FOR_TANK/POND_STAGE1_EARTH_WORK' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ PondStage1?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ PondStage1?.FileNo }}

\r\n
\r\n

{{'SUBSIDY_AMOUNT' | translate}}

\r\n

{{ PondStage1?.Subsidy_Amt | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage1?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage1?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ PondStage1?.Topup | currency: 'INR' }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ PondStage1?.ABY | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ PondStage1?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ PondStage1?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER_FOR_TANK/POND_STAGE2_COMPLETE_WORK' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ PondStage2?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ PondStage2?.FileNo }}

\r\n
\r\n

{{'SUBSIDY_AMOUNT' | translate}}

\r\n

{{ PondStage2?.Subsidy_Amt | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage2?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage2?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ PondStage2?.Topup | currency: 'INR' }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ PondStage2?.ABY | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ PondStage2?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ PondStage2?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
{{'SUBSIDY_TO_FARMER_FOR_TANK/POND_STAGE3_PENDING_AMOUNT ' | translate}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{{'FINANCIAL_YEAR' | translate}}

\r\n

{{ PondStage3?.Fin_Year }}

\r\n
\r\n

{{'FILE_NO' | translate}}

\r\n

{{ PondStage3?.FileNo }}

\r\n
\r\n

{{'SUBSIDY_AMOUNT' | translate}}

\r\n

{{ PondStage3?.Subsidy_Amt | currency: 'INR' }}

\r\n
\r\n

{{'STATE_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage3?.StateShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'CENTER_SHARE_AMOUNT' | translate}}

\r\n

{{ PondStage3?.CenterShare_Amount | currency: 'INR' }}

\r\n
\r\n

{{'TOP_UP_AMOUNT' | translate}}

\r\n

{{ PondStage3?.Topup | currency: 'INR' }}

\r\n
\r\n

{{'ABY_AMOUNT' | translate}}

\r\n

{{ PondStage3?.ABY | currency: 'INR' }}

\r\n
\r\n

{{'ACCOUNT_BRANCH_REMARKS' | translate}}

\r\n

{{ PondStage3?.Remarks }}

\r\n
\r\n

{{'PAYMENT_DATE' | translate}}

\r\n

{{ PondStage3?.PFMSPaymentDate | date:'mediumDate'}}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n\r\n\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{'APP_ID' | translate}}\r\n {{'DEPARTMENT' | translate}}\r\n {{'AREA' | translate}}\r\n {{'SUBSIDY_YEAR' | translate}}\r\n {{'AADHAR_NUMBER' | translate}}\r\n {{'SYSTEM' | translate}}\r\n {{'LAND_DETAILS' | translate}}\r\n {{'DIFF_YEAR' | translate}}\r\n \r\n \r\n \r\n \r\n {{ subsidy.AppId }}\r\n {{ subsidy.Department }}\r\n {{ subsidy.Area | number: \"1.2-2\" }}\r\n {{ subsidy.SubsidyYear }}\r\n {{ subsidy.AadharNo }}\r\n {{ subsidy.System }}\r\n {{ subsidy.LandDetail }}\r\n {{ subsidy.DiffYear }}\r\n \r\n \r\n \r\n \r\n {{'NO_RECORDS_TO_SHOW' | translate}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'APPLICATION_NOT_FOUND' | translate}}
\r\n
\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { VendorDashboardService } from 'src/app/services/vendor-dashboard.service';\r\nimport { first, shareReplay } from 'rxjs';\r\nimport { MenuItem,MessageService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n@Component({\r\n selector: 'app-vendor-farmer-application',\r\n templateUrl: './vendor-farmer-application.component.html',\r\n styleUrls: ['./vendor-farmer-application.component.scss']\r\n})\r\nexport class VendorFarmerApplicationComponent implements OnInit {\r\n @ViewChild('vendorTable', { static: true })\r\n public vendorDataTable: Table;\r\n\r\n vendorMobile: any;\r\n vendorData: any;\r\n appVerificationItems: MenuItem[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n\r\n constructor(\r\n private vendorService:VendorDashboardService, \r\n private translateService: TranslateService, \r\n private messageService: MessageService,\r\n private activityRecordService: ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.vendorData, \"Vendor_Farmer_Application_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.vendorData, \"Vendor_Farmer_Application_List\");\r\n }\r\n },\r\n ];\r\n // this.loadData();\r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n\r\n refreshTable() {\r\n \r\n this.loadData();\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.vendorDataTable.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n loadData() {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.vendorMobile = JSON.parse(payload)?.sub;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.vendorService\r\n .getFarmerDashboardDataForVendor(this.vendorMobile)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.vendorMobile, 'Farmer Application', '', new Date(), 'Success');\r\n data.forEach((e,i)=>{\r\n e.srNo=i+1;\r\n e.dt_reg_sort=new Date(e.dt_reg?.substr(3,2)+\"/\"+e.dt_reg?.substr(0,2)+\"/\"+e.dt_reg?.substr(6))\r\n })\r\n // console.log('Response Data', data);\r\n if(data.length>0){\r\n this.vendorData = data;\r\n }\r\n else{\r\n this.vendorData = [];\r\n this.messageService.add({ severity: 'info', summary: 'Info Message', detail: 'Data Not Available' });\r\n }\r\n \r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.vendorMobile, 'Farmer Application', '', new Date(), err);\r\n\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Dashboard not loaded.',\r\n });\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n }\r\n \r\n exportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"APP ID\":d.AppID,\r\n \"Programme Name\":d.ProgrammeName, \r\n \"Farmer Name\":d.farmerName,\r\n \"Village\":d.Village, \r\n \"Block\":d.block, \r\n \"District\":d.district, \r\n \"Mobile\":d.Mobile, \r\n \"Address\":d.Address, \r\n \"Date of Registration\":d.dt_reg, \r\n \"Total Area\":d.Total_Area,\r\n \"Current Status\":d.Current_Status,\r\n \"Remarks\":d.Remarks,\r\n \"Status\":d.Status,\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n }\r\n\r\n downloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'AppID', header: 'APP ID' },\r\n { field: 'ProgrammeName', header: 'Programme Name' },\r\n { field: 'farmerName', header: 'Farmer Name' },\r\n { field: 'Village', header: 'Village' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'Mobile', header: 'Mobile' },\r\n { field: 'Address', header: 'Address' },\r\n { field: 'dt_reg', header: 'Date of Registration' },\r\n { field: 'Total_Area', header: 'Total Area' },\r\n { field: 'Current_Status', header: 'Current Status' },\r\n { field: 'Remarks', header: 'Remarks' },\r\n { field: 'Status', header: 'Status' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{'SR_NO'| translate}}\r\n \r\n \r\n \r\n\r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n\r\n {{'KYC_STATUS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'PROGRAMME_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n\r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n\r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n\r\n\r\n\r\n {{'MOBILE_NO'| translate}}\r\n \r\n \r\n \r\n\r\n {{'ADDRESS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'DATE_OF_REG'| translate}}\r\n \r\n \r\n \r\n\r\n {{'TOTAL_AREA'| translate}}\r\n \r\n \r\n \r\n\r\n {{'CURRENT_STATUS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n\r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{product.srNo}}\r\n {{product.AppID}}\r\n {{product.KYC_Status}}\r\n {{product.ProgrammeName}}\r\n {{product.farmerName}}\r\n {{product.Village}}\r\n {{product.block}}\r\n {{product.district}}\r\n {{product.Mobile}}\r\n {{product.Address}}\r\n {{product.dt_reg}}\r\n {{product.Total_Area}}\r\n {{product.Current_Status}}\r\n {{product.Remarks}}\r\n {{product.Status}}\r\n {{product.FinYear}}\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n","import { first, shareReplay } from 'rxjs';\r\nimport { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem,MessageService,ConfirmationService } from 'primeng/api';\r\nimport saveAs from 'file-saver';\r\nimport { BankDetailService } from 'src/app/services/bank-details.service';\r\nimport { DashboardService } from 'src/app/services/dashboard.service';\r\nimport { FarmersDetailsService } from 'src/app/services/farmers-details.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivityRecordService } from 'src/app/services/activity-record.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\nimport { BaseService } from 'src/app/services/common/base.service';\r\nimport { Table } from 'primeng/table';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-vendor',\r\n templateUrl: './vendor.component.html',\r\n styleUrls: ['./vendor.component.scss'],\r\n})\r\nexport class VendorComponent implements OnInit {\r\n @ViewChild('vendorData', { static: true })\r\n public vendorData: Table;\r\n \r\n farmerAppDetails: any;\r\n farmerDetails: any;\r\n formData: any;\r\n village: any;\r\n villageList = [];\r\n filteredData: any[];\r\n isVendor: any;\r\n farmerId: any;\r\n farmerMobile: any;\r\n appVerificationItems: MenuItem[];\r\n cols: ({ field: string; header: string; customExportHeader: string; } | { field: string; header: string; customExportHeader?: undefined; })[];\r\n exportColumns: { title: string; dataKey: string; }[];\r\n\r\n vendorMobile: any;\r\n public loading: boolean = false;\r\n public subscriptions: any = []\r\n public subjectSub:any;\r\n public selectedYear:any;\r\n\r\n constructor(\r\n public router: Router, \r\n private dashboard: DashboardService, \r\n private _personalDetalSer: FarmersDetailsService, \r\n private confirmationService: ConfirmationService,\r\n private productService: BankDetailService, \r\n private translateService: TranslateService, \r\n private messageService: MessageService, \r\n private cdref: ChangeDetectorRef,\r\n private activityRecordService : ActivityRecordService,\r\n private loader: AppLoaderService,\r\n private service: BaseService,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.appVerificationItems = [\r\n {\r\n label: 'Download excel', icon: 'pi pi-fw pi-download', command: () => {\r\n this.exportExcel(this.farmerAppDetails, \"Vendor_List\");\r\n }\r\n },\r\n {\r\n label: 'Download Pdf', icon: 'pi pi-fw pi-download', command: () => {\r\n this.downloadSheetAsPdf(this.farmerAppDetails, \"Vendor_List\");\r\n }\r\n },\r\n ];\r\n \r\n this.loadDataAndApplyFilter();\r\n }\r\n\r\n loadData(){\r\n let isVendorRole: any = sessionStorage.getItem('isVendor');\r\n if (isVendorRole == \"1\") {\r\n this.isVendor = true;\r\n let userId = sessionStorage.getItem('abyUserID');\r\n this.getFarmerAppDetailsByAtalLogin(userId);\r\n }\r\n else {\r\n const encData = JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF')));\r\n const farmerconfData = new Map(encData);\r\n let mobile = farmerconfData.get('farmerPh');\r\n this.farmerMobile = mobile;\r\n this.getFarmerPhone();\r\n }\r\n }\r\n\r\n loadDataAndApplyFilter(){\r\n if(sessionStorage.getItem('financialYear')){\r\n this.service.changeFinancialYear(sessionStorage.getItem('financialYear')) \r\n }\r\n\r\n this.subjectSub= this.service.getSelectedYear().pipe(shareReplay()).subscribe(\r\n (res) => {\r\n\r\n this.loadData();\r\n \r\n this.selectedYear = res;\r\n this.vendorData.filters['FinYear'] = [\r\n { value: this.selectedYear, matchMode: 'startsWith', operator: 'and' },];\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy(){\r\n this.subscriptions.forEach(sub => sub.unsubscribe());\r\n if(this.subjectSub){\r\n this.subjectSub.unsubscribe();\r\n }\r\n }\r\n\r\n ngAfterContentChecked() {\r\n this.cdref.detectChanges();\r\n }\r\n\r\n getFarmerAppDetailsByAtalLogin(userId: any) {\r\n let sessionToken = this.cryptoJsService.DecryptToken(sessionStorage.getItem('token'));\r\n let payload = atob(JSON.parse(sessionToken).authToken?.split('.')[1]);\r\n this.vendorMobile = JSON.parse(payload)?.sub;\r\n\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.dashboard\r\n .getApplicationByAtal(userId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n this.activityRecordService.activityRecord(this.vendorMobile, '7500 Applications', '', new Date(), 'Success');\r\n data.forEach(e=>{\r\n e.registerationDate_sort=new Date(e.registerationDate)\r\n e.registerationDate_filter=e.registerationDate_sort.toString().substring(4, 24)\r\n })\r\n this.farmerAppDetails = data;\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(\"appdetails\", this.farmerAppDetails);\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.activityRecordService.activityRecord(this.vendorMobile, '7500 Applications', '', new Date(), err);\r\n\r\n // console.log(err);\r\n },\r\n });\r\n\r\n this.subscriptions.push(sub);\r\n\r\n // this.dashboard.getApplicationByAtal(userId).subscribe(res => {\r\n // this.farmerAppDetails = res;\r\n // console.log(\"appdetails\", this.farmerAppDetails);\r\n // })\r\n }\r\n\r\n onVendorFarmer() {\r\n sessionStorage.removeItem('farmerDetails');\r\n sessionStorage.removeItem('userID');\r\n sessionStorage.removeItem('farmerPh');\r\n sessionStorage.removeItem(\"isFarmerLogin\");\r\n this.router.navigate(['/phone-login']);\r\n }\r\n\r\n getFarmerPhone() {\r\n // this.loader.start();\r\n this.loading = true;\r\n let sub = this.productService.getFarmerIdByMobileNo(this.farmerMobile)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n if (data.statusCode === 200) {\r\n let far = JSON.parse(data.data);\r\n if (far.length > 0) {\r\n this.farmerId = far[0].Farmer_ID;\r\n this.getDetailsByFarmerId();\r\n sessionStorage.setItem(\"farmerId\", this.farmerId);\r\n }\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n // console.log(err);\r\n },\r\n })\r\n\r\n this.subscriptions.push(sub);\r\n\r\n // this.productService.getFarmerIdByMobileNo(this.farmerMobile)\r\n // .subscribe(resp => {\r\n // if (resp.statusCode === 200) {\r\n // let far = JSON.parse(resp.data);\r\n // if (far.length > 0) {\r\n // this.farmerId = far[0].Farmer_ID;\r\n // this.getDetailsByFarmerId();\r\n // sessionStorage.setItem(\"farmerId\", this.farmerId);\r\n // }\r\n // }\r\n // })\r\n }\r\n\r\n getDetailsByFarmerId() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard.getApplicationByFarmerId(this.farmerId)\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n this.farmerAppDetails = res;\r\n // this.loader.close();\r\n this.loading = false;\r\n \r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n })\r\n\r\n\r\n // this.dashboard.getApplicationByFarmerId(this.farmerId).subscribe(res => {\r\n // this.farmerAppDetails = res;\r\n // console.log(\"appdetails\", this.farmerAppDetails);\r\n // })\r\n }\r\n\r\n getVillageData() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this._personalDetalSer.getVillageMatserData()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log(res);\r\n this.villageList = res;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.FarmersDetailsService();\r\n this.filteredData = [...this.villageList];\r\n // console.log(\"fil\", this.filteredData);\r\n if (!window.localStorage.getItem(\"villageMaster\")) {\r\n window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n }\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n })\r\n\r\n\r\n // this._personalDetalSer.getVillageMatserData().subscribe(res => {\r\n // console.log(res);\r\n // this.villageList = res;\r\n // this.FarmersDetailsService();\r\n // this.filteredData = [...this.villageList];\r\n // console.log(\"fil\", this.filteredData);\r\n // if (!window.localStorage.getItem(\"villageMaster\")) {\r\n // window.localStorage.setItem(\"villageMaster\", JSON.stringify(res));\r\n // }\r\n // })\r\n }\r\n\r\n FarmersDetailsService() {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.dashboard.GetAllFarmerDetails()\r\n .pipe(first())\r\n .subscribe({\r\n next: (res) => {\r\n // console.log(\"details\", res);\r\n this.farmerDetails = res;\r\n // this.loader.close();\r\n this.loading = false;\r\n this.formData = this.farmerDetails.find(x => x.Farmer_ID == this.farmerDetails[0].Farmer_ID);\r\n this.village = this.villageList.find(x => x.Code == this.formData.Village_Code);\r\n // debugger;\r\n //console.log(\"formData\", this.village);\r\n },\r\n error: (err) => {\r\n // this.loader.close();\r\n this.loading = false;\r\n },\r\n })\r\n \r\n\r\n // this.dashboard.GetAllFarmerDetails().subscribe(res => {\r\n // console.log(\"details\", res);\r\n // this.farmerDetails = res;\r\n // this.formData = this.farmerDetails.find(x => x.Farmer_ID == this.farmerDetails[0].Farmer_ID);\r\n // this.village = this.villageList.find(x => x.Code == this.formData.Village_Code);\r\n // // debugger;\r\n // console.log(\"formData\", this.village);\r\n\r\n // })\r\n }\r\n\r\n editForm(appId) {\r\n this.router.navigate(['farmers-application', appId])\r\n }\r\n\r\n deleteForm(appId) {\r\n // this.loader.start();\r\n this.loading = true;\r\n this.confirmationService.confirm({\r\n message: 'Are you sure you want to delete ?',\r\n header: 'Confirm',\r\n icon: 'pi pi-exclamation-triangle',\r\n accept: () => {\r\n // console.log(\"Hello\")\r\n // console.log(appId)\r\n this.dashboard.deleteFarmerApplicationByAppId(appId)\r\n .pipe(first())\r\n .subscribe({\r\n next: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({ severity: 'success', summary: 'Success Message', detail: 'Farmer Application deleted Successfully.' });\r\n\r\n },\r\n error: () => {\r\n // this.loader.close();\r\n this.loading = false;\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! Farmer Application Not Deleted.' });\r\n\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n // printForm(appId,vendorId,programId) {\r\n // this.router.navigate(['dashboard', 'print', appId,vendorId,programId]);\r\n // }\r\n\r\n \r\n selectFarmerApplication(application) {\r\n if(application.appID){\r\n // this.loader.start();\r\n // this.dashboard\r\n // .getMIDetailByAppID(application.appID)\r\n // .pipe(first())\r\n // .subscribe({\r\n // next: (res) => {\r\n // this.loader.close();\r\n // const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID), ,res[0]?.VendorId,res[0]?.ProgId]));\r\n // window.open(link, '_blank');\r\n // },\r\n // error: (err) => {\r\n // this.loader.close();\r\n // console.log(\"error\", err);\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n // },\r\n // });\r\n const link = this.router.serializeUrl(this.router.createUrlTree([this.router.url.split('/')[1], 'print', this.cryptoJsService.Encrypt(application.appID)]));\r\n window.open(link, '_blank');\r\n }\r\n else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Invalid App ID' });\r\n }\r\n}\r\n\r\nexportExcel(modelData, filename) {\r\n if (!modelData) {\r\n modelData = [];\r\n }\r\n import(\"xlsx\").then(xlsx => {\r\n let dataToSave = modelData.map((d: any) => {\r\n return {\r\n \"App. No.\":d.appID,\r\n \"Farmer Name\":d.farmerName,\r\n \"Village\":d.village,\r\n \"Status\":d.status,\r\n \"Remarks\":d.remarks,\r\n \"Block\":d.block,\r\n \"District\":d.district,\r\n \"Date of Reg.\":d.registerationDate\r\n }\r\n })\r\n const worksheet = xlsx.utils.json_to_sheet(dataToSave);\r\n const workbook = { Sheets: { data: worksheet }, SheetNames: [\"data\"] };\r\n const excelBuffer: any = xlsx.write(workbook, {\r\n bookType: \"xlsx\",\r\n type: \"array\"\r\n });\r\n this.saveAsExcelFile(excelBuffer, filename);\r\n });\r\n}\r\n\r\ndownloadSheetAsPdf(modelData, filename) {\r\n this.cols = [\r\n { field: 'appID', header: 'App. No.' },\r\n { field: 'farmerName', header: 'Farmer Name' },\r\n { field: 'village', header: 'Village' },\r\n { field: 'status', header: 'Status' },\r\n { field: 'remarks', header: 'Remarks' },\r\n { field: 'block', header: 'Block' },\r\n { field: 'district', header: 'District' },\r\n { field: 'registerationDate', header: 'Date of Reg.' },\r\n ];\r\n\r\n this.exportColumns = this.cols.map(col => ({ title: col.header, dataKey: col.field }));\r\n\r\n import(\"jspdf\").then(jsPDF => {\r\n import(\"jspdf-autotable\").then(x => {\r\n const doc = new jsPDF.default(0, 0);\r\n doc.autoTable(this.exportColumns, modelData);\r\n doc.save(`${filename}.pdf`);\r\n })\r\n })\r\n}\r\n\r\nsaveAsExcelFile(buffer: any, fileName: string): void {\r\n import(\"file-saver\").then(FileSaver => {\r\n let EXCEL_TYPE =\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8\";\r\n let EXCEL_EXTENSION = \".xlsx\";\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n saveAs(\r\n data,\r\n fileName + \"_export_\" + new Date().getTime() + EXCEL_EXTENSION\r\n );\r\n });\r\n}\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
{{'FARMER_APPLICATION_HEADER'| translate}}
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{'APP_ID'| translate}}\r\n \r\n \r\n \r\n \r\n {{'FARMER_NAME'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DATE_OF_REG'| translate}}\r\n \r\n \r\n \r\n \r\n {{'VILLAGE'| translate}}\r\n \r\n \r\n \r\n \r\n {{'BLOCK'| translate}}\r\n \r\n \r\n \r\n \r\n {{'DISTRICT'| translate}}\r\n \r\n \r\n \r\n \r\n {{'STATUS'| translate}}\r\n \r\n \r\n \r\n \r\n {{'REMARKS'| translate}}\r\n \r\n \r\n \r\n {{'FINANCIAL_YEAR'| translate}}\r\n \r\n \r\n \r\n {{'VIEW_APPLICATION'| translate}}\r\n \r\n \r\n \r\n \r\n {{ farmerAppDetail.appID }}\r\n {{ farmerAppDetail.farmerName }}\r\n {{ farmerAppDetail.registerationDate | date }}\r\n {{ farmerAppDetail.village }}\r\n {{ farmerAppDetail.block }}\r\n {{ farmerAppDetail.district }}\r\n {{ farmerAppDetail.status }}\r\n {{ farmerAppDetail.remarks }}\r\n {{ farmerAppDetail.FinYear}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { SdoService } from 'src/app/services/sdo.service';\r\nimport { MessageService, PrimeNGConfig } from 'primeng/api';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\n\r\n@Component({\r\n selector: 'app-xen-form',\r\n templateUrl: './xen-form.component.html',\r\n styleUrls: ['./xen-form.component.scss']\r\n})\r\nexport class XenFormComponent implements OnInit {\r\n\r\n dataOfPhysicalVerMIDone: any = [];\r\n autoId: any;\r\n items: any[];\r\n constructor(private tokenService: TokenService, private messageService: MessageService,\r\n private sdoService: SdoService, private route: ActivatedRoute, private router: Router, private cryptoJsService: CryptoJsService) { }\r\n\r\n ngOnInit(): void {\r\n this.getDataOfPhysicalVerMIDone(this.autoId);\r\n let autoId = 2;\r\n }\r\n \r\n \r\n totalPrice = 0;\r\n totalSubsidyAmount = 0;\r\n totalFarmerShare = 0;\r\n getDataOfPhysicalVerMIDone(autoId) {\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.autoId = this.cryptoJsService.DecryptData(params?.autoId);\r\n console.log(\"autoId\", this.autoId)\r\n if (this.autoId) {\r\n this.sdoService.getDataOfPhysicalVerMIDone(this.autoId).pipe()\r\n .subscribe({\r\n next: (data: any) => {\r\n console.log('dd', data?.listDataForPhysicalVer)\r\n this.dataOfPhysicalVerMIDone = data;\r\n let sumOfPrice = 0;\r\n let sumOfSubsidy = 0;\r\n let sumOfFarmerShare = 0;\r\n this.dataOfPhysicalVerMIDone.map((row: any) => {\r\n sumOfSubsidy += row.SubsidyToFarmerAmount;\r\n console.log(sumOfSubsidy);\r\n sumOfFarmerShare += row.FarmerShareAmount;\r\n });\r\n this.dataOfPhysicalVerMIDone?.listDataForPhysicalVer.map((row: any) => {\r\n sumOfPrice += row.Price;\r\n console.log(sumOfPrice);\r\n })\r\n this.totalPrice = sumOfPrice;\r\n this.totalSubsidyAmount = sumOfSubsidy;\r\n this.totalFarmerShare = sumOfFarmerShare;\r\n console.log(this.totalPrice);\r\n },\r\n error: () => {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! data not loaded.' });\r\n }\r\n });\r\n \r\n } else {\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be empty' });\r\n return;\r\n }\r\n }\r\n );\r\n \r\n \r\n }\r\n \r\n }\r\n ","

\r\n
\r\n \r\n
\r\n

Field Verification data from JE:{{dataOfPhysicalVerMIDone.ProgramName}}

\r\n

Date of Verified:{{dataOfPhysicalVerMIDone.JEActionDate}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Name of VendorFarmer Registration No.District
{{dataOfPhysicalVerMIDone.VendorName}}{{dataOfPhysicalVerMIDone.AppID}}{{dataOfPhysicalVerMIDone.District}}
\r\n
\r\n
\r\n \r\n

\r\n\r\n \r\n 0\">\r\n
\r\n

Physical Verification

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
SrNo.ComponentQuantitySizePriceSubsidy AmountFarmer App Status
{{i+1}}{{row.component}}{{row.EstimatedQuantity}}{{row.size}}{{row.Price}}{{dataOfPhysicalVerMIDone.SubsidyToFarmerAmount}}{{dataOfPhysicalVerMIDone.FarmerAppStatus}}
Total{{totalPrice}}{{totalSubsidyAmount}}
\r\n
\r\n
\r\n \r\n

\r\n\r\n \r\n 0\">\r\n
\r\n

Vendor BOQ

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
SrNo.ComponentQuantitySizePriceSubsidy AmountFarmer Share
{{i+1}}{{row.component}}{{row.EstimatedQuantity}}{{row.size}}{{row.Price}}{{dataOfPhysicalVerMIDone.SubsidyToFarmerAmount}}{{dataOfPhysicalVerMIDone.FarmerShareAmount}}
Total{{totalPrice}}{{totalSubsidyAmount}}{{totalFarmerShare}}
\r\n
\r\n
\r\n \r\n

\r\n\r\n \r\n 0\">\r\n
\r\n

Vendor Estimate

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
SrNo.ComponentQuantitySizePriceSubsidy AmountFarmer ShareFarmer App StatusFarmer Vendor Status
{{i+1}}{{row.component}}{{row.EstimatedQuantity}}{{row.size}}{{row.Price}}{{dataOfPhysicalVerMIDone.SubsidyToFarmerAmount}}{{dataOfPhysicalVerMIDone.FarmerShareAmount}}{{dataOfPhysicalVerMIDone.farmerAppStatus}}{{dataOfPhysicalVerMIDone.farmerVendorStatus}}
Total{{totalPrice}}{{totalSubsidyAmount}}{{totalFarmerShare}}
\r\n
\r\n\r\n
\r\n \r\n

\r\n\r\n \r\n \r\n
\r\n

Bill Uploaded By Vendor

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
View Bill Uploaded
view
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Total Amount of ComponentAmount of Fitting & AccessoriesSub-TotalFarmer ShareFarmer Share Deposited
{{dataOfPhysicalVerMIDone.PhyVerTotalComponentAmount}}{{dataOfPhysicalVerMIDone.PhyVerBilledTransportAmount}}{{dataOfPhysicalVerMIDone.PhyVerTotalComponentAmount}}{{dataOfPhysicalVerMIDone.FarmerShareAmount}}{{dataOfPhysicalVerMIDone.AmtPaidByFarmer}}
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Area(in acre) MI to be InstalledPlant Spacing (in mtr)Crop NameRemarks by JE/AI
{{dataOfPhysicalVerMIDone.MIArea}}{{dataOfPhysicalVerMIDone.PlantSpacing}}{{dataOfPhysicalVerMIDone.CropName}}{{dataOfPhysicalVerMIDone.JERemarks}}
\r\n
\r\n
\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { TokenService } from 'src/app/services/common/token.service';\r\nimport { SdoService } from 'src/app/services/sdo.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { Router } from '@angular/router';\r\nimport { CryptoJsService } from 'src/app/services/crypto-js.service';\r\nimport { AppLoaderService } from 'src/app/services/app-loader/app-loader.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-xen',\r\n templateUrl: './xen.component.html',\r\n styleUrls: ['./xen.component.scss']\r\n})\r\nexport class XenComponent implements OnInit {\r\n\r\n public Data: any;\r\n autoId: any;\r\n application: any;\r\n constructor(private tokenService: TokenService,private messageService: MessageService,\r\n private sdoService: SdoService, private router: Router,private cryptoJsService: CryptoJsService,private loader: AppLoaderService) { }\r\n\r\n\r\n ngOnInit(): void {\r\n this.loadData();\r\n }\r\n loadData() {\r\n this.loader.start();\r\n this.sdoService\r\n .getAppForPhysicalVerMIDone(this.autoId)\r\n .pipe()\r\n .subscribe({\r\n next: (data) => {\r\n console.log('Response Data', data);\r\n this.Data = data;\r\n this.loader.close();\r\n },\r\n error: () => {\r\n this.loader.close();\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error Message',\r\n detail: 'Data error! Dashboard not loaded.',\r\n });\r\n },\r\n });\r\n }\r\n selectviewform(form: any) {\r\n if (form.AutoId) {\r\n let encryptedAutoId = this.cryptoJsService.Encrypt(form.AutoId.toString());\r\n this.router.navigate(['sdo', 'view-form'], { queryParams: { autoId: encryptedAutoId } });\r\n }else{\r\n this.messageService.add({ severity: 'error', summary: 'Error Message', detail: 'Data error! AutoID cant be Empty' });\r\n }\r\n\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n

\r\n \r\n \r\n \r\n Sr. No.\r\n \r\n \r\n \r\n\r\n APP ID\r\n \r\n \r\n \r\n\r\n Village\r\n \r\n \r\n \r\n\r\n Block\r\n \r\n \r\n \r\n\r\n District\r\n \r\n \r\n \r\n\r\n Father Name\r\n \r\n \r\n \r\n\r\n Vendor Name\r\n \r\n \r\n \r\n\r\n BOQ Component\r\n \r\n \r\n \r\n\r\n Estimate Amount\r\n \r\n \r\n \r\n\r\n Total Amount\r\n \r\n \r\n \r\n\r\n Physically Verified\r\n \r\n \r\n \r\n\r\n Remarks entered by JE\r\n \r\n \r\n \r\n\r\n Plant Spacing\r\n \r\n \r\n \r\n\r\n Farmer Share\r\n \r\n \r\n \r\n\r\n MI Area\r\n \r\n \r\n \r\n\r\n Amount Deposited by farmer\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{rowIndex + 1}}\r\n {{product.AppID}}\r\n {{product.Village}}\r\n {{product.Block}}\r\n {{product.District}}\r\n {{product.FarmerName}}\r\n {{product.VendorName}}\r\n {{product.boqComponent}}\r\n {{product.EstimatedAmount}}\r\n {{product.TotalBilledAmount}}\r\n {{product.PhysicalyVerified}}\r\n {{product.JERemarks}}\r\n {{product.PlantSpacing}}\r\n {{product.FarmerShareAmount}}\r\n {{product.MIArea}}\r\n {{product.AmtPaidByFarmer}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { CryptoJsService } from '../services/crypto-js.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n\r\n constructor(\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n\r\n const encData = sessionStorage.getItem('dataF') ? JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF'))) : null;\r\n const farmerConfData = encData ? new Map(encData) : new Map();\r\n let isFarmerLogin = farmerConfData.get('isFarmerLogin') ? farmerConfData.get('isFarmerLogin') : '';\r\n\r\n //If token data exist, user may login to application\r\n if (sessionStorage.getItem('token') && isFarmerLogin === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/phone-login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n // if (sessionStorage.getItem('token') && sessionStorage.getItem('isVendorLogin') === '1') {\r\n // return true;\r\n // } else {\r\n // this.router.navigate(['/vendor-registration-login'], { queryParams: { returnUrl: state.url } });\r\n // return false;\r\n // }\r\n\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CAOGuardGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n // console.log(\"Inside guard\")\r\n if (sessionStorage.getItem('isCAO') === '1') {\r\n // console.log(\"Inside true guard\")\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContractorGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n \r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isConstractor') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DepartmentGuardGuard implements CanActivateChild {\r\n \r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isDepartment') === '1' || sessionStorage.getItem('isDDEW') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DevTeamGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n \r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isDevTeam') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DevGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isDev') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GrievanceHandlerGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n \r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isGrievanceHandler') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HelpdeskGuard implements CanActivateChild {\r\n \r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isHelpdesk') === '1' || sessionStorage.getItem('userRole') === \"DD Associate\") {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree, CanActivateChild, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class JEGuardGuard implements CanActivateChild {\r\n \r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isJE') === '1' || sessionStorage.getItem('isCJE') === '1' || sessionStorage.getItem('isJEEW') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { CryptoJsService } from '../services/crypto-js.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OwnMiFarmerGuardGuard implements CanActivate {\r\n\r\n constructor(\r\n private router: Router,\r\n private cryptoJsService: CryptoJsService\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n //If token data exist, user may login to application\r\n const encData = sessionStorage.getItem('dataF') ? JSON.parse(this.cryptoJsService.DecryptDataPayload(sessionStorage.getItem('dataF'))) : null;\r\n const farmerConfData = encData ? new Map(encData) : new Map();\r\n let isOwnMIFarmer = farmerConfData.get('isOwnMIFarmerLogin') ? farmerConfData.get('isOwnMIFarmerLogin') : '';\r\n\r\n if (sessionStorage.getItem('token') && isOwnMIFarmer === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/tubewell-connection-login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree, CanActivateChild, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdoGuardGuard implements CanActivateChild {\r\n\r\n constructor(private router: Router) { }\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isSDO') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SubDevGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isSubDev') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserActionGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isUserAction') === '1') {\r\n\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree, CanActivateChild, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VendorGuardGuard implements CanActivateChild {\r\n \r\n constructor(private router: Router) { }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isVendor') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VendorRegGuard implements CanActivate {\r\n\r\n constructor(private router: Router) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n //If token data exist, user may login to application\r\n if (sessionStorage.getItem('token') && sessionStorage.getItem('isNewRegLogin') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/vendor-registration-login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class WebadminGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n \r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isWebAdmin') == '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree, CanActivateChild, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class XenGuardGuard implements CanActivateChild {\r\n constructor(private router: Router) { }\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (sessionStorage.getItem('isXEN') === '1' || sessionStorage.getItem('isCXEN') === '1') {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n }\r\n \r\n}\r\n","export class EstimationDistrictWiseModel { \r\n District: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n Est_Amount:number;\r\n Mi_Area:number;\r\n}\r\nexport class EstimationMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n Est_Amount:number;\r\n Mi_Area:number;\r\n}\r\nexport class EstimationUserWiseModel { \r\n UserID: any;\r\n Level_ID:string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n Est_Amount:number;\r\n Mi_Area:number;\r\n}\r\nexport class EstimationVendorWiseModel { \r\n VendorName: string;\r\n Vendor_Code: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n Est_Amount:number;\r\n Mi_Area:number;\r\n}\r\n\r\nexport class BoqDistrictWiseModel { \r\n District: any;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n BOQAmount: number;\r\n Mi_Area:number;\r\n}\r\nexport class BoqMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n BOQAmount: number;\r\n Mi_Area:number;\r\n}\r\nexport class BoqVendorWiseModel { \r\n VendorName: string;\r\n Vendor_Code: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n BOQAmount: number;\r\n Mi_Area:number;\r\n}\r\nexport class BoqMiTypeWiseModel { \r\n District: any;\r\n Block:string;\r\n MIType:string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n BOQAmount: number;\r\n Mi_Area:number;\r\n}\r\nexport class EstimationVerificationDistrictWiseModel { \r\n District: string;\r\n MIType: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n RejectedApplication: number;\r\n Est_Amount: number;\r\n Mi_Area: number;\r\n}\r\nexport class EstimationVerificationMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication:number;\r\n PendingApplication:number;\r\n RejectedApplication:number;\r\n Est_Amount:number;\r\n Mi_Area:number;\r\n}\r\nexport class EstimationVerificationUserWiseModel { \r\n UserID: any;\r\n Level_ID:string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication:number;\r\n PendingApplication:number;\r\n RejectedApplication:number;\r\n Est_Amount:number;\r\n Mi_Area:number;\r\n}\r\nexport class EstimationVerificationVendorWiseModel { \r\n VendorName: string;\r\n MIType: string;\r\n Vendor_Code: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication:number;\r\n PendingEarly:number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n RejectedApplication:number;\r\n Est_Amount: number;\r\n Mi_Area: number;\r\n}\r\nexport class ChallanDistrictWiseModel {\r\n District: string;\r\n ChallanGenerated: number;\r\n ChallanAmount: number;\r\n ChallanDeposited: number;\r\n AmountDeposited: number;\r\n}\r\nexport class ChallanMonthWiseModel {\r\n Months: string;\r\n ChallanGenerated: number;\r\n ChallanAmount: number;\r\n ChallanDeposited: number;\r\n AmountDeposited: number;\r\n}\r\nexport class ChallanVendorWiseModel {\r\n VendorName: string;\r\n ChallanGenerated: number;\r\n ChallanAmount: number;\r\n ChallanDeposited: number;\r\n AmountDeposited: number;\r\n}\r\n\r\nexport class PhysicalVerificationMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication:number;\r\n PendingEarly:number;\r\n Pending_1Week:number;\r\n Pending_Morethan_1Weeks:number;\r\n RejectedApplication:number;\r\n PVAmount:number;\r\n PVArea:number;\r\n}\r\n\r\nexport class PhysicalVerificationDistrictWiseModel { \r\n District: string;\r\n Block: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n RejectedApplication: number;\r\n PVAmount: number;\r\n PVArea: number;\r\n}\r\n\r\nexport class PhysicalVerificationUserWiseModel { \r\n UserID: any;\r\n Level_ID:string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication:number;\r\n PendingEarly:number;\r\n Pending_1Week:number;\r\n Pending_Morethan_1Weeks:number;\r\n RejectedApplication:number;\r\n PVAmount:number;\r\n PVArea:number;\r\n}\r\nexport class PhysicalVerificationVendorWiseModel { \r\n VendorName: string;\r\n Vendor_Code: string;\r\n TotalApplication: number;\r\n VerifiedApplication:number;\r\n ReturnProcessApplication:number;\r\n PendingEarly:number;\r\n Pending_1Week:number;\r\n Pending_Morethan_1Weeks:number;\r\n RejectedApplication:number;\r\n PVAmount:number;\r\n PVArea:number;\r\n}\r\n\r\nexport class FsvDistrictWiseModel { \r\n District: string;\r\n Block: string;\r\n FSVDeposited: number;\r\n FSVPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n AmountPaid: number;\r\n MIArea: number;\r\n}\r\n\r\nexport class FsvVendorWiseModel { \r\n VendorName: string;\r\n Vendor_Code: string;\r\n FSVDeposited: number;\r\n FSVPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks:number; \r\n AmountPaid: number;\r\n MIArea:number;\r\n}\r\nexport class FsvMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n FSVDeposited:number;\r\n FSVPaid:number;\r\n PendingEarly:number;\r\n Pending_1Week:number;\r\n Pending_Morethan_1Weeks:number;\r\n AmountPaid:number;\r\n MIArea:number;\r\n}\r\nexport class StvVendorWiseModel { \r\n VendorName: string;\r\n Vendor_Code: string;\r\n TotalApplication: number;\r\n SubsidyPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks:number; \r\n AmountPaid: number;\r\n MIArea:number;\r\n}\r\n\r\nexport class StfDistrictWiseModel { \r\n District: string;\r\n Block: string;\r\n TotalApplication: number;\r\n SubsidyPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n AmountPaid: number;\r\n MIArea: number;\r\n}\r\n\r\nexport class StvMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n TotalApplication: number;\r\n SubsidyPaid:number;\r\n PendingEarly:number;\r\n Pending_1Week:number;\r\n Pending_Morethan_1Weeks:number;\r\n AmountPaid:number;\r\n MIArea:number;\r\n}\r\n\r\nexport class StvDistrictWiseModel { \r\n District: string;\r\n Block: string;\r\n TotalApplication: number;\r\n SubsidyPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n AmountPaid: number;\r\n MIArea: number;\r\n}\r\n\r\nexport class StfVendorWiseModel { \r\n VendorName: string;\r\n Vendor_Code: string;\r\n TotalApplication: number;\r\n SubsidyPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks:number; \r\n AmountPaid: number;\r\n MIArea:number;\r\n}\r\n\r\nexport class StfMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n TotalApplication:number;\r\n SubsidyPaid:number;\r\n PendingEarly:number;\r\n Pending_1Week:number;\r\n Pending_Morethan_1Weeks:number;\r\n AmountPaid:number;\r\n MIArea:number;\r\n}\r\n\r\nexport class RtfDistrictWiseModel { \r\n District: string;\r\n Block: string;\r\n FSVDeposited: number;\r\n FSVPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n AmountPaid: number;\r\n MIArea: number;\r\n}\r\n\r\nexport class RtfMonthWiseModel { \r\n Months: string;\r\n Years: string;\r\n FSVDeposited: number;\r\n FSVPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n AmountPaid: number;\r\n MIArea: number;\r\n}\r\n\r\nexport class RtfVendorWiseModel { \r\n District: string;\r\n Block: string;\r\n FSVDeposited: number;\r\n FSVPaid: number;\r\n PendingEarly: number;\r\n Pending_1Week: number;\r\n Pending_Morethan_1Weeks: number;\r\n AmountPaid: number;\r\n MIArea: number;\r\n}\r\n\r\nexport class VendorMiArea { \r\n vendorName: string;\r\n ProgrammeName: string;\r\n Verified_App_Area: number;\r\n Pending_App_Area: number;\r\n Incomplete_App_Area: number;\r\n Rejected_App_Area: number;\r\n changeRequest_App_Area: number;\r\n Total_App_Area: number;\r\n TargerArea: number;\r\n}\r\n\r\nexport class MiVerificationSubsidy { \r\n District: string;\r\n Block: string;\r\n Constituency: string;\r\n Village: string;\r\n Application_No: string;\r\n farmerName: string;\r\n Father_name: string;\r\n ProgrammeName: string;\r\n TotalArea: number;\r\n EstimateAmount: number;\r\n BOQAmount: number;\r\n PVAmount: number;\r\n verification_date: string;\r\n Mobile: string;\r\n VendorName: string;\r\n}\r\n\r\nexport class Stage1 { \r\n district: string;\r\n Total_App_Recieved: number;\r\n recieved_Coverage_Area: number;\r\n total_Approved_Application: number;\r\n approved_Coverage_Area: number;\r\n total_App_Incomplete: number;\r\n total_App_Pending: number;\r\n total_App_Rejected: number;\r\n total_Intimation_Stage1: number;\r\n pending_At_JE: number;\r\n pending_At_XEN: number;\r\n pending_At_DMICADA: number;\r\n pending_At_Admin: number;\r\n PHY_Done: number;\r\n}\r\n\r\nexport class TankAbstract { \r\n District: string;\r\n Tank_App: number;\r\n Tank_Coverage_Area: number;\r\n Tank_Verified_App: number;\r\n Tank_RP_App: number;\r\n tank_Rejected_App: number;\r\n Tank_Verified_Coverage_Area: number;\r\n}\r\n\r\nexport class Stage2 { \r\n District: string;\r\n Total_App_Recieved: number;\r\n recieved_Coverage_Area: number;\r\n total_Approved_Application: number;\r\n approved_Coverage_Area: number;\r\n total_App_Incomplete: number;\r\n total_App_Pending: number;\r\n total_App_Rejected: number;\r\n total_Intimation_Stage1: number;\r\n pending_At_JE: number;\r\n pending_At_XEN: number;\r\n pending_At_DMICADA: number;\r\n pending_At_Admin: number;\r\n PHY_Done: number;\r\n}\r\n\r\nexport class Stage3 { \r\n District: string;\r\n Total_App_Recieved: number;\r\n recieved_Coverage_Area: number;\r\n total_Approved_Application: number;\r\n approved_Coverage_Area: number;\r\n total_App_Incomplete: number;\r\n total_App_Pending: number;\r\n total_App_Rejected: number;\r\n pending_At_DMICADA: number;\r\n pending_At_Admin: number;\r\n}\r\n\r\nexport class Stage1Subsidy { \r\n District: string;\r\n Block: string;\r\n Village: string;\r\n AppID: string;\r\n farmerName: string;\r\n Adm_Amount: number;\r\n farmer_Mobile: string;\r\n Approval_Date: string;\r\n}\r\n\r\nexport class Stage2Subsidy { \r\n District: string;\r\n Block: string;\r\n Village: string;\r\n AppID: string;\r\n farmerName: string;\r\n Adm_Amount: number;\r\n farmer_Mobile: string;\r\n Approval_Date: string;\r\n}\r\n\r\nexport class Stage3Subsidy { \r\n District: string;\r\n Block: string;\r\n Village: string;\r\n AppID: string;\r\n farmerName: string;\r\n Adm_Amount: number;\r\n farmer_Mobile: string;\r\n Approval_Date: string;\r\n}\r\nexport class CanalAndTubewellBased { \r\n Water_Source: string;\r\n ApplicationRecieved: number;\r\n TotalArea: number;\r\n Verified_Application: number;\r\n App_Verified_Area: number;\r\n estimateApproved: number;\r\n estimatePending: number;\r\n BOQ_Uploaded: number;\r\n BOQ_Pending: number;\r\n PV_Approved: number;\r\n PV_Pending: number;\r\n DMICADA_Approved: number;\r\n DMICADA_Pending: number;\r\n}\r\nexport class inventory { \r\n VendorName: string;\r\n ProgrammeName: string;\r\n component: string;\r\n size: string;\r\n Quantity: number;\r\n PreviouslyConsumedQuantity: number;\r\n RemaningQuantity: number;\r\n BatchNO: string;\r\n LotNo: string;\r\n PurchaseInvoiceNo: string;\r\n ItemType: string;\r\n}","export class FarmerLandModel {\r\n id?:number;\r\n total_Area?:number;\r\n Land_ID?:number;\r\n land_ID?:number;\r\n landID?: number;\r\n farmerID?:string;\r\n morbno?:number;\r\n killano?:number;\r\n kanal?:number;\r\n marla?:number;\r\n village_Code?:number;\r\n is_Available_Lease:boolean;\r\n croptype: number;\r\n Landdoc_Path: string;\r\n landdoc_Path: string;\r\n active: string;\r\n lat: number;\r\n long: number;\r\n lease_Agrement_Doc: string;\r\n user_ID: string;\r\n network_ID: string;\r\n terminal_ID: string;\r\n delete_Land_record: string;\r\n Land_Doc: string;\r\n crop_Datas: any;\r\n \r\n }\r\n\r\n export class crop_Datas {\r\n crop_ID: number;\r\n type_of_crop_ID: number;\r\n total_Area: number;\r\n }\r\n\r\n export class SelectedCropModel {\r\n Crop_ID: number;\r\n Type_Of_Crop_ID: number;\r\n total_Area: number;\r\n }\r\n\r\n export class FLandModel {\r\n Id?:number;\r\n Total_Area?:number;\r\n Land_ID?:number;\r\n Farmer_ID?:string;\r\n Morabba_No?:number;\r\n Killa_No?:number;\r\n Kanals?:number;\r\n Marlas?:number;\r\n Village_Code?:number;\r\n IS_Avalibe_for_Lease:boolean;\r\n croptype: number;\r\n Landdoc_Path: string;\r\n Active: string;\r\n Lat: number;\r\n Long: number;\r\n Lease_Agrement_Doc: string;\r\n User_ID: string;\r\n Network_Id: string;\r\n Terminal_Id: string;\r\n delete_Land_record: string;\r\n Land_Doc: string;\r\n crop_Datas: any;\r\n description: string;\r\n MorabbaNo: any;\r\n KillaNo: any;\r\n LandID: any;\r\n }\r\n","export class TankCoverageArea {\r\n Tank_ID: number;\r\n Top_Size: string;\r\n Bottom_Size: string;\r\n Depth: number;\r\n Water_Capacity: number;\r\n Total_Cost: number;\r\n Coverage_Area: number;\r\n Created_Dt: string;\r\n Active: true;\r\n communityActualSubsidy;\r\n communityPayment;\r\n individualActualSubsidy;\r\n individualPayment\r\n}\r\nexport interface ApplicationBankDetials {\r\n accoHolderName: string;\r\n accoNumber: string;\r\n active: string;\r\n bankName: string;\r\n bankPath: string;\r\n bankShortName: string;\r\n farmerID: string;\r\n ifcsCode: string;\r\n}\r\n\r\nexport class ApplicationSolarPumpDetails {\r\n controlerType: string;\r\n farmerShare: number;\r\n primaryVendor: string;\r\n pumpCapacity: string;\r\n pumpCategory: string;\r\n secondaryVendor: string;\r\n type: string;\r\n}\r\n\r\nexport class ApplicationPondData {\r\n bottomSize: string;\r\n dept: number;\r\n killaNo: number;\r\n latitude: string;\r\n longitude: string;\r\n morabbaNo: number;\r\n topSize: string;\r\n totalCost: number;\r\n waterCapacity: number;\r\n}\r\nexport interface ApplicationMemberDetails {\r\n Aadhaar_Copy_Upload: string;\r\n Aadhar_No: string;\r\n Active: string;\r\n Address: string;\r\n Area_Already_Apply: '0';\r\n Caste_Code: string;\r\n DOB: string;\r\n Dt_Entered: string;\r\n Dt_Update: string;\r\n Email_ID: string;\r\n Farmer_ID: string;\r\n Farmer_Photo: string;\r\n Father_name: string;\r\n Gender: string;\r\n ID_Proof_FilePath: string;\r\n Mobile: string;\r\n Mother_Name: string;\r\n Name: string;\r\n PPP_ID: string;\r\n Pin_Code: string;\r\n Village_Code: string;\r\n memberID: number;\r\n District: string;\r\n Block: string;\r\n MFMBNo: string,\r\n casteCertificate_Uploaded: string,\r\n IsAadharVerified: any,\r\n TxnId: any,\r\n FdQRCodePath: any\r\n}\r\nexport class ApplicationFarmerLandDetails {\r\n cropType: string;\r\n farmerId: string;\r\n killaNo: number;\r\n landPath: string;\r\n memberID: number;\r\n morabbaNo: number;\r\n totalArea: string;\r\n Village: string;\r\n Year: any;\r\n Bhag: any;\r\n Khewat: any;\r\n OwnerName: any;\r\n khewat: any;\r\n KhewatArea: any;\r\n OwnerHissa: any;\r\n kanal: any;\r\n marla: any;\r\n TotalkanalinKhasra: any;\r\n TotalmarlainKhasra: any;\r\n}\r\nexport class ApplicationWaterCourseDetails{\r\n Canal_Outlet_Name: string;\r\n Outlet_Code: string;\r\n RD: string;\r\n WorkTypeName?: string;\r\n Work_type?: string;\r\n}\r\n\r\nexport class ApplicationMIDetails {\r\n appID: string;\r\n programName: string;\r\n landData: string;\r\n miVendorName: string;\r\n totalArea: string;\r\n}\r\nexport class ApplicationDetailsModel {\r\n APP_ID: string;\r\n ConsentPath: string;\r\n Scheme_Code: string;\r\n FarmerBank: ApplicationBankDetials;\r\n Solar_Pump_Datas: ApplicationSolarPumpDetails[];\r\n OnFarm_Pond_Datas: ApplicationPondData[];\r\n Group_Datas: ApplicationMemberDetails[];\r\n FarmerLand: ApplicationFarmerLandDetails[];\r\n Water_Course_Datas: ApplicationWaterCourseDetails[];\r\n New_MI_Datas: ApplicationMIDetails[];\r\n FarmerPersonalData: ApplicationMemberDetails;\r\n FincialYear: string;\r\n RegDate: string;\r\n VillageData: any;\r\n MFMBNo: any;\r\n AppType: any; \r\n}\r\n","export class OnFarmMiModel {\r\n id?:number;\r\n farmerID?:string;\r\n Farmer_ID?:string; \r\n land_ID?:number;\r\n Land_ID?:number;\r\n landID?:number;\r\n water_Quality?:string;\r\n isSubsidyAvail?:string;\r\n year_subsidy?:string;\r\n Year_subsidy?:string;\r\n bal_Area?:number;\r\n dept_subsidy?:string;\r\n user_ID: string;\r\n network_ID: string;\r\n terminal_ID: string;\r\n component: string;\r\n Component: string;\r\n ComponentID: string;\r\n delete_OnFarm_record: string;\r\n }\r\n ","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'indianDecimal'\r\n})\r\nexport class IndianDecimalPipe implements PipeTransform {\r\n transform(value: number | string, fractionDigits: number = 2, includeSymbol: boolean = true): string {\r\n if (value === null || value === undefined) return '';\r\n\r\n // Convert value to a string with specified fraction digits\r\n let [integer, fraction] = Number(value).toFixed(fractionDigits).split('.');\r\n\r\n // Add commas as per the Indian numbering system\r\n integer = integer.replace(/\\B(?=(\\d{2})+(\\d{1})(?!\\d))/g, ',');\r\n\r\n // Combine integer and fraction parts\r\n const formattedValue = fraction ? `${integer}.${fraction}` : integer;\r\n\r\n // Prepend ₹ symbol if includeSymbol is true\r\n return includeSymbol ? `₹ ${formattedValue}` : formattedValue;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'maskAadhar'\r\n})\r\nexport class MaskAadharPipe implements PipeTransform {\r\n\r\n transform(value: unknown, ...args: unknown[]): unknown {\r\n let id = value.toString();\r\n if(id){\r\n return id.slice(0, -4).replace(/./g, 'X') + id.slice(-4);\r\n }\r\n return null \r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\n@Pipe({ name: 'safeUrl' })\r\nexport class SafeUrlPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) {}\r\n\r\n transform(url: string): SafeResourceUrl {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { first } from 'rxjs';\r\nimport { AuthenticationService } from './authentication.service';\r\nimport { CryptoJsService } from './crypto-js.service';\r\nimport { IpAddressService } from './ip-address.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ActivityRecordService {\r\n\r\n loginId: any;\r\n actionType: any;\r\n specificId: any;\r\n dateTime: any;\r\n status: any;\r\n args: any =[];\r\n\r\n ipAddress: any = '000.000.000';\r\n\r\n\r\n constructor(\r\n private ipService: IpAddressService,\r\n private authenticationService: AuthenticationService,\r\n private messageService: MessageService,\r\n private cryptoJs: CryptoJsService\r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n activityRecord(loginId, actionType, specificId, dateTime, status, ...args) {\r\n this.getIP();\r\n\r\n this.loginId = loginId;\r\n this.actionType = actionType;\r\n this.specificId = specificId;\r\n this.dateTime = dateTime;\r\n this.status = status;\r\n this.args = args;\r\n }\r\n\r\n activityDataTimeRecord(reqBody) {\r\n this.authenticationService\r\n .activityDataTimeRecord(reqBody)\r\n .pipe(first())\r\n .subscribe({\r\n next: (data) => {\r\n // this.messageService.add({\r\n // severity: 'info',\r\n // summary: 'Activity Recorded',\r\n // detail: data,\r\n // });\r\n\r\n },\r\n error: (err) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: 'Error Message',\r\n // detail: err,\r\n // });\r\n },\r\n });\r\n }\r\n\r\n\r\n getIP() {\r\n if (sessionStorage.getItem('ipAddress')) {\r\n this.ipAddress = JSON.parse(\r\n window.sessionStorage.getItem('ipAddress')\r\n );\r\n setTimeout(()=> this.createReqBody(), 100)\r\n \r\n }\r\n else {\r\n this.ipService.getIPAddress().subscribe({\r\n next: (res) => {\r\n // console.log(\"responseee\", res)\r\n this.ipAddress = res['ip'];\r\n // console.log(\"ipAddresss\", this.ipAddress);\r\n sessionStorage.setItem('ipAddress',JSON.stringify(this.ipAddress));\r\n },\r\n error: () => {\r\n \r\n },\r\n complete: () => {\r\n this.createReqBody();\r\n }\r\n })\r\n }\r\n\r\n }\r\n\r\n createReqBody() {\r\n let reqBody = {\r\n LoginID: this.loginId ? this.loginId : '',\r\n ActionType: this.actionType ? this.actionType : '',\r\n SpecificId: this.specificId ? this.specificId : '',\r\n NetworkId: this.ipAddress,\r\n OccurrenceDateTime: this.dateTime,\r\n Status: this.status ? this.status : '',\r\n RequestPayload: this.args[0] ? JSON.stringify(this.args[0]) : ''\r\n }\r\n\r\n this.activityDataTimeRecord(reqBody);\r\n }\r\n\r\n}","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-app-loader',\r\n templateUrl: './app-loader.component.html',\r\n styleUrls: ['./app-loader.component.scss']\r\n})\r\nexport class AppLoaderComponent implements OnInit {\r\n \r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppLoaderService {\r\n\r\n private isLoading = new Subject();\r\n isLoading$ = this.isLoading.asObservable();\r\n\r\n constructor() {\r\n }\r\n\r\n start(){\r\n this.isLoading.next(true);\r\n }\r\n\r\n close(){\r\n this.isLoading.next(false);\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { AppConfig } from '../models/appconfig';\r\n\r\n@Injectable()\r\nexport class ConfigService {\r\n\r\n config: AppConfig = {\r\n theme: 'lara-light-indigo',\r\n dark: false,\r\n inputStyle: 'outlined',\r\n ripple: true\r\n };\r\n\r\n private configUpdate = new Subject();\r\n\r\n configUpdate$ = this.configUpdate.asObservable();\r\n\r\n updateConfig(config: AppConfig) {\r\n this.config = config;\r\n this.configUpdate.next(config);\r\n }\r\n\r\n getConfig() {\r\n return this.config;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class MenuService {\r\n\r\n private userName = new Subject();\r\n userName$ = this.userName.asObservable();\r\n\r\n setUsername(name: string) {\r\n console.log(\"Username Set is \", name)\r\n this.userName.next(name);\r\n }\r\n\r\n private menuSource = new Subject();\r\n private resetSource = new Subject();\r\n\r\n menuSource$ = this.menuSource.asObservable();\r\n resetSource$ = this.resetSource.asObservable();\r\n\r\n onMenuStateChange(key: string) {\r\n this.menuSource.next(key);\r\n }\r\n\r\n reset() {\r\n this.resetSource.next(true);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { map, Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { FarmerDetails } from '../models/farmer-details.model';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\nimport { CryptoJsService } from './crypto-js.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationService extends BaseService {\r\n\r\n constructor(\r\n private _http: HttpClient, \r\n tokenService: TokenService,\r\n private cryptoJsService: CryptoJsService\r\n ) { super(tokenService); }\r\n\r\n getOTP(reqBody: any) {\r\n return this._http.post(`${environment.apiUrl}Login/GetOTP`, reqBody)\r\n }\r\n\r\n validateOTP(body: any) {\r\n return this._http.post(environment.apiUrl + 'Auth/ValidOtpToken', body)\r\n }\r\n // validateOTP(credentials: any){\r\n // return this._http.post(environment.apiUrl + 'Auth/ValidOtpToken', credentials)\r\n // }\r\n\r\n login(reqBody: any) {\r\n return this._http\r\n .post(`${environment.apiUrl}auth/login`, reqBody)\r\n .pipe(\r\n map(user => {\r\n // window.sessionStorage.setItem(\"token\", JSON.stringify(user));\r\n window.sessionStorage.setItem(\"token\", user.data);\r\n this.tokenService.authenticate(user);\r\n return user;\r\n })\r\n );\r\n }\r\n vendorLogin(email_ID: string, password: string) {\r\n return this._http\r\n .post(`${environment.apiUrl}/Auth/VendorLogin`, { email_ID, password })\r\n .pipe(\r\n map(user => {\r\n // window.sessionStorage.setItem(\"token\", JSON.stringify(user));\r\n window.sessionStorage.setItem(\"token\", user.data);\r\n this.tokenService.authenticate(user);\r\n return user;\r\n })\r\n );\r\n }\r\n\r\n // getInitialToken() {\r\n // return this._http.get(environment.apiUrl + 'Auth/GetToken')\r\n // }\r\n\r\n getInitialToken() {\r\n return this._http.post(environment.apiUrl + 'Auth/GetTokenInternal', {})\r\n }\r\n\r\n getOTPforUsers(reqBody: any) {\r\n return this._http.post(environment.apiUrl + 'Login/GetOtpForUser', reqBody)\r\n }\r\n \r\n changePasswordForUser(reqBody) {\r\n return this._http\r\n .post(`${environment.apiUrl}Login/ForgotPassword`, reqBody );\r\n }\r\n \r\n activityDataTimeRecord(reqBody) {\r\n return this._http.post(`${environment.apiUrl}Login/InsertUserActivityTracker`, reqBody);\r\n }\r\n \r\n getTargetMasterPublic() {\r\n return this._http.get(environment.apiUrl + 'Department/GetTargetMasterPublic')\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\n\r\nimport { BankDetail } from '../components/registration/bank-details/bankDetails';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BankDetailService extends BaseService{\r\n\r\n constructor(private http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n }\r\n\r\n getBankDetails(id: string): Observable {\r\n return this.http.get(environment.apiUrl + 'BankDetails/GetByFarmerId?FarmerID=' + id)\r\n }\r\n getAllBankNames(): Observable {\r\n return this.http.get(environment.apiUrl + 'BankDetails/GetAllBankNames')\r\n }\r\n getFarmerIdByMobileNo(id: string): Observable {\r\n return this.http.get(environment.apiUrl + 'PersonalDetails/GetFarmerIDByMobileNo?MobileNumber=' + id)\r\n }\r\n postBankDetails(data: any): Observable {\r\n return this.http.post(environment.apiUrl + 'BankDetails/Insert', data)\r\n }\r\n deleteBankDetails(data: any): Observable {\r\n return this.http.post(environment.apiUrl + 'BankDetails/Delete', data)\r\n }\r\n\r\n uploadFile(data, mobile, uploadType){\r\n return this.http.post(`${environment.apiUrl}File/Upload?MobileNo=${mobile}&UploadType=${uploadType}`, data,\r\n // {\r\n // headers: {\r\n // 'Content-Type': 'multipart/form-data',\r\n // },\r\n // }\r\n )\r\n }\r\n\r\n\r\n bankDetailsInsert_CR(reqBody: any): Observable {\r\n return this.http.post(environment.apiUrl + 'ChangeRequest/BankDetailsInsert_CR', reqBody)\r\n }\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BOQDashboardService extends BaseService {\r\n\r\n protected http: HttpClient;\r\n\r\n constructor(http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this.http = http;\r\n }\r\n\r\n // Get Services\r\n getVendorApplicationForMIBOQ(userId: String, AppType: String, financialYear: String) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorApplicationForMIBOQ?UserId=${userId}&AppType=${AppType}&financialYear=${financialYear}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getVendorMIBOQ(reqBody){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorMIBOQ?AppId=${reqBody.AppId}&VendorRegId=${reqBody.VendorRegId}&ProgId=${reqBody.ProgramId}`);\r\n }\r\n\r\n //post\r\n insertVendorBOQ(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertVendorBOQ`, reqBody);\r\n }\r\n}","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TokenService } from '../services/common/token.service';\r\nimport { BaseService } from '../services/common/base.service';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CaoService extends BaseService {\r\n\r\n protected http: HttpClient;\r\n\r\n constructor(http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this.http = http;\r\n }\r\n\r\n\r\n\r\n // InsertFarmerApplicationApprovalRemarks(appId: String, userId: String, remarks: String, statusValue: String) {\r\n // return this.http.post(`${environment.apiUrl}DashBoard/InsertFarmerApplicationApprovalRemarks?AppId=${appId}&Userid=${userId}&Remarks=${remarks}&Status=${statusValue}`, {responseType: 'text'});\r\n // }\r\n\r\n getMISubsidyLotNos() {\r\n return this.http.get(`${environment.apiUrl}Department/GetMISubsidyLotNos`);\r\n }\r\n\r\n getMIPFMSExport(lotNo: string) {\r\n return this.http.get(`${environment.apiUrl}Department/GetMIPFMSExport?LotNo=${lotNo}`);\r\n }\r\n\r\n // getDataToPrintMultipleChallanAtal(userId: String) {\r\n // return this.http.post(`${environment.apiUrl}Challan/GetDataToPrintMultipleChallanAtal?RequestType=${userId}`, {});\r\n // }\r\n\r\n\r\n miFarmerShareToVendorPFMSReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIFarmerShareToVendorPFMSReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n getApplicationsForMIFarmerShareToVendorPFMSCAOReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIFarmerShareToVendorPFMSCAOReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n miSubsidyToVendorPFMSReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToVendorPFMSReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n miSubsidyToVendorCAOPFMSReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToVendorPFMSCAOReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n miSubsidyToFarmerPFMSReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToFarmerPFMSReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n miSubsidyToFarmerCAOPFMSReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToFarmerPFMSCAOReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n getApplicationsForMISubsidyToFarmerPFMSReportABY(userType: string) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToFarmerPFMSReportABY?UserType=${userType}`);\r\n }\r\n\r\n miRefundToFarmerPFMSReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIRefundToFarmerPFMSReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n getApplicationsForMIRefundToFarmerPFMSCAOReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIRefundToFarmerPFMSCAOReport?UserType=${reqBody.UserType}&FinYear=${reqBody.FinYear}`);\r\n }\r\n\r\n miFarmerShareToVendorPFMSExport(lotId, status, userType) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIFarmerShareToVendorPFMSExport?LotNo=${lotId}&Status=${status}&UserType=${userType}`);\r\n }\r\n\r\n miSubsidyToVendorPFMSExport(lotId, status, userType) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToVendorPFMSExport?LotNo=${lotId}&Status=${status}&UserType=${userType}`);\r\n }\r\n\r\n miSubsidyToFarmerPFMSExport(lotId, status, userType) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToFarmerPFMSExport?LotNo=${lotId}&Status=${status}&UserType=${userType}`);\r\n }\r\n\r\n miRefundToFarmerPFMSExport(lotId, status, userType) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIRefundToFarmerPFMSExport?LotNo=${lotId}&Status=${status}&UserType=${userType}`);\r\n }\r\n\r\n importMIPFMSSubsidyToFarmer_Vendor(reqBody) {\r\n return this.http.post(`${environment.apiUrl}Department/ImportMIPFMSSubsidyToFarmer_Vendor`, reqBody);\r\n }\r\n\r\n importMIPFMSFarmerShareToVendor_RefundToFarmer(reqBody) {\r\n return this.http.post(`${environment.apiUrl}Department/ImportMIPFMSFarmerShareToVendor_RefundToFarmer`, reqBody);\r\n }\r\n\r\n importPondPFMSSubsidyToFarmer(reqBody) {\r\n return this.http.post(`${environment.apiUrl}Department/ImportPFMSPond`, reqBody);\r\n }\r\n\r\n //Pond PFMS tank stage reports by Stage ID\r\n getApplicatonsForPondSubsidyPFMSReportsByStageId(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPondSubsidyToFarmerPFMSReport?Stage=${reqBody?.Stage}&UserType=${reqBody?.UserType}&FinYear=${reqBody?.FinYear}`);\r\n } \r\n\r\n getApplicationsForPondSubsidyToFarmerPFMSCAOReport(reqBody: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPondSubsidyToFarmerPFMSCAOReport?Stage=${reqBody?.Stage}&UserType=${reqBody?.UserType}&FinYear=${reqBody?.FinYear}`);\r\n } \r\n\r\n getApplicationsForPondFarmerShareToVendorPFMSExportByLotId(lotId, stageId, status, userType) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPondFarmerShareToVendorPFMSExport?LotNo=${lotId}&Stage=${stageId}&Status=${status}&UserType=${userType}`);\r\n }\r\n\r\n getDataForLotCertificate(lotId, userType) {\r\n return this.http.get(`${environment.apiUrl}Department/GetDataForLotCertificate?LotNo=${lotId}&UserType=${userType}`);\r\n }\r\n\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ChallanService extends BaseService{\r\n\r\n constructor(private http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n}\r\n // GET SERVICES\r\n getDataToPrintChallan(appId: any, progId: any){\r\n return this.http.get(`${environment.apiUrl}Challan/GetDataToPrintChallan?AppId=${appId}&ProgId=${progId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getSolarChallan(appId: any){\r\n return this.http.get(`${environment.apiUrl}Challan/GetSolarChallan?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getFarmerSolarDetails(appId: any){\r\n return this.http.get(`${environment.apiUrl}FarmerApplication/GetFarmerSolarDetails?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getApplicationIdsForChallan(farmerId: any,WindowType :any){\r\n return this.http.get(`${environment.apiUrl}Challan/GetApplicationIdsForChallan?FarmerId=${farmerId}&WindowType=${WindowType}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getApplicationIdsForSolarChallan(farmerId: any){\r\n return this.http.get(`${environment.apiUrl}Challan/GetApplicationIdsForSolarChallan?FarmerId=${farmerId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n \r\n getSanctionLetterData(appId, ProgID){\r\n return this.http.get(`${environment.apiUrl}Challan/GetSanctionLetterData?AppId=${appId}&ProgID=${ProgID}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n\r\n //POST SERVICES\r\n insertChallanData(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Challan/InsertChallanData`, reqBody, { headers: this.buildHeaders() });\r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\n import { HttpHeaders } from '@angular//common/http';\r\nimport { ErrorType } from './error-type.enum';\r\nimport { Error } from './error.model';\r\nimport { TokenService } from './token.service';\r\nimport { BehaviorSubject, Observable, Subject, throwError } from 'rxjs';\r\nimport { retry, catchError } from 'rxjs/operators';\r\n\r\n@Injectable({providedIn:'root'})\r\nexport abstract class BaseService {\r\n protected tokenService: TokenService;\r\n\r\n constructor(tokenService: TokenService) {\r\n this.tokenService = tokenService;\r\n }\r\n\r\n // TODO: Add error handler and logging system into project\r\n handleError(error: any) {\r\n let errorMessage = '';\r\n if (error.error instanceof ErrorEvent) {\r\n // client-side error\r\n errorMessage = `Error: ${error.error.message}`;\r\n } else {\r\n // server-side error\r\n errorMessage = `Error Code: ${error.status}\\nMessage: ${error.message}`;\r\n }\r\n console.log(errorMessage);\r\n //return throwError(errorMessage);\r\n return errorMessage;\r\n}\r\n\r\n protected buildHeaders(): HttpHeaders {\r\n const token = this.tokenService.retrieve();\r\n const headers = new HttpHeaders();\r\n\r\n headers.set('Accept', 'application/json');\r\n headers.set('Content-Type', 'application/json');\r\n\r\n if (token.isAuthenticated) {\r\n headers.set('Authorization', `Bearer ${token.authToken}`);\r\n }\r\n\r\n headers.set('Access-Control-Allow-Origin', document.location.origin);\r\n\r\n return headers;\r\n }\r\n\r\n\r\n protected buildHeadersNew(): HttpHeaders {\r\n const token : any = this.tokenService.retrieve();\r\n let headers : any;\r\n if (token.isAuthenticated) {\r\n headers = new HttpHeaders().set('Accept', 'application/json').set('Authorization', `Bearer ${token.value.authToken}`).set('Accept', 'application/json');\r\n }\r\n return headers;\r\n }\r\n private date = new BehaviorSubject('default date');\r\n selectedDate = this.date.asObservable();\r\n\r\n public changeDate(date: string) {\r\n this.date.next(date)\r\n \r\n }\r\n\r\n public financialYear = new BehaviorSubject('default');\r\n selectedYear = this.financialYear.asObservable();\r\n\r\n public changeFinancialYear(year: any) {\r\n // console.log(year,\"year123445\")\r\n sessionStorage.setItem('financialYear',year)\r\n this.financialYear.next(year)\r\n \r\n }\r\n public getSelectedYear(){\r\n return this.selectedYear\r\n }\r\n}\r\n","export class Token {\r\n public id?: string;\r\n public authToken?: string;\r\n public expiresIn?: string;\r\n public value?: string;\r\n public claim?: any;\r\n public nonce?: string;\r\n public isAuthenticated = false;\r\n public role?: string;\r\n public isprofilecompleted?: true;\r\n}\r\n\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport jwtDecode from 'jwt-decode';\r\n\r\nimport { Token } from \"./models/token\";\r\n\r\n@Injectable()\r\nexport class TokenService {\r\n private tokenKey: string = \"auth_token\";\r\n\r\n private token: Token;\r\n\r\n public authenticate(token: any): void {\r\n try {\r\n this.token = this.retrieve();\r\n const claim =token;\r\n this.token.isAuthenticated = true;\r\n if (this.token.isAuthenticated) {\r\n var parseToken = token;\r\n this.token.claim = claim;\r\n this.token.value = token;\r\n //this.token.nonce = null;\r\n this.token.id = parseToken.id;\r\n this.token.authToken = parseToken.auth_token;\r\n this.token.expiresIn = parseToken.expires_in;\r\n this.token.role = parseToken.role;\r\n this.token.isprofilecompleted = parseToken.isprofilecompleted;\r\n }\r\n this.save();\r\n } catch (e) {\r\n console.log(e);\r\n return;\r\n }\r\n }\r\n\r\n public initializeForRefresh() {\r\n this.token.nonce = this.createNonce();\r\n //this.token.state = this.createRandomString();\r\n this.save();\r\n }\r\n\r\n\r\n private createRandomString(): string {\r\n let text = \"\";\r\n const possible = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";\r\n for (let i = 0; i < 32; i++) {\r\n text += possible.charAt(Math.floor(Math.random() * possible.length));\r\n }\r\n return text;\r\n }\r\n\r\n private createNonce(): string {\r\n return this.createRandomString() + Date.now().toString();\r\n }\r\n\r\n private save(): void {\r\n try {\r\n // sessionStorage.setItem(this.tokenKey, JSON.stringify(this.token));\r\n } catch (e) {\r\n return;\r\n }\r\n }\r\n\r\n public retrieve(): Token {\r\n try {\r\n if (this.token == null) {\r\n this.token = JSON.parse(sessionStorage.getItem(this.tokenKey)!);\r\n if (this.token == null) {\r\n this.token = new Token();\r\n }\r\n }\r\n } catch (e) {\r\n this.token = new Token();\r\n }\r\n return this.token;\r\n }\r\n\r\n public clear(): void {\r\n try {\r\n this.token = new Token();\r\n sessionStorage.removeItem(this.tokenKey);\r\n } catch (e) {\r\n return;\r\n }\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AuthenticationService } from './authentication.service';\r\nimport { MessageService } from 'primeng/api';\r\n\r\nimport { Injector } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CryptoJsService {\r\n private authService: AuthenticationService;\r\n private messageService: MessageService;\r\n router: any;\r\n\r\n constructor(private injector: Injector) {\r\n setTimeout(() => {\r\n this.authService = this.injector.get(AuthenticationService);\r\n this.messageService = this.injector.get(MessageService);\r\n });\r\n }\r\n\r\n Encrypt(text: string) {\r\n let _key = CryptoJS.enc.Utf8.parse(\"/ {this.router.navigate(['/home'])}, 0)\r\n }\r\n\r\n getInitialToken(){\r\n this.authService.getInitialToken().subscribe((response:any) => {\r\n if (response){\r\n sessionStorage.setItem(\"token\", response.data)\r\n\r\n // sessionStorage.setItem('intelli_Metabase_Key', token?.intelli_Metabase_Key)\r\n }\r\n })\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TokenService } from '../services/common/token.service';\r\nimport { environment } from '../../environments/environment';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DashboardService {\r\n protected http: HttpClient;\r\n constructor(http: HttpClient, tokenService: TokenService) {\r\n this.http = http;\r\n\r\n }\r\n\r\n getMIDetailByAppID(_appID:any){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetMIDetailByAppID?AppId=${_appID}`);\r\n }\r\n\r\n// getAppFarmerId(farmerId: any) {\r\n// return this.http.get(`${environment.apiUrl}FarmerApplication/GetApplicationsByFarmerID?FarmerID=${farmerId}`);\r\n// }\r\n getApplicationByFarmerId(farmerId: any) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerDashboardDataByFarmerID/${farmerId}`);\r\n}\r\n getApplicationForAtalBhujal(atalUserId: any) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetDashboardDataByAtalUserID/${atalUserId}`);\r\n}\r\n\r\nGetAllFarmerDetails(){\r\n console.log('service');\r\n return this.http.get(`${environment.apiUrl}FarmerApplication/GetAllFarmerDetails`);\r\n}\r\n\r\ngetApplicationByAppId(appId): Observable {\r\n return this.http.get(\r\n `${environment.apiUrl}DashBoard/GetViewApplicationByAppID/${appId}`\r\n );\r\n}\r\n\r\ngetApplicationStatusByAppId(appId): Observable {\r\n return this.http.post(\r\n `${environment.apiUrl}DashBoard/GetAppIDTrackerStatus?AppId=${appId}`, {responseType: 'text'}\r\n );\r\n}\r\n\r\ngetExistingMIDetails(appId): Observable {\r\n return this.http.get(\r\n `${environment.apiUrl}DashBoard/GetExistingMIDetails?AppId=${appId}`\r\n );\r\n}\r\n\r\ndeleteFarmerApplicationByAppId(appId): Observable {\r\n return this.http.delete(\r\n `${environment.apiUrl}FarmerApplication/DeleteFarmerApplication?appID=${appId}`\r\n );\r\n}\r\n\r\ngetApplicationByAtal(AtalId: any) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetDashboardDataByAtalUserID/${AtalId}`);\r\n}\r\n\r\nrequestSolar(reqBody){\r\n return this.http.post(`${environment.apiUrl}data/requestsolar_enc`, reqBody);\r\n}\r\n\r\n\r\nsolarProcedure(reqBody){\r\n return this.http.post(`${environment.apiUrl}data/solarproc_enc`, reqBody);\r\n}\r\n\r\naddToSolarFlow(reqBody){\r\n return this.http.post(`${environment.apiUrl}data/addtosolarflow_enc`, reqBody);\r\n}\r\n\r\nmodifySolarFlow(reqBody){\r\n return this.http.post(`${environment.apiUrl}data/modifysolar_enc`, reqBody);\r\n}\r\n\r\ngetSolar(reqBody){\r\n return this.http.post(`${environment.apiUrl}data/getsolar`, reqBody);\r\n}\r\n\r\nsolarList(reqBody) {\r\n return this.http.post(`${environment.apiUrl}data/solarList`, reqBody);\r\n}\r\n\r\ngetLandGetAreaByKhewatDevOnly() {\r\n return this.http.post(`${environment.apiUrl}LandDetails/GetLandGetAreaByKhewatDevOnly`, {});\r\n}\r\n\r\n\r\nsolarBackup(value): Observable {\r\n return this.http.post(`${environment.apiUrl}data/solarBackup?fileBackup=${value}`, {});\r\n}\r\n\r\nremovedbbackup(reqBody) {\r\n return this.http.post(`${environment.apiUrl}data/removedbbackup`, reqBody);\r\n}\r\n\r\ndownloadsolar(reqBody) {\r\n return this.http.post(`${environment.apiUrl}data/downloadsolar`, reqBody);\r\n}\r\n\r\ngetErrorTracking() {\r\n return this.http.get(`${environment.apiUrl}Department/GetErrorTracking`);\r\n}\r\n\r\nUpdateActivityTracker(reqBody) {\r\n return this.http.post(`${environment.apiUrl}Department/UpdateActivityTracker?AutoId=${reqBody.AutoId}&StatusType=${reqBody.StatusType}&Status=${reqBody.Status}`, reqBody);\r\n}\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TokenService } from '../services/common/token.service';\r\nimport { BaseService } from '../services/common/base.service';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DepartmentDashboardService extends BaseService {\r\n\r\n protected http: HttpClient;\r\n\r\n constructor(http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this.http = http;\r\n }\r\n\r\n GetDepartmentDashboard(userId: String, appType: String, financialyear: String) {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerApplicationForApproval?UserId=${userId}`, { headers: this.buildHeadersNew() });\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerApplicationForApproval?UserId=${userId}&AppType=${appType}&financialyear=${financialyear}`);\r\n }\r\n\r\n\r\n GetStatusMaster(userId, actionId) {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetStatusMaster?Userid=${userId}&ActionId=${actionId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetStatusMaster?Userid=${userId}&ActionId=${actionId}`);\r\n }\r\n GetSubsidaryDetails(userId) {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetStatusMaster?Userid=${userId}&ActionId=${actionId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIBeneficiaryReport?UserId=${userId}`);\r\n }\r\n GetVendorSubsidaryDetails(userId,userType) {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetStatusMaster?Userid=${userId}&ActionId=${actionId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIBeneficiaryReport?UserId=${userId}&userType=${userType}`);\r\n }\r\n\r\n getStatusMasterEPC(userId) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetStatusMasterEPC?Userid=${userId}`);\r\n }\r\n\r\n getJEUserIds(userId) {\r\n return this.http.get(`${environment.apiUrl}Department/GetJEUserIds?UserId=${userId}`);\r\n }\r\n\r\n InsertFarmerApplicationApprovalRemarks(reqBody: any) {\r\n // return this.http.post(`${environment.apiUrl}DashBoard/InsertFarmerApplicationApprovalRemarks?AppId=${appId}&Userid=${userId}&Remarks=${remarks}&Status=${statusValue}`, { headers: this.buildHeaders() }, {responseType: 'text'});\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertFarmerApplicationApprovalRemarks`, reqBody);\r\n }\r\n\r\n getVendorMIEstimationsForApproval(userId, actionType, financialyear) {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetVendorMIEstimateForApproval?UserId=${userId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorMIEstimateForApproval?UserId=${userId}&AppType=${actionType}&financialyear=${financialyear}`);\r\n }\r\n\r\n getVendorMIEstimation(appId, vendorRegId, progId) {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetVendorMIEstimation?AppId=${appId}&VendorRegId=${vendorRegId}&ProgID=${progId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorMIEstimation?AppId=${appId}&VendorRegId=${vendorRegId}&ProgID=${progId}`);\r\n }\r\n\r\n getVendorMIBOQ(appId, vendorRegId, progId){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorMIBOQ?AppId=${appId}&VendorRegId=${vendorRegId}&ProgId=${progId}`);\r\n }\r\n\r\n insertVendorMIEstimateForApproval(appId: String, userId: String, remarks: String, statusValue: String, programId: String){\r\n // return this.http.get(`${environment.apiUrl}DashBoard/InsertVendorMIEstimateForApproval?AppId=${appId}&Userid=${userId}&Remarks=${remarks}`, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertVendorMIEstimateForApproval?AppId=${appId}&Userid=${userId}&Remarks=${remarks}&Status=${statusValue}&ProgId=${programId}`, {responseType: 'text'});\r\n }\r\n\r\n\r\n workFlowAllStatus(appId: string){\r\n return this.http.get(`${environment.apiUrl}Vendor/WorkFlowAllStatus?AppID=${appId}`);\r\n }\r\n \r\n \r\n dashboardSummaryReport(financialYear: any){\r\n return this.http.get(`${environment.apiUrl}Reports/DashboardSummaryReport?financialyear=${financialYear}`);\r\n }\r\n\r\n printMultipleChallanAtal(reqBody){\r\n return this.http.post(`${environment.apiUrl}Challan/PrintMultipleChallanAtal`, reqBody);\r\n }\r\n\r\n getApplicationsForMISubsidyLot(userId: String) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyLot?UserId=${userId}`);\r\n }\r\n \r\n insertMISubsidyLot(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/InsertMISubsidyLot`, reqBody);\r\n }\r\n \r\n getApplicationsForPhysicalVerification(UserRid:any,AppType:any,FinancialYear:any){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationsForPhysicalVerification?UserId=${UserRid}&AppType=${AppType}&financialYear=${FinancialYear}`);\r\n }\r\n\r\n getActiveUserIDsByGeoCodes(userId:any){\r\n return this.http.get(`${environment.apiUrl}Department/GetActiveUserIDsByGeoCodes?UserId=${userId}`);\r\n }\r\n GetUhbvnNOCPathByXEN(userid:any){\r\n return this.http.get(`${environment.apiUrl}FarmerApplication/GetUhbvnNOCPathByXEN?userid=${userid}`);\r\n }\r\n\r\n getDataToPrintMultipleChallanAtal(userId: String) {\r\n return this.http.post(`${environment.apiUrl}Challan/GetDataToPrintMultipleChallanAtal?RequestType=${userId}`, {});\r\n }\r\n\r\n approveOtherUsersChallan(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/ApproveOtherUsersChallan`, reqBody);\r\n }\r\n\r\n getApplicationsForMIFarmerShareToVendorLot(userId: String) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIFarmerShareToVendorLot?UserId=${userId}`);\r\n }\r\n getApplicationsForMISubsidyToVendorLot(userId: String) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToVendorLot?UserId=${userId}`);\r\n }\r\n\r\n getApplicationsForMISubsidyToFarmerLot(userId: String) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToFarmerLot?UserId=${userId}`);\r\n }\r\n\r\n getApplicationsForMISubsidyToFarmerLotIsAtal(userId: String) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToFarmerLot_Atal?UserId=${userId}`);\r\n }\r\n\r\n getApplicationsForMISubsidyToVendorLot_Atal(userId: String) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMISubsidyToVendorLot_Atal?UserId=${userId}`);\r\n }\r\n\r\n getApplicationsForMIRefundToFarmerLot(userId: String) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForMIRefundToFarmerLot?UserId=${userId}`);\r\n }\r\n insertpondSubsidyLot(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/InsertPondSubsidyLot`, reqBody);\r\n }\r\n\r\n getDashboardIframeUrl(reqBody){\r\n return this.http.post(`${environment.apiUrl}DashBoard/GetDashboardIFrameURL`, reqBody);\r\n }\r\n\r\n //post\r\n postCountExportDataFrequency(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/SaveMILotExportLog`, reqBody);\r\n }\r\n GetRealTimeDataofPDMCScheme() { \r\n return this.http.get(`${environment.apiUrl}DashBoard/MICanalTubewellApplication`);\r\n }\r\n GetMicroIrrigationSystem() {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetPondCanalTubewellApplication`);\r\n }\r\n GetLineChartList() { \r\n return this.http.get(`${environment.apiUrl}DashBoard/GetCMDashboardYearWiseProgressMI`);\r\n }\r\n GetPieChartList() { \r\n return this.http.get(`${environment.apiUrl}DashBoard/GetCMDashboardYearWiseMIArea`);\r\n }\r\n getApplicationDataOfPreEstimation(appId, progId){\r\n return this.http.get(`${environment.apiUrl}DashBoard/getApplicationDataOfPreEstimation?AppId=${appId}&ProgId=${progId}`);\r\n }\r\n \r\n getApplicationDataForPhysicalVer(autoId, userId){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationDataForPhysicalVer?AutoId=${autoId}&UserId=${userId}`);\r\n }\r\n\r\n getDistWiseAvgTimeConsumed(){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDistWiseAvgTimeConsumed`);\r\n }\r\n\r\n getDistWiseAvgTimeConsumedProgram(reqBody){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDistWiseAvgTimeConsumedProgram?District=${reqBody.District}&Program=${reqBody.Program}`);\r\n }\r\n\r\n\r\n getWorkflowAllStatusByAppId(reqBody){\r\n return this.http.get(`${environment.apiUrl}Reports/GetWorkflowAllStatusByAppId?AppId=${reqBody.AppId}&Program=${reqBody.Program}`);\r\n }\r\n\r\n getChallanPaymentDetails(appId: string){\r\n return this.http.get(`${environment.apiUrl}Challan/ChallanPaymentDetails?AppId=${appId}`);\r\n }\r\n\r\n getOutletMasterForCanal(){\r\n return this.http.get(`${environment.apiUrl}Department/GetOutletMasterForCanal`);\r\n }\r\n\r\n getCropMasterStatus(){\r\n return this.http.get(`${environment.apiUrl}Department/GetCropMasterStatus`);\r\n }\r\n\r\n updateCropStatus(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/UpdateCropStatus?CropId=${reqBody?.CropId}&Status=${reqBody?.Status}&DocumentPath=${reqBody?.documentPath}&documentID=${reqBody?.documentID}&fromDate=${reqBody?.fromDate}&endDate=${reqBody?.endDate}&Area=${reqBody?.area}&NetworkId=${reqBody?.NetworkId}&TerminalId=${reqBody?.TerminalId}`, {});\r\n }\r\n\r\n updateOutletStatus(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/UpdateOutletStatus?AutoId=${reqBody?.AutoId}&Status=${reqBody?.Status}&DocumentPath=${reqBody?.documentPath}&documentID=${reqBody?.documentID}&fromDate=${reqBody?.fromDate}&endDate=${reqBody?.endDate}&Area=${reqBody?.area}&NetworkId=${reqBody?.NetworkId}&TerminalId=${reqBody?.TerminalId}`, {});\r\n }\r\n\r\n getAppIdByAadharNo(aadhar){\r\n return this.http.get(`${environment.apiUrl}Department/GetAppIdByAadharNo?AadharNo=${aadhar}`, {});\r\n }\r\n\r\n getAppIdByAadharNoOrPhone(aadhar, mobile){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetBenificiarybyAadhaar?Aadhaar=${aadhar}&mobile=${mobile}`, {});\r\n }\r\n\r\n getOutletsForTarget(villageCode){\r\n return this.http.get(`${environment.apiUrl}Department/GetOutletsForTarget?Village_Code=${villageCode}`, {});\r\n }\r\n\r\n addOutletToTarget(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/AddOutletToTarget`, reqBody);\r\n }\r\n\r\n getOverflowPondMaster(){\r\n return this.http.get(`${environment.apiUrl}Department/GetOverFlowPondMaster`);\r\n }\r\n\r\n updateOverFLowPondTargetStatus(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/UpdateOverFLowPondTargetStatus?AutoId=${reqBody?.AutoId}&Status=${reqBody?.Status}&DocumentPath=${reqBody?.documentPath}&documentID=${reqBody?.documentID}&fromDate=${reqBody?.fromDate}&endDate=${reqBody?.endDate}&Area=${reqBody?.area}&NetworkId=${reqBody?.NetworkId}&TerminalId=${reqBody?.TerminalId}`, {});\r\n }\r\n\r\n addOverFlowPondToTarget(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/AddOverFlowPondToTarget`, reqBody);\r\n }\r\n\r\n getAppLastStatus(reqBoady){\r\n return this.http.get(`${environment.apiUrl}Department/GetAppLastStatus?AppId=${reqBoady?.appId}&ProgId=${reqBoady?.progId}`);\r\n }\r\n\r\n addFarmerQueries(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/AddFarmerQueries`, reqBody);\r\n }\r\n\r\n getFarmerQueriesActionMaster(){\r\n return this.http.get(`${environment.apiUrl}Department/GetFarmerQueriesActionMaster`);\r\n }\r\n\r\n getSelectedProgram(appId: any){\r\n return this.http.get(`${environment.apiUrl}Department/GetSelectedProgram?AppId=${appId}`);\r\n }\r\n\r\n getProgramToBeChanged(appId: any){\r\n return this.http.get(`${environment.apiUrl}Department/GetProgramToBeChanged?AppId=${appId}`);\r\n }\r\n\r\n getMIConsolidatedFailedLotData(lotType: any, UserId: any){\r\n return this.http.get(`${environment.apiUrl}Department/GetMIConsolidatedFailedLotData?LotType=${lotType}&UserId=${UserId}`);\r\n }\r\n\r\n getPondConsolidatedFailedLotData(Stage: any, UserId: any){\r\n return this.http.get(`${environment.apiUrl}Department/GetPondConsolidatedFailedLotData?Stage=${Stage}&UserId=${UserId}`);\r\n }\r\n\r\n getMIFailedLotData(lotType: any, LotNo: any){\r\n return this.http.get(`${environment.apiUrl}Department/GetMIFailedLotData?LotType=${lotType}&LotNo=${LotNo}`);\r\n }\r\n\r\n getPondFailedLotData(Stage: any, LotNo: any){\r\n return this.http.get(`${environment.apiUrl}Department/GetPondFailedLotData?Stage=${Stage}&LotNo=${LotNo}`);\r\n }\r\n\r\n updateMIFailedLot(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/UpdateMIFailedLot`, reqBody);\r\n }\r\n \r\n updatePondFailedLot(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/UpdatePondFailedLot`, reqBody);\r\n }\r\n \r\n getAppsForReVerEPC(conId, userId){\r\n return this.http.get(`${environment.apiUrl}Department/GetAppsForReVerEPC?ConId=${conId}&UserId=${userId}`);\r\n }\r\n \r\n getAppsForLotGenerationEPC(conId, userId, status){\r\n return this.http.get(`${environment.apiUrl}Department/GetAppsForLotGenerationEPC?ConId=${conId}&UserId=${userId}&Status=${status}`);\r\n }\r\n \r\n importLotsEPC(reqBody){ \r\n return this.http.post(`${environment.apiUrl}Department/ImportLotsEPC`, reqBody);\r\n }\r\n \r\n getAverageTimeConsumed(userId){\r\n return this.http.get(`${environment.apiUrl}Dashboard/GetAverageTimeConsumed?UserId=${userId}`);\r\n }\r\n \r\n getAllUserRanking(){\r\n return this.http.get(`${environment.apiUrl}Reports/GetAllUserRanking`);\r\n }\r\n \r\n getUserRankingByActionUser(userAction, userRole, userID){\r\n return this.http.get(`${environment.apiUrl}Reports/GetUserRankingByActionUser?Action_Type=${userAction}&UserRole=${userRole}&UserID=${userID}`);\r\n }\r\n \r\n getAppIDAssignmentPlan(userId){\r\n return this.http.get(`${environment.apiUrl}Department/GetAppIDAssignmentPlan?userid=${userId}`);\r\n }\r\n \r\n jeAssignSurveyPlan(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/JeAssignSurveyPlan`, reqBody);\r\n }\r\n \r\n reAssignSurveyPlan(reqBody: any){\r\n return this.http.post(`${environment.apiUrl}Department/ReAssignSurveyPlan`, reqBody);\r\n }\r\n\r\n getTargetsMIPond(){\r\n return this.http.get(`${environment.apiUrl}Department/GetTargetsMIPond`);\r\n }\r\n\r\n updateMIPondTarget(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/UpdateMIPondTarget`, reqBody);\r\n }\r\n\r\n insertTarget(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/InsertTarget`, reqBody);\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TokenService } from '../services/common/token.service';\r\nimport { BaseService } from '../services/common/base.service';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../environments/environment';\r\nimport { BehaviorSubject, observable } from 'rxjs';\r\nimport { TreeNode } from 'primeng/api';\r\n\r\n@Injectable()\r\nexport class FarmerLandDetailService extends BaseService {\r\n protected http: HttpClient;\r\n onDatatablessChanged: BehaviorSubject;\r\n\r\n constructor(http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this.http = http;\r\n this.onDatatablessChanged = new BehaviorSubject({});\r\n }\r\n Get(farmerId: any) {\r\n // return this.http.get(`${environment.apiUrl}LandDetails/GetByFarmerID?FarmerID=${farmerId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}LandDetails/GetByFarmerID?FarmerID=${farmerId}`);\r\n }\r\n\r\n InsertLandDetails(onFramMiModel: any) {\r\n // return this.http.post(`${environment.apiUrl}LandDetails/Insert`, onFramMiModel, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}LandDetails/Insert`, onFramMiModel);\r\n }\r\n\r\n insertJamabandi(reqBody: any) {\r\n return this.http.post(`${environment.apiUrl}LandDetails/Insert_Jamabandi`, reqBody);\r\n }\r\n\r\n UpdateLandDetails(onFramMiModel: any) {\r\n // return this.http.post(`${environment.apiUrl}LandDetails/Update`, onFramMiModel, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}LandDetails/Update`, onFramMiModel);\r\n }\r\n\r\n DeleteLandDetails(onFramMiModel: any) {\r\n // return this.http.post(`${environment.apiUrl}LandDetails/Delete`, onFramMiModel, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}LandDetails/Delete`, onFramMiModel);\r\n }\r\n\r\n GetCorpType() {\r\n // return this.http.get(`${environment.apiUrl}LandDetails/GetCropMaster`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}LandDetails/GetCropMaster`);\r\n }\r\n\r\n getNotUsedLandsByFarmerID(farmerId: any) {\r\n return this.http.get(`${environment.apiUrl}LandDetails/GetNotUsedLandsByFarmerID?FarmerID=${farmerId}`);\r\n }\r\n\r\n landDetailsInsert_CR(reqBody: any) {\r\n return this.http.post(`${environment.apiUrl}ChangeRequest/LandDetailsInsert_CR`, reqBody);\r\n }\r\n\r\n getAreaByLandId(landId: any) {\r\n return this.http.get(`${environment.apiUrl}OnFormMI/GetAreaByLandId?LandId=${landId}`);\r\n }\r\n getPreEstimateSurvey(reqBody:any):any {\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPreEstimateSurveyDetails`, reqBody);\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FarmersApplicationService extends BaseService {\r\n constructor(private _http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this._http = _http;\r\n }\r\n\r\n postFarmersRegistrationData(data: any): Observable {\r\n return this._http.post(\r\n environment.apiUrl + 'FarmerApplication/SubmitApplication',\r\n data\r\n );\r\n }\r\n\r\n getAllMiVendors(): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetAllMIvenders'\r\n );\r\n }\r\n getAllSolarVendors(): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetAllSolarVender'\r\n );\r\n }\r\n getPrimarySolarVendors(solarId): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetPrimarySolarVender?solarID='+solarId\r\n );\r\n }\r\n\r\n getPumpCapacityList(PumpContType, PumpCategory, PumpType): Observable {\r\n return this._http.get(\r\n environment.apiUrl + `FarmerApplication/GetSolarPumpCapacity?PumpContType=${PumpContType}&PumpCategory=${PumpCategory}&PumpType=${PumpType}`\r\n );\r\n }\r\n\r\n updateFarmerSolarDetails(reqBody): Observable {\r\n return this._http.put(\r\n environment.apiUrl + `FarmerApplication/UpdateFarmerSolarDetails`, reqBody\r\n );\r\n }\r\n\r\n getSecondarySolarVendors(solarId): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetSecondarySolarVender?solarID=' + solarId\r\n );\r\n }\r\n\r\n getAllTank(): Observable {\r\n return this._http.get(environment.apiUrl + 'FarmerApplication/GetAllTank');\r\n }\r\n\r\n getTankType(): Observable {\r\n return this._http.get(environment.apiUrl + 'FarmerApplication/GetTankType');\r\n }\r\n \r\n getAreaBasedOnTankType(tankType: any): Observable {\r\n return this._http.get(environment.apiUrl + `FarmerApplication/GetAreaBasedOnTankType?TankType=${tankType}`);\r\n }\r\n\r\n getSolarMaster(): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetSolarMaster'\r\n );\r\n }\r\n\r\n getComponentMaster(): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetComponentMaster'\r\n );\r\n }\r\n \r\n getSchemeMaster(...args): Observable {\r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetSchemeMaster?SchemeId=${args[0] ? args[0] : ''}`\r\n );\r\n }\r\n\r\n getFarmersLandId(farmerId): Observable {\r\n return this._http.get(\r\n environment.apiUrl +\r\n 'LandDetails/GetByFarmerID?FarmerID=' +\r\n farmerId\r\n );\r\n }\r\n\r\n getNotUsedLandsByFarmerID(farmerId: any) {\r\n return this._http.get(`${environment.apiUrl}LandDetails/GetNotUsedLandsByFarmerID?FarmerID=${farmerId}`);\r\n }\r\n\r\n GetAllFarmerDetails(): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetAllFarmerDetails'\r\n );\r\n }\r\n\r\n GetAllOutletDetails(villageCode: any): Observable {\r\n // return this._http.get(\r\n // `${environment.apiUrl}FarmerApplication/GetOutlatMaster?villageCode=${villageCode}`\r\n // );\r\n\r\n return this._http.post(\r\n environment.apiUrl + 'FarmerApplication/GetOutlatMaster',\r\n villageCode\r\n );\r\n }\r\n\r\n\r\n LetAllOutletDetails(): Observable {\r\n return this._http.get(\r\n `${environment.apiUrl}FarmerApplication/GetAllOutlatMaster`\r\n );\r\n }\r\n\r\n GetWorktypeMaster(): Observable {\r\n return this._http.get(\r\n environment.apiUrl + 'FarmerApplication/GetWorkTypeMaster'\r\n );\r\n }\r\n\r\n GetFarmerDetailsByVillageCode(villageCode: string): Observable {\r\n return this._http.get(\r\n `${environment.apiUrl}FarmerApplication/GetFarmerDetailsByVillageCode/${villageCode}`\r\n );\r\n }\r\n\r\n GetFarmerAndLandByVillageCode(villageCode: string): Observable {\r\n // return this._http.get(\r\n // `${environment.apiUrl}FarmerApplication/GetFarmerLandByVillageCode/${villageCode}`\r\n // );\r\n return this._http.post(\r\n environment.apiUrl + 'FarmerApplication/GetFarmerLandByVillageCode',\r\n villageCode\r\n );\r\n }\r\n\r\n GetFarmerLandByFarmerIds(reqBody: any): Observable {\r\n return this._http.post(\r\n environment.apiUrl + 'LandDetails/GetFarmerLandByFarmerID',\r\n reqBody\r\n );\r\n }\r\n\r\n getAllMIvenders(programId: string): Observable {\r\n return this._http.get(\r\n `${environment.apiUrl}FarmerApplication/GetAllMIvenders?ProgramId=${programId}`\r\n );\r\n }\r\n\r\n getApplicationIdsByFarmerIdForCR(farmerId: any){\r\n return this._http.get(`${environment.apiUrl}ChangeRequest/GetApplicationIdsByFarmerIdForCR?FarmerId=${farmerId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n personalDetailsInsert_CR(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'ChangeRequest/PersonalDetailsInsert_CR', reqBody);\r\n }\r\n\r\n \r\n changeReqSubmitApplication(data: any): Observable {\r\n return this._http.post(\r\n environment.apiUrl + 'ChangeRequest//SubmitApplication_CR',\r\n data\r\n );\r\n }\r\n\r\n getOverFlowPondMaster(Village_Code: any){\r\n return this._http.post(environment.apiUrl + 'FarmerApplication/GetOverFlowPondMaster', Village_Code);\r\n }\r\n\r\n getValidateUHBVNData(uhbvnAppId, mobileNo){\r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetValidateUHBVNData?UHBVNAppId=${uhbvnAppId}&MobileNo=${mobileNo}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getFarmerCategory(){\r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetFarmerCategory`, { headers: this.buildHeaders() });\r\n }\r\n \r\n getOutletByContractor(ContractorId, userId, status){\r\n return this._http.get(`${environment.apiUrl}Vendor/GetOutletByContractor?ContractorId=${ContractorId}&UserId=${userId}&Status=${status}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getFarmerPastSubsidyByAadharNo(aadharNo){\r\n return this._http.get(`${environment.apiUrl}OnFormMI/GetFarmerPastSubsidyByAadharNo?AadharNo=${aadharNo}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getAgreementByContractor(ContractorId, outletId, userId, status){\r\n return this._http.get(`${environment.apiUrl}Vendor/GetAgreementByContractor?ContractorId=${ContractorId}&OutletId=${outletId}&UserId=${userId}&Status=${status}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getChunkIds(contractorId, agreementNo, outletId, userId, status){\r\n return this._http.get(`${environment.apiUrl}Vendor/GetChunkIds?ContractorId=${contractorId}&AgreementNo=${agreementNo}&OutletId=${outletId}&UserId=${userId}&Status=${status}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n submitOwnMIFarmerDetail(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'FarmerApplication/SubmitOwnMIFarmerDetail', reqBody);\r\n }\r\n\r\n uploadUHBVNFieldXENNoc(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'FarmerApplication/UploadUHBVNFieldXENNoc', reqBody);\r\n }\r\n\r\n getUHBVNData(appId){\r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetUHBVNData?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getKrishiMapperData(apiUrl, reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + `External/${apiUrl}`, reqBody);\r\n }\r\n\r\n postKrishiMapperData(apiUrl, reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + `External/${apiUrl}`, reqBody);\r\n }\r\n \r\n getBeneficiaryToInsert(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'External/GetBeneficiaryToInsert', reqBody);\r\n }\r\n \r\n getBeneficiaryToInsertTransactionDetail(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'External/GetBeneficiaryToInsertTransactionDetail', reqBody);\r\n }\r\n \r\n getBeneficiaryGPSMasterData(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'External/GetBeneficiaryGPSMasterData', reqBody);\r\n }\r\n\r\n getBeneficiaryGeoFenceData(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'External/GetBeneficiaryGeoFenceData', reqBody);\r\n }\r\n\r\n getBeneficiaryCropDetail(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'External/GetBeneficiaryCropDetail', reqBody);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable, of } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { FarmerDetails } from '../models/farmer-details.model';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\nimport { VendorDetails } from '../models/vendor-details.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FarmersDetailsService extends BaseService { \r\n private isAdharValidCheck = new BehaviorSubject(0);\r\n isAdharValid = this.isAdharValidCheck.asObservable();\r\n\r\n constructor(private _http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this._http = _http;\r\n }\r\n updateAdharValidCheck(data: any) {\r\n this.isAdharValidCheck.next(data);\r\n }\r\n\r\n postFarmersData(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'PersonalDetails/Insert', reqBody)\r\n }\r\n updateFarmersData(reqBody: any): Observable {\r\n return this._http.post(environment.apiUrl + 'PersonalDetails/Update', reqBody)\r\n }\r\n postVendersData(data:any):Observable{\r\n return this._http.post(environment.apiUrl+'Vendor/InsertVendorPersonalDetails',data);\r\n }\r\n getVendorDetails(phoneNo):Observable{\r\n return this._http.get(`${environment.apiUrl}Vendor/GetVendorRegnDetailsByMobile?mobile=${phoneNo}`);\r\n }\r\n getVillageMatserData(): Observable {\r\n if(window.localStorage.getItem(\"villageMaster\")){\r\n return of(JSON.parse(window.localStorage.getItem(\"villageMaster\")));\r\n }else{\r\n return this._http.get(environment.apiUrl + 'PersonalDetails/VillageMaster')\r\n }\r\n }\r\n getCasteMatserData(): Observable {\r\n return this._http.get(environment.apiUrl + 'PersonalDetails/CastMaster')\r\n }\r\n\r\n getFarmerDetails(phoneNo): Observable {\r\n return this._http.get(`${environment.apiUrl}PersonalDetails/GetDataByMobileNo?MobileNo=${phoneNo}`);\r\n\r\n }\r\n \r\n uploadFile(data, mobile, uploadType){\r\n return this._http.post(`${environment.apiUrl}File/Upload?MobileNo=${mobile}&UploadType=${uploadType}`, data,\r\n // {\r\n // headers: {\r\n // 'Content-Type': 'multipart/form-data',\r\n // },\r\n // }\r\n )\r\n }\r\n getBase64Image(path){\r\n return this._http.get(`${environment.apiUrl}File/GetFileAsBase64/${path}`)\r\n }\r\n\r\n getTargetStatus(reqBody){\r\n return this._http.post(`${environment.apiUrl}FarmerApplication/GetTargetStatus?AppId=${reqBody.AppId}&VillageCode=${reqBody.VillageCode}&MI=${reqBody.MI}&Pond=${reqBody.Pond}&Solar=${reqBody.Solar}&LandId=${reqBody.LandId}&ProgramId=${reqBody.ProgramId}&ApplyArea=${reqBody.ApplyArea}&SchemeCode=${reqBody.SchemeCode}&UHBVNAppId=${reqBody.UHBVNAppId}`, {responseType: 'text'})\r\n }\r\n\r\n getVillageBasedOnFarmerId(farmerId): Observable {\r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetVillageBasedOnFarmerId?FarmerId=${farmerId}`);\r\n }\r\n\r\n validateAadhar(aadharNumber){\r\n return this._http.get(`${environment.apiUrl}External/GenerateAadharOTP?AadharNo=${aadharNumber}`);\r\n // return this._http.get(`http://cada.hartron.io:98/api/External/GenerateAadharOTP?AadharNo=${aadharNumber}`);\r\n }\r\n\r\n validatePPID(FID){\r\n return this._http.get(`${environment.apiUrl}External/GenerateAadharOTP?AadharNo=${FID}`);\r\n // return this._http.post(`http://cada.hartron.io:98/api/External/OTPRequestForFID?FID=${FID}`, {responseType: 'text'});\r\n }\r\n\r\n getFamilyIdByUID(UID, farmerId){\r\n farmerId = farmerId == null ? '' : farmerId;\r\n return this._http.post(`${environment.apiUrl}External/GetFamilyIdByUID?UID=${UID}&FarmerId=${farmerId}`, {responseType: 'text'});\r\n // return this._http.post(`http://cada.hartron.io:98/api/External/GetFamilyIdByUID?UID=${UID}&FarmerId=${farmerId}`, {responseType: 'text'});\r\n }\r\n\r\n validateOTP(aadharNumber, otp, memberId){\r\n memberId = memberId == null ? '' : memberId;\r\n return this._http.get(`${environment.apiUrl}External/ValidateAadharOTP?AadharNo=${aadharNumber}&OTP=${otp}&MemberId=${memberId}`);\r\n // return this._http.get(`http://cada.hartron.io:98/api/External/ValidateAadharOTP?AadharNo=${aadharNumber}&OTP=${otp}&MemberId=${memberId}`);\r\n }\r\n\r\n OTPRequestforMEMID(MID){ \r\n return this._http.post(`${environment.apiUrl}External/OTPRequestforMEMID?MemberId=${MID}`, {responseType: 'text'});\r\n }\r\n\r\n verifyOTPRequestForMID(FID, memberId, otp){ \r\n FID = FID == null ? '' : FID;\r\n memberId = memberId == null ? '' : memberId;\r\n\r\n return this._http.post(`${environment.apiUrl}External/VerifyOTPRequestForMID?FID=${FID}&MemberId=${memberId}&OTP=${otp}`, {responseType: 'text'});\r\n // return this._http.post(`http://cada.hartron.io:98/api/External/VerifyOTPRequestForMID?FID=${FID}&MemberId=${memberId}&OTP=${otp}`, {responseType: 'text'});\r\n }\r\n\r\n getVerifyPPPID(farmerId, familyId){ \r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetVerifyPPPID?FarmerId=${farmerId}&PPPID=${familyId}`);\r\n }\r\n\r\n getUHBVNAppForJE(userId){ \r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetUHBVNAppForJE?userid=${userId}`);\r\n }\r\n\r\n submitOwnMIFarmerDetailPV(reqBody:any):any {\r\n return this._http.post(`${environment.apiUrl}FarmerApplication/SubmitOwnMIFarmerDetailPV`, reqBody);\r\n }\r\n\r\n submitUHBVN_Letter_MI_PV(reqBody:any):any {\r\n return this._http.post(`${environment.apiUrl}FarmerApplication/SubmitUHBVN_Letter_MI_PV`, reqBody);\r\n }\r\n\r\n getOwnMIFarmerDetailPVByAppId(appId){ \r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetOwnMIFarmerDetailPVByAppId?AppId=${appId}`);\r\n }\r\n\r\n getUHBVN_Letter_MI_PV(appId){ \r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetUHBVN_Letter_MI_PV?AppId=${appId}`);\r\n }\r\n\r\n insertStatePhysicalFinancialTarget(reqBody){ \r\n return this._http.post(`${environment.apiUrl}External/InsertStatePhysicalFinancialTarget`, reqBody);\r\n }\r\n \r\n getStatePhysicalFinancialTarget(){ \r\n return this._http.get(`${environment.apiUrl}External/GetStatePhysicalFinancialTarget`);\r\n }\r\n \r\n postStatePhysicalFinancialTarget(){ \r\n return this._http.post(`${environment.apiUrl}External/PostStatePhysicalFinancialTarget`, {});\r\n }\r\n\r\n insertDistrictPhysicalFinancialTarget(reqBody){ \r\n return this._http.post(`${environment.apiUrl}External/insertDistrictPhysicalFinancialTarget`, reqBody);\r\n }\r\n \r\n getDistrictPhysicalFinancialTarget(){ \r\n return this._http.get(`${environment.apiUrl}External/GetDistrictPhysicalFinancialTarget`);\r\n }\r\n\r\n postDistrictPhysicalFinancialTarget(){ \r\n return this._http.post(`${environment.apiUrl}External/PostDistrictPhysicalFinancialTarget`, {});\r\n }\r\n \r\n getDistrictPhysicalFinancialAchievement(){ \r\n return this._http.get(`${environment.apiUrl}External/GetDistrictPhysicalFinancialAchievement`);\r\n }\r\n\r\n postDistrictPhysicalFinancialAchievement(){ \r\n return this._http.post(`${environment.apiUrl}External/PostDistrictPhysicalFinancialAchievement`, {});\r\n }\r\n\r\n getDistrictOtherSourceAchievement(){ \r\n return this._http.get(`${environment.apiUrl}External/GetDistrictOtherSourceAchievement`);\r\n }\r\n\r\n getVendorRegDocTypeMaster(){ \r\n return this._http.get(`${environment.apiUrl}vendor/GetVendorRegDocTypeMaster`);\r\n }\r\n\r\n getVendorRegStatusMaster(){ \r\n return this._http.get(`${environment.apiUrl}vendor/GetVendorRegStatusMaster`);\r\n }\r\n\r\n postDistrictOtherSourceAchievement(){ \r\n return this._http.post(`${environment.apiUrl}External/PostDistrictOtherSourceAchievement`, {});\r\n }\r\n getUHBVNAppByXEN(userId){ \r\n return this._http.get(`${environment.apiUrl}FarmerApplication/GetUHBVNAppByXEN?userid=${userId}`);\r\n }\r\n\r\n getEmailOTPVendorReg(reqBody){ \r\n return this._http.post(`${environment.apiUrl}Vendor/GetEmailOTPVendorReg`, reqBody);\r\n }\r\n\r\n getMobileOTPVendorReg(reqBody){ \r\n return this._http.post(`${environment.apiUrl}Vendor/GetOTPVendorReg`, reqBody);\r\n }\r\n\r\n emailOTPValidationVendorReg(reqBody){ \r\n return this._http.post(`${environment.apiUrl}Vendor/EmailOTPValidationVendorReg`, reqBody);\r\n }\r\n\r\n mobileOTPValidationVendorReg(reqBody){ \r\n return this._http.post(`${environment.apiUrl}Vendor/OTPValidationVendorReg`, reqBody);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IpAddressService {\r\n\r\n constructor(private http:HttpClient) { } \r\n\r\n public getIPAddress() \r\n { \r\n return this.http.get(\"https://api.ipify.org/?format=json\"); \r\n } \r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class JEService extends BaseService {\r\n\r\n private rdServiceUrl = 'https://localhost:11200';\r\n\r\n constructor(private http: HttpClient, tokenService: TokenService, private router: Router) {\r\n super(tokenService);\r\n }\r\n // GET SERVICES\r\n getFarmerPondVerification(userId: any, stage: any) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerApplicationForPondVerification?UserId=${userId}&Stage=${stage}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n // getFarmerApplicationForPondVerStage1(userId:any)\r\n // {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerApplicationForPondVerificationStage1?UserId=${userId}`, { headers: this.buildHeaders() });\r\n // }\r\n\r\n getFarmerApplicationForPondVerStage1(userId: any, AppType: any, financialYear: any) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerAppForPondVer_SubsidyCalc_Stage1?UserId=${userId}&AppType=${AppType}&financialyear=${financialYear}`, { headers: this.buildHeaders() });\r\n }\r\n else{\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerApplicationForPondVerificationStage1?UserId=${userId}&AppType=${AppType}&financialyear=${financialYear}`, { headers: this.buildHeaders() });\r\n }\r\n }\r\n\r\n // getFarmerApplicationForPondVerStage2(userId:any)\r\n // {\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerApplicationForPondVerificationStage2?UserId=${userId}`, { headers: this.buildHeaders() });\r\n\r\n // }\r\n\r\n getFarmerApplicationForPondVerStage2(userId: any, AppType: any, financialYear: any) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerAppForPondVer_SubsidyCalc_Stage2?UserId=${userId}&AppType=${AppType}&financialyear=${financialYear}`, { headers: this.buildHeaders() });\r\n }\r\n else{\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerApplicationForPondVerificationStage2?UserId=${userId}&AppType=${AppType}&financialyear=${financialYear}`, { headers: this.buildHeaders() });\r\n }\r\n }\r\n\r\n GetFarmerAppForPondVer_SubsidyCalc_Stage3(userId: any, AppType: any, financialYear: any) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerAppForPondVer_SubsidyCalc_Stage3?UserId=${userId}&AppType=${AppType}&financialyear=${financialYear}`, { headers: this.buildHeaders() });\r\n\r\n }\r\n\r\n // getPondVerDataByAppIdStage1(appId:any){\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetPondVerificationDataByAppIdStage1?AppId=${appId}`, { headers: this.buildHeaders() });\r\n // }\r\n\r\n getPondVerDataByAppIdStage1(appId: any) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetPondVerDataByAppId_SubsidyCalc_Stage1?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n else{\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetPondVerificationDataByAppIdStage1?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n}\r\n\r\n // getPondVerDataByAppIdStage2(appId:any){\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetPondVerificationDataByAppIdStage2?AppId=${appId}`, { headers: this.buildHeaders() });\r\n // }\r\n\r\n getPondVerDataByAppIdStage2(appId: any) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetPondVerDataByAppId_SubsidyCalc_Stage2?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n else{\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetPondVerificationDataByAppIdStage2?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n \r\n \r\n }\r\n\r\n getPondVerDataByAppId_SubsidyCalc_Stage3(appId: any) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetPondVerDataByAppId_SubsidyCalc_Stage3?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getSubsidyDetails(appId: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetSubsidyDetails?AppId=${appId}`, { headers: this.buildHeaders() });\r\n }\r\n //POST SERVICES\r\n vendorPondEstimate(vendorPondEstimate: any) {\r\n return this.http.post(`${environment.apiUrl}Vendor/UpsertPondEstimate`, vendorPondEstimate, { headers: this.buildHeaders() });\r\n }\r\n\r\n // pondSurveyStage1(pondSurveyStage1: any){\r\n // return this.http.post(`${environment.apiUrl}DashBoard/InsertPondSurveyStage1`, pondSurveyStage1, { headers: this.buildHeaders() });\r\n // }\r\n\r\n pondSurveyStage1(pondSurveyStage1: any) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPondSurvey_SubsidyCalc_Stage1`, pondSurveyStage1, { headers: this.buildHeaders() });\r\n }\r\n else{\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPondSurveyStage1`, pondSurveyStage1, { headers: this.buildHeaders() });\r\n }\r\n}\r\n\r\n // pondSurveyStage2(pondSurveyStage2: any){\r\n // return this.http.post(`${environment.apiUrl}DashBoard/InsertPondSurveyStage2`, pondSurveyStage2, { headers: this.buildHeaders() });\r\n // }\r\n\r\n pondSurveyStage2(pondSurveyStage2: any) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPondSurvey_SubsidyCalc_Stage2`, pondSurveyStage2, { headers: this.buildHeaders() });\r\n }\r\n else{\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPondSurveyStage2`, pondSurveyStage2, { headers: this.buildHeaders() });\r\n }\r\n}\r\n\r\n //POST SERVICES\r\n PondFalseIntimation(PondFalseIntimation: any) {\r\n return this.http.post(`${environment.apiUrl}Vendor/InsertPondFalseIntimation`, PondFalseIntimation, { headers: this.buildHeaders() });\r\n }\r\n\r\n //GET Physical Verification Applications for MI\r\n getApplicationsForPhysicalVerification(userId, appType, financialYear) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationsForMIPhysicalVer_SubsidyCalc?UserId=${userId}&AppType=${appType}&financialYear=${financialYear}`, { headers: this.buildHeaders() });\r\n } else {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationsForPhysicalVerification?UserId=${userId}&AppType=${appType}&financialYear=${financialYear}`, { headers: this.buildHeaders() });\r\n }\r\n }\r\n\r\n //GET Application data for physical verification\r\n getApplicationDataForPhysicalVerification(autoId, userId) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationDataForMIPhysicalVer_SubsidyCalc?AutoId=${autoId}&UserId=${userId}`, { headers: this.buildHeaders() });\r\n } else {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationDataForPhysicalVer?AutoId=${autoId}&UserId=${userId}`, { headers: this.buildHeaders() });\r\n }\r\n }\r\n\r\n getApplicationDataForPhysicalVerification_CalculatedSubsidy(autoId, userId) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationDataForPhysicalVer?AutoId=${autoId}&UserId=${userId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n\r\n //POST Application data for physical verification\r\n insertPhysicalVerification(reqBody: any) {\r\n if ((this.router.url.split('/')[1] == 'department') || (this.router.url.split('/')[1] == 'admin') || (this.router.url.split('/')[1] == 'ew-je') || (this.router.url.split('/')[1] == 'ew-department')) {\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPhysicalMIVerification_SubsidyCalc`, reqBody, { headers: this.buildHeaders() });\r\n } else {\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPhysicalVerification`, reqBody, { headers: this.buildHeaders() });\r\n }\r\n }\r\n\r\n insertPondSurvey_SubsidyCalc_Stage3(reqBody: any) {\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertPondSurvey_SubsidyCalc_Stage3`, reqBody, { headers: this.buildHeaders() });\r\n }\r\n\r\n //Insert Servey Attachments\r\n insertServayAttachments(reqBody: any) {\r\n return this.http.post(`${environment.apiUrl}Department/InsertServayAttachments`, reqBody, { headers: this.buildHeaders() });\r\n }\r\n GetSubsidyAppForPondVer_SubsidyCalc_Stage1(userId: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPondStage1SubsidyToFarmerLot?UserId=${userId}`, { headers: this.buildHeaders() });\r\n \r\n }\r\n GetSubsidyAppForPondVer_SubsidyCalc_Stage2(userId: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPondStage2SubsidyToFarmerLot?UserId=${userId}`, { headers: this.buildHeaders() });\r\n\r\n }\r\n GetSubsidyAppForPondVer_SubsidyCalc_Stage3(userId: any) {\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPondStage3SubsidyToFarmerLot?UserId=${userId}`);\r\n\r\n }\r\n\r\n getMICADA1data(userId) {\r\n return this.http.get(`${environment.apiUrl}Department/GetMISurveyCoordinates?UserId=${userId}`, { headers: this.buildHeaders() })\r\n }\r\n getVendorGridData(userId){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetAllVendorRegnDetailsForGrid?UserId=${userId}`, { headers: this.buildHeaders() })\r\n\r\n }\r\n \r\n getVendorFullDetailsByEmail(emailId){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetVendorFullDetailsByEmail?email=${emailId}`, { headers: this.buildHeaders() })\r\n }\r\n\r\n submitVendorApprovalStatus(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/SubmitVendorApprovalStatus`, reqBody, { headers: this.buildHeaders() });\r\n }\r\n\r\n insertMISurveyCoordinates(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/InsertMISurveyCoordinates`, reqBody, { headers: this.buildHeaders() });\r\n }\r\n\r\n validateAadharBiometric(reqBody){\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'text/xml', // or 'application/xml'\r\n });\r\n\r\n return this.http.post(`${environment.apiUrl}External/ValidateAadharBiometric`, reqBody, {\r\n headers: headers,\r\n responseType: 'text'\r\n });\r\n\r\n // return this.http.post(`${environment.apiUrl}External/ValidateAadharBiometric`, reqBody, {responseType: 'text'});\r\n }\r\n\r\n // rdservice(){\r\n // return this.http.post(`https://LocalHost:11200`, {responseType: 'text'});\r\n // }\r\n\r\n rdservice(): Observable {\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n // Add any other required headers\r\n });\r\n\r\n // Creating a request with timestamp parameter\r\n const url = `${this.rdServiceUrl}/?ts=${new Date().getTime()}`;\r\n\r\n // Making the HTTP request\r\n return this.http.request('RDSERVICE', url, { headers });\r\n }\r\n\r\n deviceInfo(): Observable {\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n // Add any other required headers\r\n });\r\n\r\n // Creating a request with timestamp parameter\r\n const url = `${this.rdServiceUrl}/rd/info/?ts=${new Date().getTime()}`;\r\n\r\n // Making the HTTP request\r\n return this.http.request('DEVICEINFO', url, { headers });\r\n }\r\n\r\n capture(): Observable {\r\n const headers = new HttpHeaders({\r\n // 'Content-Type': 'application/json',\r\n 'Content-Type': 'text/xml',\r\n // Add any other required headers\r\n });\r\n\r\n // Creating a request with timestamp parameter\r\n const url = `${this.rdServiceUrl}/rd/capture/?ts=${new Date().getTime()}`;\r\n\r\n\r\n const xmlBody = \r\n // `  `;\r\n \"  \"\r\n // Making the HTTP request\r\n return this.http.request('CAPTURE', url, {\r\n headers,\r\n body: xmlBody\r\n });\r\n }\r\n\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TokenService } from '../services/common/token.service';\r\nimport { BaseService } from '../services/common/base.service';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../environments/environment';\r\nimport { BehaviorSubject, observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class OnFarmMiService extends BaseService {\r\n protected http: HttpClient;\r\n onDatatablessChanged: BehaviorSubject;\r\n\r\n constructor(http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this.http = http;\r\n this.onDatatablessChanged = new BehaviorSubject({});\r\n }\r\n GetOnFarmMi(farmerId: any) {\r\n // return this.http.get(`${environment.apiUrl}OnFormMI/GetByFarmerID?FarmerID=${farmerId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}OnFormMI/GetByFarmerID?FarmerID=${farmerId}`);\r\n }\r\n\r\n InsertOnFarmMi(onFramMiModel: any) {\r\n // return this.http.post(`${environment.apiUrl}OnFormMI/Insert`, onFramMiModel, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}OnFormMI/Insert`, onFramMiModel);\r\n }\r\n \r\n UpdateOnFarmMi(onFramMiModel: any) {\r\n // return this.http.post(`${environment.apiUrl}OnFormMI/Update`, onFramMiModel, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}OnFormMI/Update`, onFramMiModel);\r\n }\r\n\r\n DeleteOnFarmMi(onFramMiModel: any) {\r\n // return this.http.post(`${environment.apiUrl}OnFormMI/Delete`, onFramMiModel, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}OnFormMI/Delete`, onFramMiModel);\r\n }\r\n\r\n GetWaterQuality() {\r\n // return this.http.get(`${environment.apiUrl}OnFormMI/GetWaterQuality`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}OnFormMI/GetWaterQuality`);\r\n }\r\n\r\n GetFarmerPastSubsidyByFarmerId(farmerId) {\r\n // return this.http.get(`${environment.apiUrl}OnFormMI/GetFarmerPastSubsidyByFarmerId?FarmerId=${farmerId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}OnFormMI/GetFarmerPastSubsidyByFarmerId?FarmerId=${farmerId}`);\r\n }\r\n\r\n GetFarmerPastSubsidyByMultipleFarmerIds(farmerIds) {\r\n // return this.http.get(`${environment.apiUrl}OnFormMI/GetFarmerPastSubsidyByFarmerId?FarmerId=${farmerId}`, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}OnFormMI/GetFarmerPastSubsidyByMultipleFarmerIds`, farmerIds);\r\n }\r\n\r\n insertOnFarmMIDetails_CR(onFramMiModel: any) {\r\n return this.http.post(`${environment.apiUrl}ChangeRequest/InsertOnFarmMIDetails_CR`, onFramMiModel);\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PondIntimationService extends BaseService{\r\n\r\n constructor(private http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n}\r\n // GET SERVICES\r\n getAppIdByFarmerId(farmerId){\r\n // return this.http.get(`${environment.apiUrl}FarmerApplication/GetAppIDByFarmerID?FarmerID=${farmerId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}FarmerApplication/GetAppIDByFarmerID?FarmerID=${farmerId}`);\r\n }\r\n\r\n GetFarmerPondIntimation(farmerID: any) {\r\n // return this.http.get(`${environment.apiUrl}FarmerApplication/GetFarmerPondIntimation?appID=${appId}`, { headers: this.buildHeaders() });\r\n return this.http.get(`${environment.apiUrl}FarmerApplication/GetFarmerPondIntimation?farmerID=${farmerID}`);\r\n }\r\n \r\n //POST SERVICES\r\n updateFarmerPondIntimation(farmerIntimationBody: any) {\r\n // return this.http.post(`${environment.apiUrl}FarmerApplication/UpsertFarmerPondIntimation`, farmerIntimationBody, { headers: this.buildHeaders() });\r\n return this.http.post(`${environment.apiUrl}FarmerApplication/UpsertFarmerPondIntimation`, farmerIntimationBody);\r\n }\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\nimport { CryptoJsService } from './crypto-js.service';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ReportsService extends BaseService {\r\n\r\n protected http: HttpClient;\r\n user_name:any \r\n userId:any;\r\n isVendor:any;\r\n officeCode:any;\r\n constructor(http: HttpClient, tokenService: TokenService,private cryptoJs: CryptoJsService) {\r\n super(tokenService);\r\n this.http = http;\r\n }\r\n parameter_api(){\r\n this.user_name= sessionStorage.getItem('User_name_while_login');\r\n // console.log(this.user_name,\"this.user_namethis.user_namethis.user_name\")\r\n this.isVendor= sessionStorage.getItem('isVendor');\r\n this.officeCode= sessionStorage.getItem('officeCode');\r\n if(this.user_name === 'DMICADA' || this.user_name === 'ADVISOR'){\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt('DMICADA'))\r\n }\r\n else if(this.user_name === 'ADMIN'){\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt('ADMIN'))\r\n }\r\n else if(this.user_name === 'CAO'){\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt('CAO'))\r\n }\r\n \r\n \r\n else if(this.isVendor){\r\n this.user_name=this.officeCode;\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.user_name))\r\n }\r\n \r\n else{\r\n this.userId=encodeURIComponent(this.cryptoJs.Encrypt(this.user_name))\r\n }\r\n }\r\n\r\n getAppVerification_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetAppVerification_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n\r\n getAppVerification_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetAppVerification_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getAppVerification_UserWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetAppVerification_UserWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getAppVerification_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetAppVerification_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getEstimation_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimation_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getEstimation_UserWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimation_UserWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getEstimation_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimation_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getEstimation_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimation_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n\r\n getBoq_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetBOQ_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getBoq_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetBOQ_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getBoq_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetBOQ_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getBoq_MiType_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetBOQ_MIType_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getEstimationVerification_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimateVerification_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getGrievenceHandler() {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}MICADAgrievance/GetAllGrievanceTickets`);\r\n }\r\n\r\n // updateGrievence(){\r\n // this.parameter_api()\r\n // return this.http.get(`${environment.apiUrl}MICADAgrievance/GetAllGrievanceTickets`);\r\n // }\r\n\r\n updateGrievence(data:any):Observable{\r\n this.parameter_api()\r\n return this.http.post(environment.apiUrl+'MICADAgrievance/UpdateGrievance',data);\r\n }\r\n getEstimationVerification_UserWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimateVerification_UserWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getEstimationVerification_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimateVerification_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getEstimationVerification_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetEstimateVerification_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getChallan_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetChallan_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n\r\n getChallan_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetChallan_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getPhysicalVerification_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPhysicalVerification_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getPhysicalVerification_UserWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPhysicalVerification_UserWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getPhysicalVerification_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPhysicalVerification_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getPhysicalVerification_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPhysicalVerification_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getFSV_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetFSV_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getFSV_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetFSV_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n\r\n getFSV_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetFSV_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getSTV_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetSTV_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getSTV_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetSTV_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getSTV_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetSTV_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getSTF_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetSTF_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getSTF_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetSTF_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getSTF_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetSTF_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getRTF_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetRTF_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getRTF_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetRTF_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getRTF_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetRTF_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getMiVerificationSubsidy_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetMiVerificationSubsidy_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getVendorMIArea_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetVendorMIArea_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getTankAbstract_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetTankAbstract_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getStage1_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetStage1_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getStage2_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetStage2_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getStage3_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetStage3_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getStage1_Subsidy_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetStage1_Subsidy_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getStage2_Subsidy_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetStage2_Subsidy_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getStage3_Subsidy_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetStage3_Subsidy_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getCanalAndTubewell_BasedReport(selectedYear:any) {\r\n return this.http.get(`${environment.apiUrl}Reports/CanalAndTubewellBasedReport?financialyear=${selectedYear}`);\r\n }\r\n getChallan_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetChallan_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getChallan_Reconciliation_day_Report(selectedYear) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetChallan_Reconciliation_Day_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n } \r\n getCompletedApplication_DrillDown_Report(actionType,userId,status,filterType,MIType,value,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetCompletedApplication_DrillDown_Report?ActionType=${actionType}&Status=${status}&userId=${userId}&FilterType=${filterType}&MIType=${MIType}&Value=${value}&financialyear=${selectedYear}`);\r\n }\r\n getCompletedApplication_Block_DrillDown_Report(actionType,userId,status,filterType,MIType,value,block,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetCompletedApplication_Block_DrillDownReport?ActionType=${actionType}&Status=${status}&userId=${userId}&FilterType=${filterType}&MIType=${MIType}&Value=${value}&Block=${block}&financialyear=${selectedYear}`);\r\n }\r\n\r\n getTotalApplication_DrillDown_Report(actionType,userId,filterType,value,MIType,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetTotalApplication_DrillDown_Report?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&financialyear=${selectedYear}`);\r\n }\r\n getTotalApplication_Block_DrillDown_Report(actionType,userId,filterType,value,MIType,block,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetTotalApplication_Block_DrillDownReport?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&Block=${block}&financialyear=${selectedYear}`);\r\n }\r\n getPendingApplication_DrillDown_Report(actionType,userId,duration,filterType,value,MIType,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPendingApplication_DrillDown_Report?ActionType=${actionType}&userId=${userId}&Duration=${duration}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&financialyear=${selectedYear}`);\r\n }\r\n getPendingApplication_Block_DrillDown_Report(actionType,userId,duration,filterType,value,MIType,block,selectedYear){\r\n \r\n return this.http.get(`${environment.apiUrl}Reports/GetPendingApplication_Block_DrillDownReport?ActionType=${actionType}&userId=${userId}&Duration=${duration}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&Block=${block}&financialyear=${selectedYear}`);\r\n }\r\n getRejectedApplication_DrillDown_Report(actionType,userId,filterType,MIType,value,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetRejectedApplication_DrillDown_Report?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&MIType=${MIType}&Value=${value}&financialyear=${selectedYear}`);\r\n }\r\n getRejectedApplication_Block_DrillDown_Report(actionType,userId,filterType,MIType,value,block,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetRejectedApplication_Block_DrillDownReport?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&MIType=${MIType}&Value=${value}&Block=${block}&financialyear=${selectedYear}`);\r\n }\r\n\r\n get7500Report(selectedYear) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/Get7500Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n } \r\n\r\n getAtalReport(selectedYear) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetAtalReport?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n } \r\n getPendingApplication_lot_DrillDown_Report(actionType,userId,duration,filterType,value,MIType,Block,selectedYear){\r\n \r\n return this.http.get(`${environment.apiUrl}Reports/getPendingApplication_Lot_DrillDown?ActionType=${actionType}&userId=${userId}&Duration=${duration}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&Block=${Block}&financialyear=${selectedYear}`);\r\n }\r\n getTotalApplication_lot_DrillDown_Report(actionType,userId,filterType,value,MIType,Block,selectedYear){\r\n \r\n return this.http.get(`${environment.apiUrl}Reports/getTotalApplication_Lot_DrillDown?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&Block=${Block}&financialyear=${selectedYear}`);\r\n }\r\n getChallanCompletedApplication_DrillDown_Report(actionType,userId,status,filterType,value,MIType,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetChallanCompletedApplication_DrillDown_Report?ActionType=${actionType}&Status=${status}&userId=${userId}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&financialyear=${selectedYear}`);\r\n }\r\n getChallanReconsillationrptDrilldown(reqBody: any){\r\n return this.http.post(`${environment.apiUrl}Reports/GetChallanReconsillationrptDrilldown`, reqBody);\r\n }\r\n getPondAbstract_DrillDown_Report(userId,district,status,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/getPondAbstract_DrillDown?userId=${userId}&District=${district}&Status=${status}&financialyear=${selectedYear}`);\r\n }\r\n getPondPending_DrillDown_Report(actionType,userId,district,program,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/getPondPending_DrillDown?ActionType=${actionType}&userId=${userId}&District=${district}&program=${program}&financialyear=${selectedYear}`);\r\n }\r\n getPreEstimation_DistrictWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPreEstimationSurvey_DistrictWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getPreEstimation_UserWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPreEstimationSurvey_UserWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getPreEstimation_VendorWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPreEstimationSurvey_VendorWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getPreEstimation_MonthWise_Report(selectedYear:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetPreEstimationSurvey_MonthWise_Report?UserID=${this.userId}&financialyear=${selectedYear}`);\r\n }\r\n getAppVerificationTotalApplication_DrillDown_Report(actionType,userId,filterType,value,MIType,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetAppVerificationTotalApplication_DrillDown_Report?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&financialyear=${selectedYear}`);\r\n }\r\n getAppVerificationRejectedApplication_DrillDown_Report(actionType,userId,filterType,MIType,value,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetRejectedApplication_DrillDown_Report?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&MIType=${MIType}&Value=${value}&financialyear=${selectedYear}`);\r\n }\r\n getAppVerificationPendingApplication_DrillDown_Report(actionType,userId,duration,filterType,value,MIType,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetAppVerificationPendingApplication_DrillDown_Report?ActionType=${actionType}&userId=${userId}&Duration=${duration}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&financialyear=${selectedYear}`);\r\n }\r\n getAppVerificationCompletedApplication_DrillDown_Report(actionType,userId,status,filterType,MIType,value,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetAppVerificationCompletedApplication_DrillDown_Report?ActionType=${actionType}&Status=${status}&userId=${userId}&FilterType=${filterType}&MIType=${MIType}&Value=${value}&financialyear=${selectedYear}`);\r\n }\r\n getDDAssociateDailyTaskMI(userId,startDate,endDate){\r\n \r\n return this.http.get(`${environment.apiUrl}Reports/DDAssociateDailyTaskMI?Userid=${userId}&startdate=${startDate}&endDate=${endDate}`);\r\n } \r\n getDDAssociateDailyTaskPond(userId,startDate,endDate){\r\n \r\n return this.http.get(`${environment.apiUrl}Reports/DDAssociateDailyTaskPond?Userid=${userId}&startdate=${startDate}&endDate=${endDate}`);\r\n }\r\n getPondCompleted_DrillDown_Report(actionType,userId,district,program,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/getPondCompleted_DrillDown?ActionType=${actionType}&userId=${userId}&District=${district}&program=${program}&financialyear=${selectedYear}`);\r\n }\r\n getVendor_MI_Area_Report(userId,status,MIType,value,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetVendorMIAreaReport_DrillDown?userId=${userId}&status=${status}&vendorCode=${value}&Component=${MIType}&financialyear=${selectedYear}`);\r\n }\r\n getChallanTotalApplication_DrillDown_Report(actionType,userId,status,filterType,value,MIType,selectedYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetChallanTotalApplication_DrillDown_Report?ActionType=${actionType}&userId=${userId}&FilterType=${filterType}&Value=${value}&MIType=${MIType}&financialyear=${selectedYear}`);\r\n }\r\n // getConsolidated_Report(reqBody:any):any {\r\n // return this.http.post(`${environment.apiUrl}Reports/getmiconsolidatedreport`, reqBody);\r\n // }\r\n // getPondConsolidated_Report(financialYear){\r\n // return this.http.get(`${environment.apiUrl}Reports/getpondconsolidatedreport?financialyear=${financialYear}`);\r\n // }\r\n getPondConsolidated_Report(reqBody:any):any {\r\n return this.http.post(`${environment.apiUrl}Reports/getpondconsolidatedreport`, reqBody);\r\n }\r\n getConsolidated_Report(reqBody:any):any {\r\n return this.http.post(`${environment.apiUrl}Reports/getmiconsolidatedreport`, reqBody);\r\n }\r\n getMIConsolidatedReportVendorWise(reqBody:any):any {\r\n return this.http.post(`${environment.apiUrl}Reports/getMIConsolidatedReportVendorWise?VendorCode=''`, reqBody);\r\n }\r\n getFinanacialYearList(){\r\n return this.http.get(`${environment.apiUrl}Reports/getfinancialyearlist`);\r\n }\r\n getInventoryReport(){\r\n return this.http.get(`${environment.apiUrl}Department/GetInventoryReport`);\r\n }\r\n // getPendingDetailUser_DrillDown_Report(ActionType, District, FinYear, RequestType){\r\n // return this.http.get(`${environment.apiUrl}Reports/GetPendingDetailUser?ActionType=${ActionType}&District=${District}&FinYear=${FinYear}&RequestType=${RequestType}`);\r\n // }\r\n getPendingDetailUser_DrillDown_Report(reqBody){\r\n return this.http.post(`${environment.apiUrl}Reports/GetPendingDetailUser?ActionType=${reqBody?.ActionType}&District=${reqBody?.District}&FinYear=${reqBody?.FinYear}&RequestType=${reqBody?.RequestType}&GeoType=${reqBody?.GeoType}&GeoCode=${reqBody?.GeoCode}&Caste=${reqBody?.Caste}&CropId=${reqBody?.CropId}&userType=${reqBody?.userType}`, {});\r\n }\r\n getPendingDetailUserWise_DrillDown_Report(ActionType, District, FinYear, UserId, RequestType){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPendingUserWiseDrillDown?ActionType=${ActionType}&District=${District}&FinYear=${FinYear}&UserId=${UserId}&RequestType=${RequestType}`);\r\n }\r\n getDrillDownSubsidyDetail(reqBody:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Department/GetDrillDownSubsidyDetail?Dist_Code=${reqBody?.Dist_Code}&Block_Code=${reqBody?.Block_Code}&Vill_Code=${reqBody?.Vill_Code}`);\r\n }\r\n getDistrictMaster() {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Department/GetDistrictMaster`);\r\n }\r\n getBlockMaster(distCode: any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Department/GetBlockMaster?Dist_Code=${distCode}`);\r\n }\r\n getConsolidatedLotRpt(LotType: string) {\r\n return this.http.get(`${environment.apiUrl}Reports/GetConsolidatedLotRpt?LotType=${LotType}`);\r\n }\r\n\r\n // getConsolidatedAggReport(financialYear){\r\n // // if(window.sessionStorage.getItem(\"AggReport1Data\") && financialYear == ''){\r\n // // return of(JSON.parse(window.sessionStorage.getItem(\"AggReport1Data\")));\r\n // // }else{\r\n // // return this.http.get(`${environment.apiUrl}Reports/GetConsolidatedAggReport?FinYear=${financialYear}`);\r\n // // }\r\n // return this.http.post(`${environment.apiUrl}Reports/GetConsolidatedAggReport`, req);\r\n // }\r\n\r\n getConsolidatedAggReport(reqBody:any):any {\r\n return this.http.post(`${environment.apiUrl}Reports/getmiconsolidatedreport`, reqBody);\r\n }\r\n\r\n miCanalTubewellApplicationFromTBL(){\r\n return this.http.get(`${environment.apiUrl}Reports/MICanalTubewellApplicationFromTBL`);\r\n }\r\n\r\n pondCanalTubewellApplicationFromTBL(){\r\n return this.http.get(`${environment.apiUrl}Reports/PondCanalTubewellApplicationFromTBL`);\r\n }\r\n\r\n getChallanReportByVendorId(id:any) {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetChallanReportByVendorId?VendorId=${id}`);\r\n }\r\n getLotReport() {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/GetLotReport`);\r\n }\r\n getLotConsolidatedReport() {\r\n this.parameter_api()\r\n return this.http.get(`${environment.apiUrl}Reports/ConsolidatedReportLotCAO`);\r\n }\r\n\r\n getConsolidatedAggReportNew2(financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetConsolidatedAggReportNew2?FinancialYear=${financialYear}`);\r\n }\r\n\r\n getMIAggregateTabsDataNew(financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggregateTabsDataNew?financialYear=${financialYear}`);\r\n }\r\n \r\n miYearWiseTotalAppCount(){\r\n return this.http.get(`${environment.apiUrl}Reports/MIYearWiseTotalAppCount`);\r\n }\r\n\r\n pondYearWiseTotalAppCount(){\r\n return this.http.get(`${environment.apiUrl}Reports/PondYearWiseTotalAppCount`);\r\n }\r\n\r\n getDataForDashboardGraphs(districtCode, FinYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDataForDashboardGraphs?DistrictCode=${districtCode}&FinYear=${FinYear}`);\r\n }\r\n\r\n getMISchemeWiseAppCount(districtCode, FinYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMISchemeWiseAppCount?FinYear=${FinYear}&DistCode=${districtCode}`);\r\n }\r\n\r\n getPondSchemeWiseAppCount(districtCode, FinYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPondSchemeWiseAppCount?FinYear=${FinYear}&DistCode=${districtCode}`);\r\n }\r\n\r\n getDataForDashboardGraphsVendor(districtCode,userType,vendorCode, FinYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDataForDashboardGraphsVendorWise?DistrictCode=${districtCode}&vendorCode=${vendorCode}&FinYear=${FinYear}`);\r\n }\r\n\r\n getDataForDashboardGraphsPond(districtCode, finYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDataForDashboardGraphsPond?DistrictCode=${districtCode}&FinYear=${finYear}`);\r\n }\r\n\r\n getDistrictWiseAllCountDashboard(districtCode, finYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDistrictWiseAllCountDashboard?DistrictCode=${districtCode}&FinYear=${finYear}`);\r\n }\r\n GetEPCReports(){\r\n return this.http.get(`${environment.apiUrl}Reports/GetEPCReports?DistrictCode`);\r\n }\r\n getEpcFullData(){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetEPCDetails`, { headers: this.buildHeaders() })\r\n }\r\n // getDistrictWiseAllCountDashboard(districtCode, vendorCode, finYear, type){\r\n // return this.http.get(`${environment.apiUrl}Reports/GetDistrictWiseAllCountDashboardVendorWise?DistrictCode=${districtCode}&VendorCode=${vendorCode}&FinYear=${finYear}&Type=${type}`);\r\n // }\r\n\r\n getDistrictWiseAllCountDashboardVendor(districtCode, userType, vendorCode, finYear){\r\n return this.http.post(`${environment.apiUrl}Reports/GetDistrictWiseAllCountDashboardVendorWise?DistrictCode=${districtCode}&VendorCode=${vendorCode}&FinYear=${finYear}&Type=${userType}`, {});\r\n }\r\n\r\n // GetDistrictWiseAllCountDashboardVendorWise(districtCode,userType,vendorCode){ \r\n // if(userType!=='Vendor'){\r\n // return this.http.get(`${environment.apiUrl}Reports/GetDistrictWiseAllCountDashboard?DistrictCode=${districtCode}`);\r\n // }\r\n // else{\r\n // return this.http.get(`${environment.apiUrl}Reports/GetDistrictWiseAllCountDashboardVendorWise?DistrictCode=${districtCode}&vendorCode=${vendorCode}`);\r\n // }\r\n \r\n // }\r\n\r\n getDistrictWiseAllCountDashboardPond(districtCode, finYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDistrictWiseAllCountDashboardPond?DistrictCode=${districtCode}&FinYear=${finYear}`);\r\n }\r\n\r\n getSubsidyDisbursedAgg(financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetSubsidyDisbursedAgg?FinancialYear=${financialYear}`);\r\n }\r\n\r\n aggDataDistrictWiseForGraph(financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/AggDataDistrictWiseForGraph?FinancialYear=${financialYear}`);\r\n }\r\n\r\n getConsolidatedAggReportNew2DrillDown(financialYear, actiontype, count){\r\n return this.http.get(`${environment.apiUrl}Reports/GetConsolidatedAggReportNew2DrillDown?FinYear=${financialYear}&ActionType=${actiontype}&Count=${count}`);\r\n }\r\n\r\n getMIAggTabsUnProcessedAppsCountNew(financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggTabsUnProcessedAppsCountNew?FinYear=${financialYear}`);\r\n }\r\n\r\n getMIAggTabsUnProcessedAppsCountNewVendor(vendorCode, financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggTabsUnProcessedAppsVendorWiseCountNew?FinYear=${financialYear}&vendorCode=${vendorCode}`);\r\n }\r\n\r\n getPondAggTabsUnProcessedAppsCountNew(financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPondAggTabsUnProcessedAppsCountNew?FinYear=${financialYear}`);\r\n }\r\n\r\n getMIAggTabsUnProcessedAppsDrillDownNew(financialYear, actionId){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggTabsUnProcessedAppsDrillDownNew?FinYear=${financialYear}&Action=${actionId}`);\r\n }\r\n\r\n getPondAggTabsUnProcessedAppsDrillDownNew(financialYear, actionId){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPondAggTabsUnProcessedAppsDrillDownNew?FinYear=${financialYear}&Action=${actionId}`);\r\n }\r\n\r\n // getMIBeneficiaryReport(financialYear){\r\n // return this.http.get(`${environment.apiUrl}Reports/GetMIBeneficiaryReport?FinYear=${financialYear}`);\r\n // }\r\n\r\n // getPondBeneficiaryReport(financialYear){\r\n // return this.http.get(`${environment.apiUrl}Reports/GetPondBeneficiaryReport?FinYear=${financialYear}`);\r\n // }\r\n\r\n getPondAggregateTabsDataNew(financialYear){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPondAggregateTabsDataNew?financialYear=${financialYear}`);\r\n }\r\n\r\n // getPondConsolidatedAggReportDrillDown(financialYear, actiontype, count){\r\n // return this.http.get(`${environment.apiUrl}Reports/GetPondAggDrillDownReport?FinYear=${financialYear}&ActionType=${actiontype}&Count=${count}`);\r\n // }\r\n\r\n getMIBeneficiaryReport(userId){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIBeneficiaryReport?UserId=${userId}`);\r\n }\r\n\r\n getPondBeneficiaryReport(){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPondBeneficiaryReport`);\r\n }\r\n\r\n getConsituencyMaster(){\r\n return this.http.get(`${environment.apiUrl}Department/GetConsituencyMaster`);\r\n }\r\n\r\n getVillageMaster(distCode, blockCode){\r\n return this.http.get(`${environment.apiUrl}Department/GetVillageMaster?Dist_Code=${distCode}&Block_Code=${blockCode}`);\r\n }\r\n\r\n getVillageMasterByConsituency(blockCode, conCode){\r\n return this.http.get(`${environment.apiUrl}Department/GetVillageMasterByConsituency?Block_Code=${blockCode}&ConsituencyCode=${conCode}`);\r\n }\r\n getMIAggregateTabsDataNewVendor(financialYear,userType,vendorCode){\r\n if(userType!=='Vendor'){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggregateTabsDataNew?financialYear=${financialYear}`);\r\n }\r\n else{\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggregateTabsDataNewVendorWise?financialYear=${financialYear}&vendorCode=${vendorCode}`);\r\n }\r\n }\r\n getMIAggTabsUnProcessedAppsDrillDownNewVendor(financialYear, actionId,vendorCode, userType, autoId){\r\n if(userType!='Vendor'){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggTabsUnProcessedAppsDrillDownNew?FinYear=${financialYear}&Action=${actionId}&AutoId=${autoId}`);\r\n }\r\n else{\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAggTabsUnProcessedAppsDrillDownVendorWiseNew?FinYear=${financialYear}&Action=${actionId}&vendorCode=${vendorCode}&AutoId=${autoId}`);\r\n }\r\n \r\n }\r\n\r\n getPondAggTabsUnProcessedAppsDrillDownNewVendor(financialYear, actionId,vendorCode:any,userType:any){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPondAggTabsUnProcessedAppsDrillDownNew?FinYear=${financialYear}&Action=${actionId}`);\r\n }\r\n\r\n getMIAppLevelWiseReport(financialYear, autoId, vendorName){\r\n return this.http.get(`${environment.apiUrl}Reports/GetMIAppLevelWiseReport?FinYear=${financialYear}&AutoId=${autoId}&VendorName=${vendorName}`);\r\n }\r\n\r\n getPondAppLevelWiseReport(financialYear, autoId){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPondAppLevelWiseReport?FinYear=${financialYear}&AutoId=${autoId}`);\r\n }\r\n\r\n getSubsidyDistribution(type:any){\r\n return this.http.get(`${environment.apiUrl}Reports/GetSubsidyDistribution?FormatType=${type}`);\r\n }\r\n\r\n getDistinctLotNoByFinYear(finYear, lotType){\r\n return this.http.get(`${environment.apiUrl}Reports/GetDistinctLotNoByFinYear?Fin_Year=${finYear}&LotType=${lotType}`);\r\n }\r\n\r\n getPaymentsByLotNo(lotNo){\r\n return this.http.get(`${environment.apiUrl}Reports/GetPaymentsByLotNo?Lot_No=${lotNo}`);\r\n }\r\n\r\n getUnderProcessDistrictWise(finYear){\r\n return this.http.get(`${environment.apiUrl}Reports//GetUnderProcessDistrictWise?FinYear=${finYear}`);\r\n }\r\n\r\n getLotDataInCAOFinDashboard(apiName, lotNo, status, userType){\r\n return this.http.get(`${environment.apiUrl}Department/${apiName}?LotNo=${lotNo}&Status=${status}&UserType=${userType}`);\r\n }\r\n\r\n getTankLotDataInCAOFinDashboard(tankStage, lotNo, status, userType){\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPondFarmerShareToVendorPFMSExport?LotNo=${lotNo}&Stage=${tankStage}&Status=${status}&UserType=${userType}`);\r\n }\r\n getSubsidyData(formatType: string): any {\r\n return this.http.get(`${environment.apiUrl}Reports/GetSubsidyDistribution`, {\r\n params: { FormatType: formatType }\r\n });\r\n }\r\n\r\n getDistrictMasterOther(isAtal){\r\n return this.http.get(`${environment.apiUrl}Department/GetDistrictMasterOther?IsAtal=${isAtal}`);\r\n }\r\n\r\n getBlockMasterOther(districtCode, isAtal){\r\n return this.http.get(`${environment.apiUrl}Department/GetBlockMasterOther?Dist_Code=${districtCode}&IsAtal=${isAtal}`);\r\n }\r\n\r\n getVillageMasterOther(districtCode, blockCode, isAtal){\r\n return this.http.get(`${environment.apiUrl}Department/GetVillageMasterOther?Dist_Code=${districtCode}&Block_Code=${blockCode}&IsAtal=${isAtal}`);\r\n }\r\n\r\n getSubsidyDistributionDrillDown(reqBody){\r\n return this.http.post(`${environment.apiUrl}Reports/GetSubsidyDistributionDrillDown`, reqBody);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdoService extends BaseService{\r\n\r\n constructor(private http: HttpClient, tokenService: TokenService) { \r\n super(tokenService);\r\n }\r\n \r\n //GET SERVICE\r\n getAppForPhysicalVerMIDone(autoId:any){\r\n return this.http.get(`${environment.apiUrl}Department/GetApplicationsForPhysicalVerMIDone?AutoId=${autoId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n //GET data for Physical Verification \r\n getDataOfPhysicalVerMIDone(autoId:any){\r\n return this.http.get(`${environment.apiUrl}Department/GetDataOfPhysicalVerMIDone?AutoId=${autoId}`, { headers: this.buildHeaders() });\r\n \r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SuperAdminService extends BaseService {\r\n\r\n protected http: HttpClient;\r\n \r\n constructor(\r\n http: HttpClient, \r\n tokenService: TokenService\r\n ) { \r\n super(tokenService);\r\n this.http = http;\r\n }\r\n\r\n getAppTarget(){\r\n return this.http.get(`${environment.apiUrl}Department/GetAppTarget`);\r\n }\r\n\r\n getGeoTypeNameCropProgram(){\r\n return this.http.get(`${environment.apiUrl}Department/GetGeoTypeNameCropProgram`);\r\n }\r\n\r\n getGeoByType(geoName){\r\n return this.http.get(`${environment.apiUrl}Department/GetGeoByType?GeoType=${geoName}`);\r\n }\r\n \r\n\r\n\r\n //post\r\n addModifyTargets(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Department/AddModifyTargets`, reqBody);\r\n }\r\n\r\n\r\n //delete\r\n deleteTargets(autoId:any){\r\n return this.http.post(`${environment.apiUrl}Department/DeleteTargets?AutoId=${autoId}`, '');\r\n }\r\n\r\n getGeoUserMapping(){\r\n return this.http.get(`${environment.apiUrl}Department/GetUserGeoMapping`);\r\n }\r\n\r\n getGeoUserType(){\r\n return this.http.get(`${environment.apiUrl}Department/GeoUserType`);\r\n }\r\n getUserActionFromUserType(value){\r\n return this.http.get(`${environment.apiUrl}Department/GetUserActionFromUserType?UserType=${value}`);\r\n }\r\n addUpdateUserGeoMapping(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Department/AddUpdateUserGeoMapping`, reqBody);\r\n }\r\n\r\n deleteUserGeoMapping(autoId:any){\r\n return this.http.delete(`${environment.apiUrl}Department/DeleteUserGeoMapping?AutoId=${autoId}`);\r\n }\r\n\r\n updateStatusUserGeoMapping(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Department/UpdateStatusUserGeoMapping?AutoId=${reqBody.AutoId}&Active=${reqBody.Active}`, reqBody);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n \r\n @Injectable()\r\n export class TicketService {\r\n ticketInformation = {\r\n personalInformation: {\r\n email: '',\r\n password: '',\r\n confirmpassword: '',\r\n vendorType:'',\r\n VendorName:'',\r\n gSTIN :'',\r\n country :'',\r\n address:'',\r\n state:'',\r\n city:'',\r\n mobile:'',\r\n panNo:'',\r\n bankAccountNumber:'',\r\n iFSCCode:'',\r\n bankName:''\r\n },\r\n seatInformation: {\r\n class: null,\r\n wagon: null,\r\n seat: null\r\n },\r\n paymentInformation: {\r\n cardholderName: '',\r\n cardholderNumber: '',\r\n date: '',\r\n cvv: '',\r\n remember: false\r\n }\r\n };\r\n \r\n private paymentComplete = new Subject();\r\n \r\n paymentComplete$ = this.paymentComplete.asObservable();\r\n \r\n getTicketInformation() {\r\n return this.ticketInformation;\r\n }\r\n \r\n setTicketInformation(ticketInformation) {\r\n this.ticketInformation = ticketInformation;\r\n }\r\n \r\n complete() {\r\n this.paymentComplete.next(this.ticketInformation.personalInformation);\r\n }\r\n }\r\n ","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseService } from './common/base.service';\r\nimport { TokenService } from './common/token.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VendorDashboardService extends BaseService {\r\n\r\n protected http: HttpClient;\r\n\r\n constructor(http: HttpClient, tokenService: TokenService) {\r\n super(tokenService);\r\n this.http = http;\r\n }\r\n\r\n\r\n // GET SERVICES\r\n GetVendorDashboard(userId: String,appType:String, financialYear:String) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorApplicationForMIEstimation?UserId=${userId}&AppType=${appType}&financialYear=${financialYear}`, { headers: this.buildHeaders()});\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetVendorApplicationForMIEstimation?UserId=1`);\r\n }\r\n\r\n getFarmerDashboardDataForVendor(vendorMobile:String){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetFarmerDashboardDataForVendor?VendorMobile=` + vendorMobile, { headers: this.buildHeaders() });\r\n }\r\n\r\n getComponentMaster(){\r\n return this.http.get(environment.apiUrl + 'FarmerApplication/GetComponentMaster');\r\n }\r\n\r\n getAllMIVendors(ProgramId){\r\n return this.http.get(`${environment.apiUrl}FarmerApplication/GetAllMIvenders?ProgramId=${ProgramId}`);\r\n }\r\n\r\n getCategory(reqBody){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetCategoryMaster?VendorRegId=${reqBody.VendorRegId}&ProgramId=${reqBody.ProgramId}`);\r\n }\r\n\r\n getComponentTypeByProgIdEPC(reqBody){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetComponentTypeByProgIdEPC?ProgId=${reqBody.ProgId}&Area=${reqBody.Area}`);\r\n }\r\n\r\n getDistinctSpacingEPC(reqBody){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetDistinctSpacingEPC?ProgId=${reqBody.ProgId}&Area=${reqBody.Area}&ComponentType=${reqBody.ComponentType}`);\r\n }\r\n\r\n getDistinctPipeSizeBySpacingEPC(reqBody){\r\n return this.http.get(`${environment.apiUrl}vendor/GetDistinctPipeSizeBySpacingEPC?ProgId=${reqBody.ProgId}&Area=${reqBody.Area}&ComponentType=${reqBody.ComponentType}&Spacing=${reqBody.Spacing}`);\r\n }\r\n\r\n getDistinctPressureEPC(reqBody){\r\n return this.http.get(`${environment.apiUrl}vendor/GetDistinctPressureEPC?ProgId=${reqBody.ProgId}&Area=${reqBody.Area}&ComponentType=${reqBody.ComponentType}&Spacing=${reqBody.Spacing}&PipeSize=${reqBody.PipeSize}`);\r\n }\r\n\r\n getComponentRateWiseEpc(reqBody){\r\n return this.http.get(`${environment.apiUrl}vendor/GetComponentRateWiseEpc?ProgId=${reqBody.ProgId}&Area=${reqBody.Area}&Spacing=${reqBody.Spacing}&PipeSize=${reqBody.PipeSize}&ComponentType=${reqBody.ComponentType}&Pressure=${reqBody.Pressure}&Outlet=${reqBody.Outlet}`);\r\n }\r\n\r\n getComponent(reqBody){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetComponentMaster?VendorRegId=${reqBody.VendorRegId}&ProgramId=${reqBody.ProgramId}&CategoryId=${reqBody.CategoryId}`);\r\n }\r\n\r\n getCMLNumber(reqBody){\r\n return this.http.get(`${environment.apiUrl}Department/GetComponentMasterCML?VendorRegId=${reqBody.VendorRegId}&ProgramId=${reqBody.ProgramId}&CategoryId=${reqBody.CategoryId}&CompId=${reqBody.CompId}`);\r\n }\r\n\r\n getSizeAndPrice(reqBody){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetSizePriceMaster?VendorRegId=${reqBody.VendorRegId}&ProgramId=${reqBody.ProgramId}&CategoryId=${reqBody.CategoryId}&ComponentId=${reqBody.ComponentId}`);\r\n }\r\n\r\n getVendorMIEstimation(reqBody){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorMIEstimation?AppId=${reqBody.AppId}&VendorRegId=${reqBody.VendorRegId}&ProgId=${reqBody.ProgramId}`);\r\n }\r\n\r\n getMIEstimationDetailsForAppProgId(reqBody){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetMIEstimationDetailsForAppProgId?AppID=${reqBody.AppId}&ProgramID=${reqBody.ProgramId}`);\r\n }\r\n\r\n predictestimatesPDMC(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/predictestimatesPDMC?VendorId=${reqBody.VendorId}&ProgId=${reqBody.ProgId}&Area=${reqBody.Area}`, {});\r\n }\r\n\r\n getCropMaster(){\r\n return this.http.get(`${environment.apiUrl}LandDetails/GetCropMaster`);\r\n }\r\n\r\n getChallanForVendor(UserId, FinYear){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetChallanForVendor?UserId=${UserId}&FinYear=${FinYear}`);\r\n }\r\n \r\n //POST SERVICES\r\n postVendorMIEstimationDetail(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}DashBoard/InsertVendorMIEstimationDetail`, reqBody);\r\n }\r\n\r\n getMaxSubsidyEstimate(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Vendor/getMaxSubsidyEstimate`, reqBody);\r\n }\r\n \r\n getCenterStateShareCalc(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Department/GetCenterStateShareCalc`, reqBody);\r\n }\r\n\r\n insertChallanAcknowledgement(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/InsertChallanAcknowledgement`, reqBody);\r\n }\r\n\r\n updateCMLValidity(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Department/UpdateCMLValidity`, reqBody);\r\n }\r\n\r\n // DELETE SERVICE\r\n deleteEstimation(reqBody){\r\n // AppId=1&VendorId=1&ProgId=1\r\n return this.http.delete(`${environment.apiUrl}DashBoard/DeleteVendorMIEstimation?AppId=${reqBody.AppId}&VendorId=${reqBody.VendorRegId}&ProgId=${reqBody.ProgramId}`);\r\n }\r\n\r\n //UPDATE SERVICES\r\n updateVendorEstimationDetail(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}DashBoard/UpdateVendorMIEstimation`, reqBody);\r\n }\r\n\r\n GetPreEstimationSurvey(userId: String, AppType: String, financialyear: String) {\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetVendorApplicationsForMIPreEstimation?UserId=${userId}&AppType=${AppType}&financialyear=${financialyear}`, { headers: this.buildHeaders() });\r\n // return this.http.get(`${environment.apiUrl}DashBoard/GetVendorApplicationForMIEstimation?UserId=1`);\r\n }\r\n\r\n vendorGrievanceStatus(vendorCode: any) {\r\n return this.http.get(`${environment.apiUrl}MICADAgrievance/GetVendorGrievanceByVendorCode?Vendor_Code=${vendorCode}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n farmerGrievanceStatus(mobNo: any) {\r\n return this.http.get(`${environment.apiUrl}MICADAgrievance/GetFarmerGrievanceByMobile?Mobile_No=${mobNo}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n getCategories() {\r\n return this.http.get(`${environment.apiUrl}MICADAgrievance/GetCategories`, { headers: this.buildHeaders() });\r\n }\r\n\r\n submitGrievance(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}MICADAgrievance/FarmerSubmitGrievance`, reqBody);\r\n }\r\n\r\n getProDataSpacing(MiId):any{\r\n return this.http.get(`${environment.apiUrl}Vendor/GetDistinctSpacing?ProgId=${MiId}`, { headers: this.buildHeaders() });\r\n }\r\n\r\n GetEditPreEstimationSurvey(reqBody):any{\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetApplicationDataOfPreEstimation?AppId=${reqBody.AppId}&ProgId=${reqBody.ProgramId}`, { headers: this.buildHeaders() });\r\n }\r\n insertVendorInventoryDetail(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Vendor/InsertInventoryPurchaseDetail`, reqBody);\r\n }\r\n \r\n insertUploadedGSTDetail(reqBody:any){\r\n return this.http.post(`${environment.apiUrl}Vendor/InsertUploadedGSTDetail`, reqBody);\r\n }\r\n\r\n getInventoryPurchaseDetail(userId){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetInventoryPurchaseDetail?UserId=${userId}`);\r\n }\r\n\r\n deleteInventoryPurchaseDetail(reqBody){\r\n return this.http.delete(`${environment.apiUrl}Vendor/DeleteInventoryPurchaseDetail?autoId=${reqBody.autoId}&userID=${reqBody.userID}&network_Id=${reqBody.network_Id}&terminal_Id=${reqBody.terminal_Id}`);\r\n }\r\n\r\n updateInventoryPurchaseDetail(reqBody:any){\r\n return this.http.put(`${environment.apiUrl}Vendor/UpdateInventoryPurchaseDetail`, reqBody);\r\n }\r\n\r\n insertFarmerDataByContractor(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/InsertFarmerDataByContractor`, reqBody);\r\n }\r\n\r\n updateFarmerPersonalDetails(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/UpdateFarmerPersonalDetails`, reqBody);\r\n }\r\n\r\n deleteFarmerPersonalDetails(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/DeleteFarmerPersonalDetailsEPC`, reqBody);\r\n }\r\n \r\n getEPCDetails(agreementNo, outletId, chunkId, userId){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetEPCDetails?AgreementNo=${agreementNo}&OutletId=${outletId}&ChunkId=${chunkId}&User=${userId}`);\r\n }\r\n\r\n getContractorEstimation(contractorId, outletId, agreementNo, chunkId){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetContractorEstimation?ContractorId=${contractorId}&OutletId=${outletId}&AgreementNo=${agreementNo}&ChunkId=${chunkId}`);\r\n }\r\n\r\n insertContractorEstimation(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/InsertContractorEstimation`, reqBody);\r\n }\r\n insertVendorComponentDetails(reqBody){\r\n return this.http.post(`${environment.apiUrl}Vendor/InsertVendorComponentDetails`, reqBody);\r\n }\r\n\r\n insertComponentPriceEPC(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/InsertComponentPriceEPC`, reqBody);\r\n }\r\n\r\n insertReVerificationEPC(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/InsertReVerificationEPC`, reqBody);\r\n }\r\n\r\n insertGeoAndAttachmentsEPC(reqBody){\r\n return this.http.post(`${environment.apiUrl}Department/InsertGeoAndAttachmentsEPC`, reqBody);\r\n }\r\n\r\n // getLandOwnersDetail(reqBody){\r\n // return this.http.get(`${environment.apiUrl}LandDetails/GetLandOwners/${reqBody.distCode}/${reqBody.tehsilCode}/${reqBody.villCode}/0/${reqBody.killaNo}/JSON`);\r\n // }\r\n\r\n getLandOwnersDetail(reqBody){\r\n return this.http.post(`${environment.apiUrl}LandDetails/GetLandOwnersList`, reqBody);\r\n }\r\n\r\n getLandGetAreaByKhewat(reqBody){\r\n return this.http.post(`${environment.apiUrl}LandDetails/GetLandGetAreaByKhewat`, reqBody);\r\n }\r\n\r\n getKhasraAreaKhewatByNVCODE2Khewat(reqBody){\r\n return this.http.post(`${environment.apiUrl}LandDetails/GetKhasraAreaKhewatByNVCODE2Khewat`, reqBody);\r\n }\r\n\r\n getGeoDetailsByVillCode(villageCode){\r\n return this.http.get(`${environment.apiUrl}Reports/GetGeoDetailsByVillCode?VillCode=${villageCode}`);\r\n }\r\n\r\n // getLandKhewatByKhasra(reqBody){\r\n // return this.http.get(`${environment.apiUrl}LandDetails/GetLandKhewatByKhasra/${reqBody.distCode}/${reqBody.tehsilCode}/${reqBody.villCode}/0/${reqBody.killaNo}/JSON`);\r\n // }\r\n\r\n getLandKhewatByKhasra(reqBody){\r\n return this.http.post(`${environment.apiUrl}LandDetails/GetLandOwnerskanalDetails`, reqBody);\r\n }\r\n\r\n getLandGetAreaByKhasra(reqBody){\r\n return this.http.post(`${environment.apiUrl}LandDetails/GetLandGetAreaByKhasra`, reqBody);\r\n }\r\n\r\n getGeoAndAttachmentsEPC(reqBody){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetGeoAndAttachmentsEPC?AppId=${reqBody?.AppId}&ProgId=${reqBody?.ProgId}&ChunkId=${reqBody?.ChunkId}`);\r\n }\r\n\r\n getContractorMaster(userId){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetContractorMaster?UserId=${userId}`);\r\n }\r\n\r\n getAllAppIdsByVendor(userId){\r\n return this.http.get(`${environment.apiUrl}DashBoard/GetAllAppIdsByVendor?VendorMobile=${userId}`);\r\n }\r\n\r\n getEstimationDetailsByUserIDEPC(userId){\r\n return this.http.get(`${environment.apiUrl}Vendor/GetEstimationDetailsByUserID_EPC?UserID=${userId}`);\r\n }\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n // apiUrl: 'http://10.100.60.76:98/api/'\r\n // apiUrl: 'http://112.133.194.159:98/api/'\r\n // apiUrl: 'http://cada.hartron.io:98/api/',\r\n // apiUrl: 'http://203.100.79.155/api1/api/'\r\n \r\n \r\n // // for pre prod\r\n // production: false,\r\n // staging: true,\r\n // apiUrl: 'http://203.100.79.155:90/api1/api/'\r\n\r\n // for prod\r\n production: true,\r\n staging: false,\r\n apiUrl: 'https://micada.haryana.gov.in:8443/api/'\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","/* (ignored) */"],"names":["Router","InnerPageLayoutComponent","TranslateService","environment","CryptoJsService","i0","i_r2","AppMenuComponent","constructor","appMain","router","translate","cryptoJsService","onLangChange","subscribe","event","prepareMenu","ngOnInit","get","toPromise","then","AtalbhujalRole","sessionStorage","getItem","encData","JSON","parse","DecryptDataPayload","farmerConfData","Map","isFarmerLogin","FarmerRole","VendorRole","deptUserId","toUpperCase","userRole","loginUserName","model","label","items","icon","routerLink","url","startsWith","instant","splice","push","target","staging","userName","trim","onKeydown","nodeElement","code","click","preventDefault","selectors","decls","vars","consts","template","ctx"],"sourceRoot":"webpack:///"}